summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2013-02-15 21:04:28 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2013-02-15 21:04:28 +0100
commit2550d4890eae4d2d32ec6be0185eef6d30ce0124 (patch)
tree3b0068e6a1737cbe6b47e593fd92948b46e934f3
parentddd2da2562938ef53d9721f912d3c6137476a0b4 (diff)
downloadstrace-2550d4890eae4d2d32ec6be0185eef6d30ce0124.tar.gz
strace-2550d4890eae4d2d32ec6be0185eef6d30ce0124.tar.bz2
strace-2550d4890eae4d2d32ec6be0185eef6d30ce0124.tar.xz
Use the same type for i386_regs on 32-bit and 64-bit x86.
* defs.h: Stop including <asm/ptrace.h> for x86. Change i386_regs from "struct pt_regs" to "struct user_regs_struct". * syscall.c: Likewise. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--defs.h12
-rw-r--r--syscall.c3
2 files changed, 6 insertions, 9 deletions
diff --git a/defs.h b/defs.h
index c607dfd..f92d025 100644
--- a/defs.h
+++ b/defs.h
@@ -154,6 +154,10 @@ extern char *stpcpy(char *dst, const char *src);
extern long ptrace(int, int, char *, long);
#endif
+#if defined(TILE)
+# include <asm/ptrace.h> /* struct pt_regs */
+#endif
+
#if !HAVE_DECL_PTRACE_SETOPTIONS
# define PTRACE_SETOPTIONS 0x4200
#endif
@@ -218,12 +222,6 @@ extern long ptrace(int, int, char *, long);
# define PTRACE_EVENT_STOP 128
#endif
-#if defined(X86_64) || defined(X32) || defined(I386) || defined(TILE)
-/* For struct pt_regs. x86 strace uses PTRACE_GETREGS.
- * PTRACE_GETREGS returns registers in the layout of this struct.
- */
-# include <asm/ptrace.h>
-#endif
#ifdef ALPHA
# define REG_R0 0
# define REG_A0 16
@@ -356,7 +354,7 @@ struct arm_pt_regs {
#endif
#if defined(I386)
-extern struct pt_regs i386_regs;
+extern struct user_regs_struct i386_regs;
#endif
#if defined(IA64)
extern long ia32;
diff --git a/syscall.c b/syscall.c
index bf94eee..26c84de 100644
--- a/syscall.c
+++ b/syscall.c
@@ -67,7 +67,6 @@
#if defined(X86_64) || defined(X32)
# include <linux/ptrace.h>
-# include <asm/ptrace.h>
# include <sys/uio.h>
# include <elf.h>
#endif
@@ -672,7 +671,7 @@ is_restart_error(struct tcb *tcp)
}
#if defined(I386)
-struct pt_regs i386_regs;
+struct user_regs_struct i386_regs;
#elif defined(X86_64) || defined(X32)
/*
* On i386, pt_regs and user_regs_struct are the same,