Go to the source code of this file.
◆ FIRST_TSS_ENTRY
#define FIRST_TSS_ENTRY 6 |
◆ get_seg_byte
#define get_seg_byte |
( |
|
seg, |
|
|
|
addr |
|
) |
| |
Value:({ \
register char __res; \
__asm__("push %%fs;mov %%ax,%%fs;movb %%fs:%2,%%al;pop %%fs" \
:"=a" (__res):"0" (seg),"m" (*(addr))); \
__res;})
Definition at line 53 of file trap.c.
◆ get_seg_long
#define get_seg_long |
( |
|
seg, |
|
|
|
addr |
|
) |
| |
Value:({ \
register unsigned long __res; \
__asm__("push %%fs;mov %%ax,%%fs;movl %%fs:%2,%%eax;pop %%fs" \
:"=a" (__res):"0" (seg),"m" (*(addr))); \
__res;})
Definition at line 47 of file trap.c.
◆ store_TR
Value:__asm__("str %%ax\n\t" \
"subl %2,%%eax\n\t" \
"shrl $4,%%eax" \
:"=a" (n) \
Definition at line 40 of file trap.c.
◆ VM_MASK
#define VM_MASK 0x00020000 |
◆ die_if_kernel()
void die_if_kernel |
( |
char * |
str, |
|
|
struct trapframe * |
regs, |
|
|
long |
err |
|
) |
| |
Definition at line 59 of file trap.c.
References kprintf(), trapframe::tf_cs, trapframe::tf_ds, trapframe::tf_eax, trapframe::tf_ebp, trapframe::tf_ebx, trapframe::tf_ecx, trapframe::tf_edi, trapframe::tf_edx, trapframe::tf_eflags, trapframe::tf_eip, trapframe::tf_err, trapframe::tf_es, trapframe::tf_esi, trapframe::tf_esp, trapframe::tf_fs, trapframe::tf_gs, trapframe::tf_ss, and trapframe::tf_trapno.
Referenced by __alignmentCheck(), __debug(), __divideError(), __doubleFault(), __floatingPoint(), __machineCheck(), __nmi(), __security(), __simd(), __virtualization(), _intNull(), sys_call(), and sys_call_posix().
◆ trap()