Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[linux-2.6] / include / asm-i386 / ldt.h
1 /*
2  * ldt.h
3  *
4  * Definitions of structures used with the modify_ldt system call.
5  */
6 #ifndef _LINUX_LDT_H
7 #define _LINUX_LDT_H
8
9 /* Maximum number of LDT entries supported. */
10 #define LDT_ENTRIES     8192
11 /* The size of each LDT entry. */
12 #define LDT_ENTRY_SIZE  8
13
14 #ifndef __ASSEMBLY__
15 struct user_desc {
16         unsigned int  entry_number;
17         unsigned long base_addr;
18         unsigned int  limit;
19         unsigned int  seg_32bit:1;
20         unsigned int  contents:2;
21         unsigned int  read_exec_only:1;
22         unsigned int  limit_in_pages:1;
23         unsigned int  seg_not_present:1;
24         unsigned int  useable:1;
25 };
26
27 #define MODIFY_LDT_CONTENTS_DATA        0
28 #define MODIFY_LDT_CONTENTS_STACK       1
29 #define MODIFY_LDT_CONTENTS_CODE        2
30
31 #endif /* !__ASSEMBLY__ */
32 #endif