diff options
author | Elliott Hughes <enh@google.com> | 2014-04-05 11:56:17 -0700 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2014-04-09 12:36:47 +0000 |
commit | 44655a451e84c518878b4ff19319ad5cfc666a82 (patch) | |
tree | 83f839dba438e00622def74319f6ac335bf595f7 /mem.c | |
parent | 2c4fb257663ad108d17a60afafd9ace181e397d4 (diff) | |
download | strace-44655a451e84c518878b4ff19319ad5cfc666a82.tar.gz strace-44655a451e84c518878b4ff19319ad5cfc666a82.tar.bz2 strace-44655a451e84c518878b4ff19319ad5cfc666a82.tar.xz |
x86-64: decode clone LDT user_desc entries for x86 processes
* mem.c [X86_64]: Include asm/ldt.h.
[X86_64] (print_ldt_entry, sys_modify_ldt, sys_set_thread_area,
sys_get_thread_area): Define.
* process.c [X86_64]: Include asm/ldt.h.
(sys_clone) [X86_64]: Decode LDT entry if current_personality == 1.
Signed-off-by: Elliott Hughes <enh@google.com>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Diffstat (limited to 'mem.c')
-rw-r--r-- | mem.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -33,12 +33,12 @@ #include "defs.h" #include <asm/mman.h> #include <sys/mman.h> -#if defined(I386) +#if defined(I386) || defined(X86_64) # include <asm/ldt.h> # ifdef HAVE_STRUCT_USER_DESC # define modify_ldt_ldt_s user_desc # endif -#endif +#endif /* I386 || X86_64 */ static unsigned long get_pagesize() @@ -543,7 +543,7 @@ sys_getpagesize(struct tcb *tcp) } #endif -#if defined(I386) +#if defined(I386) || defined(X86_64) void print_ldt_entry(struct modify_ldt_ldt_s *ldt_entry) { @@ -635,7 +635,7 @@ sys_get_thread_area(struct tcb *tcp) return 0; } -#endif /* I386 */ +#endif /* I386 || X86_64 */ #if defined(M68K) int |