diff options
Diffstat (limited to 'include/asm-x86/desc_defs.h')
| -rw-r--r-- | include/asm-x86/desc_defs.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/include/asm-x86/desc_defs.h b/include/asm-x86/desc_defs.h index e33f078b3e54..eccb4ea1f918 100644 --- a/include/asm-x86/desc_defs.h +++ b/include/asm-x86/desc_defs.h | |||
| @@ -18,17 +18,19 @@ | |||
| 18 | * incrementally. We keep the signature as a struct, rather than an union, | 18 | * incrementally. We keep the signature as a struct, rather than an union, |
| 19 | * so we can get rid of it transparently in the future -- glommer | 19 | * so we can get rid of it transparently in the future -- glommer |
| 20 | */ | 20 | */ |
| 21 | // 8 byte segment descriptor | 21 | /* 8 byte segment descriptor */ |
| 22 | struct desc_struct { | 22 | struct desc_struct { |
| 23 | union { | 23 | union { |
| 24 | struct { unsigned int a, b; }; | 24 | struct { |
| 25 | unsigned int a; | ||
| 26 | unsigned int b; | ||
| 27 | }; | ||
| 25 | struct { | 28 | struct { |
| 26 | u16 limit0; | 29 | u16 limit0; |
| 27 | u16 base0; | 30 | u16 base0; |
| 28 | unsigned base1: 8, type: 4, s: 1, dpl: 2, p: 1; | 31 | unsigned base1: 8, type: 4, s: 1, dpl: 2, p: 1; |
| 29 | unsigned limit: 4, avl: 1, l: 1, d: 1, g: 1, base2: 8; | 32 | unsigned limit: 4, avl: 1, l: 1, d: 1, g: 1, base2: 8; |
| 30 | }; | 33 | }; |
| 31 | |||
| 32 | }; | 34 | }; |
| 33 | } __attribute__((packed)); | 35 | } __attribute__((packed)); |
| 34 | 36 | ||
| @@ -39,7 +41,7 @@ enum { | |||
| 39 | GATE_TASK = 0x5, | 41 | GATE_TASK = 0x5, |
| 40 | }; | 42 | }; |
| 41 | 43 | ||
| 42 | // 16byte gate | 44 | /* 16byte gate */ |
| 43 | struct gate_struct64 { | 45 | struct gate_struct64 { |
| 44 | u16 offset_low; | 46 | u16 offset_low; |
| 45 | u16 segment; | 47 | u16 segment; |
| @@ -56,10 +58,10 @@ struct gate_struct64 { | |||
| 56 | enum { | 58 | enum { |
| 57 | DESC_TSS = 0x9, | 59 | DESC_TSS = 0x9, |
| 58 | DESC_LDT = 0x2, | 60 | DESC_LDT = 0x2, |
| 59 | DESCTYPE_S = 0x10, /* !system */ | 61 | DESCTYPE_S = 0x10, /* !system */ |
| 60 | }; | 62 | }; |
| 61 | 63 | ||
| 62 | // LDT or TSS descriptor in the GDT. 16 bytes. | 64 | /* LDT or TSS descriptor in the GDT. 16 bytes. */ |
| 63 | struct ldttss_desc64 { | 65 | struct ldttss_desc64 { |
| 64 | u16 limit0; | 66 | u16 limit0; |
| 65 | u16 base0; | 67 | u16 base0; |
| @@ -84,7 +86,6 @@ struct desc_ptr { | |||
| 84 | unsigned long address; | 86 | unsigned long address; |
| 85 | } __attribute__((packed)) ; | 87 | } __attribute__((packed)) ; |
| 86 | 88 | ||
| 87 | |||
| 88 | #endif /* !__ASSEMBLY__ */ | 89 | #endif /* !__ASSEMBLY__ */ |
| 89 | 90 | ||
| 90 | #endif | 91 | #endif |
