diff options
Diffstat (limited to 'include/asm-x86/desc_defs.h')
| -rw-r--r-- | include/asm-x86/desc_defs.h | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/include/asm-x86/desc_defs.h b/include/asm-x86/desc_defs.h deleted file mode 100644 index e33f078b3e5..00000000000 --- a/include/asm-x86/desc_defs.h +++ /dev/null @@ -1,90 +0,0 @@ -/* Written 2000 by Andi Kleen */ -#ifndef __ARCH_DESC_DEFS_H -#define __ARCH_DESC_DEFS_H - -/* - * Segment descriptor structure definitions, usable from both x86_64 and i386 - * archs. - */ - -#ifndef __ASSEMBLY__ - -#include <linux/types.h> - -/* - * FIXME: Acessing the desc_struct through its fields is more elegant, - * and should be the one valid thing to do. However, a lot of open code - * still touches the a and b acessors, and doing this allow us to do it - * incrementally. We keep the signature as a struct, rather than an union, - * so we can get rid of it transparently in the future -- glommer - */ -// 8 byte segment descriptor -struct desc_struct { - union { - struct { unsigned int a, b; }; - struct { - u16 limit0; - u16 base0; - unsigned base1: 8, type: 4, s: 1, dpl: 2, p: 1; - unsigned limit: 4, avl: 1, l: 1, d: 1, g: 1, base2: 8; - }; - - }; -} __attribute__((packed)); - -enum { - GATE_INTERRUPT = 0xE, - GATE_TRAP = 0xF, - GATE_CALL = 0xC, - GATE_TASK = 0x5, -}; - -// 16byte gate -struct gate_struct64 { - u16 offset_low; - u16 segment; - unsigned ist : 3, zero0 : 5, type : 5, dpl : 2, p : 1; - u16 offset_middle; - u32 offset_high; - u32 zero1; -} __attribute__((packed)); - -#define PTR_LOW(x) ((unsigned long long)(x) & 0xFFFF) -#define PTR_MIDDLE(x) (((unsigned long long)(x) >> 16) & 0xFFFF) -#define PTR_HIGH(x) ((unsigned long long)(x) >> 32) - -enum { - DESC_TSS = 0x9, - DESC_LDT = 0x2, - DESCTYPE_S = 0x10, /* !system */ -}; - -// LDT or TSS descriptor in the GDT. 16 bytes. -struct ldttss_desc64 { - u16 limit0; - u16 base0; - unsigned base1 : 8, type : 5, dpl : 2, p : 1; - unsigned limit1 : 4, zero0 : 3, g : 1, base2 : 8; - u32 base3; - u32 zero1; -} __attribute__((packed)); - -#ifdef CONFIG_X86_64 -typedef struct gate_struct64 gate_desc; -typedef struct ldttss_desc64 ldt_desc; -typedef struct ldttss_desc64 tss_desc; -#else -typedef struct desc_struct gate_desc; -typedef struct desc_struct ldt_desc; -typedef struct desc_struct tss_desc; -#endif - -struct desc_ptr { - unsigned short size; - unsigned long address; -} __attribute__((packed)) ; - - -#endif /* !__ASSEMBLY__ */ - -#endif |
