summaryrefslogtreecommitdiffstats
path: root/arch/x86/um/shared/sysdep/ptrace_user.h
diff options
context:
space:
mode:
authorAl Viro <viro@ftp.linux.org.uk>2011-08-18 20:12:19 +0100
committerRichard Weinberger <richard@nod.at>2011-11-02 14:15:27 +0100
commit966e803ab12538faf2b236dbe83f7fb796a031d6 (patch)
tree508ab798c9ce5cc0f6f53a2fd9f0b0942a4b32b0 /arch/x86/um/shared/sysdep/ptrace_user.h
parenta10c95d84c2d04a4bfb02104644bbf2811b99690 (diff)
downloadlinux-966e803ab12538faf2b236dbe83f7fb796a031d6.tar.bz2
um: unify ptrace_user.h
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/x86/um/shared/sysdep/ptrace_user.h')
-rw-r--r--arch/x86/um/shared/sysdep/ptrace_user.h26
1 files changed, 24 insertions, 2 deletions
diff --git a/arch/x86/um/shared/sysdep/ptrace_user.h b/arch/x86/um/shared/sysdep/ptrace_user.h
index a92f883264ed..16cd6b5e71f7 100644
--- a/arch/x86/um/shared/sysdep/ptrace_user.h
+++ b/arch/x86/um/shared/sysdep/ptrace_user.h
@@ -1,5 +1,27 @@
+#include <generated/user_constants.h>
+
+#define PT_OFFSET(r) ((r) * sizeof(long))
+
+#define PT_SYSCALL_NR(regs) ((regs)[HOST_ORIG_AX])
+#define PT_SYSCALL_NR_OFFSET PT_OFFSET(HOST_ORIG_AX)
+
+#define PT_SYSCALL_RET_OFFSET PT_OFFSET(HOST_AX)
+
+#define REGS_IP_INDEX HOST_IP
+#define REGS_SP_INDEX HOST_SP
+
#ifdef __i386__
-#include "ptrace_user_32.h"
+#define FP_SIZE ((HOST_FPX_SIZE > HOST_FP_SIZE) ? HOST_FPX_SIZE : HOST_FP_SIZE)
#else
-#include "ptrace_user_64.h"
+#define FP_SIZE HOST_FP_SIZE
+
+/*
+ * x86_64 FC3 doesn't define this in /usr/include/linux/ptrace.h even though
+ * it's defined in the kernel's include/linux/ptrace.h. Additionally, use the
+ * 2.4 name and value for 2.4 host compatibility.
+ */
+#ifndef PTRACE_OLDSETOPTIONS
+#define PTRACE_OLDSETOPTIONS 21
+#endif
+
#endif