diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2008-08-23 17:28:20 -0400 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-10-23 01:55:22 -0400 |
commit | aa7bd942498512d6b77d1d0da846a8ecdd5d6186 (patch) | |
tree | 9a420b59a1e862ea47a4c5f89601ffbdf3366922 /arch/um/sys-x86_64/asm/ptrace.h | |
parent | 4198426af37e7122f2fda2538fa9dcaa19c5e397 (diff) |
x86, um: get rid of header symlinks
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/um/sys-x86_64/asm/ptrace.h')
-rw-r--r-- | arch/um/sys-x86_64/asm/ptrace.h | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/arch/um/sys-x86_64/asm/ptrace.h b/arch/um/sys-x86_64/asm/ptrace.h new file mode 100644 index 000000000000..83d8c473b905 --- /dev/null +++ b/arch/um/sys-x86_64/asm/ptrace.h | |||
@@ -0,0 +1,72 @@ | |||
1 | /* | ||
2 | * Copyright 2003 PathScale, Inc. | ||
3 | * | ||
4 | * Licensed under the GPL | ||
5 | */ | ||
6 | |||
7 | #ifndef __UM_PTRACE_X86_64_H | ||
8 | #define __UM_PTRACE_X86_64_H | ||
9 | |||
10 | #include "linux/compiler.h" | ||
11 | #include "asm/errno.h" | ||
12 | |||
13 | #define __FRAME_OFFSETS /* Needed to get the R* macros */ | ||
14 | #include "asm/ptrace-generic.h" | ||
15 | |||
16 | #define HOST_AUDIT_ARCH AUDIT_ARCH_X86_64 | ||
17 | |||
18 | #define PT_REGS_RBX(r) UPT_RBX(&(r)->regs) | ||
19 | #define PT_REGS_RCX(r) UPT_RCX(&(r)->regs) | ||
20 | #define PT_REGS_RDX(r) UPT_RDX(&(r)->regs) | ||
21 | #define PT_REGS_RSI(r) UPT_RSI(&(r)->regs) | ||
22 | #define PT_REGS_RDI(r) UPT_RDI(&(r)->regs) | ||
23 | #define PT_REGS_RBP(r) UPT_RBP(&(r)->regs) | ||
24 | #define PT_REGS_RAX(r) UPT_RAX(&(r)->regs) | ||
25 | #define PT_REGS_R8(r) UPT_R8(&(r)->regs) | ||
26 | #define PT_REGS_R9(r) UPT_R9(&(r)->regs) | ||
27 | #define PT_REGS_R10(r) UPT_R10(&(r)->regs) | ||
28 | #define PT_REGS_R11(r) UPT_R11(&(r)->regs) | ||
29 | #define PT_REGS_R12(r) UPT_R12(&(r)->regs) | ||
30 | #define PT_REGS_R13(r) UPT_R13(&(r)->regs) | ||
31 | #define PT_REGS_R14(r) UPT_R14(&(r)->regs) | ||
32 | #define PT_REGS_R15(r) UPT_R15(&(r)->regs) | ||
33 | |||
34 | #define PT_REGS_FS(r) UPT_FS(&(r)->regs) | ||
35 | #define PT_REGS_GS(r) UPT_GS(&(r)->regs) | ||
36 | #define PT_REGS_DS(r) UPT_DS(&(r)->regs) | ||
37 | #define PT_REGS_ES(r) UPT_ES(&(r)->regs) | ||
38 | #define PT_REGS_SS(r) UPT_SS(&(r)->regs) | ||
39 | #define PT_REGS_CS(r) UPT_CS(&(r)->regs) | ||
40 | |||
41 | #define PT_REGS_ORIG_RAX(r) UPT_ORIG_RAX(&(r)->regs) | ||
42 | #define PT_REGS_RIP(r) UPT_IP(&(r)->regs) | ||
43 | #define PT_REGS_RSP(r) UPT_SP(&(r)->regs) | ||
44 | |||
45 | #define PT_REGS_EFLAGS(r) UPT_EFLAGS(&(r)->regs) | ||
46 | |||
47 | /* XXX */ | ||
48 | #define user_mode(r) UPT_IS_USER(&(r)->regs) | ||
49 | #define PT_REGS_ORIG_SYSCALL(r) PT_REGS_RAX(r) | ||
50 | #define PT_REGS_SYSCALL_RET(r) PT_REGS_RAX(r) | ||
51 | |||
52 | #define PT_FIX_EXEC_STACK(sp) do ; while(0) | ||
53 | |||
54 | #define profile_pc(regs) PT_REGS_IP(regs) | ||
55 | |||
56 | struct user_desc; | ||
57 | |||
58 | static inline int ptrace_get_thread_area(struct task_struct *child, int idx, | ||
59 | struct user_desc __user *user_desc) | ||
60 | { | ||
61 | return -ENOSYS; | ||
62 | } | ||
63 | |||
64 | static inline int ptrace_set_thread_area(struct task_struct *child, int idx, | ||
65 | struct user_desc __user *user_desc) | ||
66 | { | ||
67 | return -ENOSYS; | ||
68 | } | ||
69 | |||
70 | extern long arch_prctl(struct task_struct *task, int code, | ||
71 | unsigned long __user *addr); | ||
72 | #endif | ||