/illumos-gate/usr/src/uts/common/sys/ |
H A D | ontrap.h | 38 * on_trap() provides protection against various kinds of machine exceptions, 39 * and must be used with extreme caution. Like setjmp(), on_trap() returns 42 * return value except to test whether it is zero or non-zero. on_trap() and 44 * on_trap() mechanism is separate from on_fault() protection and the t_lofault 47 * Calls to on_trap() may be nested, but only the most recently installed bits 49 * protect against more than one type of trap. If on_trap() returns non-zero, 50 * the bit corresponding to the trap that triggered return to on_trap() will 53 * After calling on_trap(), the caller may elect to modify ot_trampoline to 64 * If repeated calls to on_trap() are made using the same on_trap_data address, 66 * not pushed twice), allowing callers to use on_trap() i [all...] |
/illumos-gate/usr/src/uts/sun4u/io/px/ |
H A D | px_asm_4u.s | 60 ! To be called from an on_trap environment. 67 ! Assumes alignment is correct and that on_trap handling has been installed 130 ! Assumes alignment is correct and that on_trap handling has been installed
|
H A D | px_tools_4u.c | 111 * on_trap works like setjmp. 115 * When on_trap returns FALSE, it has been setup. 118 if (!on_trap(&otd, OT_DATA_ACCESS)) { 200 * on_trap works like setjmp. 204 * When on_trap returns FALSE, it has been setup. 207 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/sun4v/io/px/ |
H A D | px_tools_4v.c | 280 if (!on_trap(&otd, OT_DATA_ACCESS)) { 296 if (!on_trap(&otd, OT_DATA_ACCESS)) { 384 if (!on_trap(&otd, OT_DATA_ACCESS)) { 403 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/sun4u/io/pci/ |
H A D | pci_asm.s | 58 ! To be called from an on_trap environment. 126 ! Assumes alignment is correct and that on_trap handling has been installed
|
H A D | pci.c | 971 if (!on_trap(&otd, OT_DATA_ACCESS)) { 1083 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
H A D | pci_tools.c | 144 * on_trap works like setjmp. 148 * When on_trap returns FALSE, it has been setup. 151 if (!on_trap(&otd, OT_DATA_ACCESS)) { 223 * on_trap works like setjmp. 227 * When on_trap returns FALSE, it has been setup. 230 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/sun4u/os/ |
H A D | ecc.c | 282 if (!on_trap(&otd, OT_DATA_EC)) {
|
H A D | memscrub.c | 1129 if (!on_trap(&otd, OT_DATA_EC) && !scan_mmu_pagesize) { 1168 if (!on_trap(&otd, OT_DATA_EC)) {
|
/illumos-gate/usr/src/uts/i86xpv/os/ |
H A D | xen_mmu.c | 265 if (on_trap(&otd, OT_DATA_ACCESS) == 0) { 347 if (on_trap_ready && on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/sun4v/sys/ |
H A D | ldc.h | 224 * LDC_ON_TRAP and LDC_NO_TRAP provide on_trap protection for clients accessing 234 * when calling on_trap() when calling LDC_ON_TRAP. 236 * LDC_ON_TRAP is implemented as a macro so that on_trap protection can be 238 * register window. Aside from LDC clients calling on_trap() directly, one 240 * language without a save instruction and to then call on_trap() as a tail 244 (on_trap((otd), OT_DATA_ACCESS) != 0 ? \
|
/illumos-gate/usr/src/uts/common/os/ |
H A D | urw.c | 267 if (!on_trap(&otd, OT_DATA_EC)) {
|
/illumos-gate/usr/src/uts/sparc/v9/ml/ |
H A D | sparcv9_subr.s | 332 * Default trampoline code for on_trap() (see <sys/ontrap.h>). On sparcv9, 335 * We longjmp(&curthread->t_ontrap->ot_jmpbuf) to return back to on_trap(). 355 * more information about the on_trap() mechanism. If the on_trap_data is the 366 on_trap(on_trap_data_t *otp, uint_t prot) 371 ENTRY(on_trap) function 389 SET_SIZE(on_trap)
|
/illumos-gate/usr/src/uts/i86pc/io/pci/ |
H A D | pci_tools.c | 684 * on_trap works like setjmp. 686 * A non-zero return here means on_trap has returned from an error. 688 * A zero return here means that on_trap has just returned from setup. 690 if (on_trap(&otd, OT_DATA_ACCESS)) { 694 "pcitool_io_access: on_trap caught an error...\n"); 771 * on_trap works like setjmp. 773 * A non-zero return here means on_trap has returned from an error. 775 * A zero return here means that on_trap has just returned from setup. 777 if (on_trap(&otd, OT_DATA_ACCESS)) { 781 "pcitool_mem_access: on_trap caugh [all...] |
/illumos-gate/usr/src/uts/i86pc/os/ |
H A D | microcode.c | 757 if (!on_trap(&otd, OT_DATA_ACCESS)) 784 if (on_trap(&otd, OT_DATA_ACCESS)) {
|
H A D | cmi_hw.c | 750 if (on_trap(&otd, OT_DATA_ACCESS) == 0) { 787 if (on_trap(&otd, OT_DATA_ACCESS) == 0) {
|
H A D | ddi_impl.c | 2210 if (!on_trap(&otd, OT_DATA_ACCESS)) { 2252 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
H A D | mp_startup.c | 1192 if (!on_trap(&otd, OT_DATA_ACCESS))
|
/illumos-gate/usr/src/uts/sun4/ml/ |
H A D | interrupt.s | 949 brz,pt %l2, 6f ! branch if no on_trap protection 951 stn %g0, [THREAD_REG + T_ONTRAP]! clear on_trap protection 954 add %o5, CPU_OTD, %o4 ! %o4 has on_trap data offset 955 stn %l2, [%o3 + %o4] ! save on_trap label for pil %o2 1358 ! Check on_trap saved area and restore as needed
|
/illumos-gate/usr/src/uts/intel/ia32/os/ |
H A D | sundep.c | 502 * If they do, we'll catch trap with on_trap and return 1. 516 if (!on_trap(&otd, OT_SEGMENT_ACCESS)) {
|
/illumos-gate/usr/src/uts/sun4/io/ |
H A D | rootnex.c | 818 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/intel/ia32/ml/ |
H A D | i86_subr.s | 156 * Default trampoline code for on_trap() (see <sys/ontrap.h>). We just 192 * more information about the on_trap() mechanism. If the on_trap_data is the 199 on_trap(on_trap_data_t *otp, uint_t prot) 206 ENTRY(on_trap) function 224 SET_SIZE(on_trap) 228 ENTRY(on_trap) function 249 SET_SIZE(on_trap)
|
/illumos-gate/usr/src/uts/sun4u/io/ |
H A D | sysiosbus.c | 1349 if (!on_trap(&otd, OT_DATA_ACCESS)) { 1397 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/sun4u/opl/io/pcicmu/ |
H A D | pcicmu.c | 773 if (!on_trap(&otd, OT_DATA_ACCESS)) { 821 if (!on_trap(&otd, OT_DATA_ACCESS)) {
|
/illumos-gate/usr/src/uts/common/vm/ |
H A D | page_retire.c | 642 * on_trap() protection to avoid recursion. 644 if (on_trap(&otd, OT_DATA_EC)) {
|