summaryrefslogtreecommitdiff
path: root/syscall.c
diff options
context:
space:
mode:
Diffstat (limited to 'syscall.c')
-rw-r--r--syscall.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/syscall.c b/syscall.c
index 72ef233..4d72f42 100644
--- a/syscall.c
+++ b/syscall.c
@@ -1005,7 +1005,12 @@ get_regs(pid_t pid)
get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &avr32_regs);
# elif defined(I386)
get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, (long) &i386_regs);
-# elif defined(X86_64) || defined(X32)
+# elif defined(X32)
+ /* x86_io.iov_base = &x86_regs_union; - already is */
+ x86_io.iov_len = sizeof(x86_regs_union);
+ get_regs_error = ptrace(PTRACE_GETREGSET, pid,
+ NT_PRSTATUS, (long) &x86_io);
+# elif defined(X86_64)
/*
* PTRACE_GETREGSET was introduced in 2.6.33.
* Let's be paranoid and require a bit later kernel.