Print this page
9600 LDT still not happy under KPTI


 465  * attributes are ignored. Only the conforming bit is loaded by hardware
 466  * for long mode code segment descriptors.
 467  */
 468 #define SDT_MEMRO       16      /* read only */
 469 #define SDT_MEMROA      17      /* read only accessed */
 470 #define SDT_MEMRW       18      /* read write */
 471 #define SDT_MEMRWA      19      /* read write accessed */
 472 #define SDT_MEMROD      20      /* read only expand dwn limit */
 473 #define SDT_MEMRODA     21      /* read only expand dwn limit accessed */
 474 #define SDT_MEMRWD      22      /* read write expand dwn limit */
 475 #define SDT_MEMRWDA     23      /* read write expand dwn limit accessed */
 476 #define SDT_MEME        24      /* execute only */
 477 #define SDT_MEMEA       25      /* execute only accessed */
 478 #define SDT_MEMER       26      /* execute read */
 479 #define SDT_MEMERA      27      /* execute read accessed */
 480 #define SDT_MEMEC       28      /* execute only conforming */
 481 #define SDT_MEMEAC      29      /* execute only accessed conforming */
 482 #define SDT_MEMERC      30      /* execute read conforming */
 483 #define SDT_MEMERAC     31      /* execute read accessed conforming */
 484 




 485 /*
 486  * Entries in the Interrupt Descriptor Table (IDT)
 487  */
 488 #define IDT_DE          0       /* #DE: Divide Error */
 489 #define IDT_DB          1       /* #DB: Debug */
 490 #define IDT_NMI         2       /* Nonmaskable External Interrupt */
 491 #define IDT_BP          3       /* #BP: Breakpoint */
 492 #define IDT_OF          4       /* #OF: Overflow */
 493 #define IDT_BR          5       /* #BR: Bound Range Exceeded */
 494 #define IDT_UD          6       /* #UD: Undefined/Invalid Opcode */
 495 #define IDT_NM          7       /* #NM: No Math Coprocessor */
 496 #define IDT_DF          8       /* #DF: Double Fault */
 497 #define IDT_FPUGP       9       /* Coprocessor Segment Overrun */
 498 #define IDT_TS          10      /* #TS: Invalid TSS */
 499 #define IDT_NP          11      /* #NP: Segment Not Present */
 500 #define IDT_SS          12      /* #SS: Stack Segment Fault */
 501 #define IDT_GP          13      /* #GP: General Protection Fault */
 502 #define IDT_PF          14      /* #PF: Page Fault */
 503 #define IDT_MF          16      /* #MF: FPU Floating-Point Error */
 504 #define IDT_AC          17      /* #AC: Alignment Check */




 465  * attributes are ignored. Only the conforming bit is loaded by hardware
 466  * for long mode code segment descriptors.
 467  */
 468 #define SDT_MEMRO       16      /* read only */
 469 #define SDT_MEMROA      17      /* read only accessed */
 470 #define SDT_MEMRW       18      /* read write */
 471 #define SDT_MEMRWA      19      /* read write accessed */
 472 #define SDT_MEMROD      20      /* read only expand dwn limit */
 473 #define SDT_MEMRODA     21      /* read only expand dwn limit accessed */
 474 #define SDT_MEMRWD      22      /* read write expand dwn limit */
 475 #define SDT_MEMRWDA     23      /* read write expand dwn limit accessed */
 476 #define SDT_MEME        24      /* execute only */
 477 #define SDT_MEMEA       25      /* execute only accessed */
 478 #define SDT_MEMER       26      /* execute read */
 479 #define SDT_MEMERA      27      /* execute read accessed */
 480 #define SDT_MEMEC       28      /* execute only conforming */
 481 #define SDT_MEMEAC      29      /* execute only accessed conforming */
 482 #define SDT_MEMERC      30      /* execute read conforming */
 483 #define SDT_MEMERAC     31      /* execute read accessed conforming */
 484 
 485 /* These bits are within the "type" field, like the values above. */
 486 #define SDT_A           0x01    /* accessed bit */
 487 #define SDT_S           0x10    /* S-bit at the top of "type" for usegs */
 488 
 489 /*
 490  * Entries in the Interrupt Descriptor Table (IDT)
 491  */
 492 #define IDT_DE          0       /* #DE: Divide Error */
 493 #define IDT_DB          1       /* #DB: Debug */
 494 #define IDT_NMI         2       /* Nonmaskable External Interrupt */
 495 #define IDT_BP          3       /* #BP: Breakpoint */
 496 #define IDT_OF          4       /* #OF: Overflow */
 497 #define IDT_BR          5       /* #BR: Bound Range Exceeded */
 498 #define IDT_UD          6       /* #UD: Undefined/Invalid Opcode */
 499 #define IDT_NM          7       /* #NM: No Math Coprocessor */
 500 #define IDT_DF          8       /* #DF: Double Fault */
 501 #define IDT_FPUGP       9       /* Coprocessor Segment Overrun */
 502 #define IDT_TS          10      /* #TS: Invalid TSS */
 503 #define IDT_NP          11      /* #NP: Segment Not Present */
 504 #define IDT_SS          12      /* #SS: Stack Segment Fault */
 505 #define IDT_GP          13      /* #GP: General Protection Fault */
 506 #define IDT_PF          14      /* #PF: Page Fault */
 507 #define IDT_MF          16      /* #MF: FPU Floating-Point Error */
 508 #define IDT_AC          17      /* #AC: Alignment Check */