Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
x86
include
asm
ldt.h
Go to the documentation of this file.
1
/*
2
* ldt.h
3
*
4
* Definitions of structures used with the modify_ldt system call.
5
*/
6
#ifndef _ASM_X86_LDT_H
7
#define _ASM_X86_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
/*
16
* Note on 64bit base and limit is ignored and you cannot set DS/ES/CS
17
* not to the default values if you still want to do syscalls. This
18
* call is more for 32bit mode therefore.
19
*/
20
struct
user_desc
{
21
unsigned
int
entry_number
;
22
unsigned
int
base_addr
;
23
unsigned
int
limit
;
24
unsigned
int
seg_32bit
:1;
25
unsigned
int
contents
:2;
26
unsigned
int
read_exec_only
:1;
27
unsigned
int
limit_in_pages
:1;
28
unsigned
int
seg_not_present
:1;
29
unsigned
int
useable
:1;
30
#ifdef __x86_64__
31
unsigned
int
lm
:1;
32
#endif
33
};
34
35
#define MODIFY_LDT_CONTENTS_DATA 0
36
#define MODIFY_LDT_CONTENTS_STACK 1
37
#define MODIFY_LDT_CONTENTS_CODE 2
38
39
#endif
/* !__ASSEMBLY__ */
40
#endif
/* _ASM_X86_LDT_H */
Generated on Thu Jan 10 2013 13:20:05 for Linux Kernel by
1.8.2