Commit df698690 authored by Paul Mackerras's avatar Paul Mackerras

Revert "[POWERPC] Add compat handler for PTRACE_GETSIGINFO"

This reverts commit e4cc5894, as
requested by Roland McGrath, because compat_ptrace_request (added in
commit e16b2781, "ptrace:
compat_ptrace_request siginfo") now handles this case.
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 3dc50637
...@@ -135,6 +135,4 @@ struct ucontext32 { ...@@ -135,6 +135,4 @@ struct ucontext32 {
struct mcontext32 uc_mcontext; struct mcontext32 uc_mcontext;
}; };
extern int copy_siginfo_to_user32(struct compat_siginfo __user *d, siginfo_t *s);
#endif /* _PPC64_PPC32_H */ #endif /* _PPC64_PPC32_H */
...@@ -29,15 +29,12 @@ ...@@ -29,15 +29,12 @@
#include <linux/security.h> #include <linux/security.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/compat.h> #include <linux/compat.h>
#include <linux/elf.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/page.h> #include <asm/page.h>
#include <asm/pgtable.h> #include <asm/pgtable.h>
#include <asm/system.h> #include <asm/system.h>
#include "ppc32.h"
/* /*
* does not yet catch signals sent when the child dies. * does not yet catch signals sent when the child dies.
* in exit.c or in signal.c. * in exit.c or in signal.c.
...@@ -67,27 +64,6 @@ static long compat_ptrace_old(struct task_struct *child, long request, ...@@ -67,27 +64,6 @@ static long compat_ptrace_old(struct task_struct *child, long request,
return -EPERM; return -EPERM;
} }
static int compat_ptrace_getsiginfo(struct task_struct *child, compat_siginfo_t __user *data)
{
siginfo_t lastinfo;
int error = -ESRCH;
read_lock(&tasklist_lock);
if (likely(child->sighand != NULL)) {
error = -EINVAL;
spin_lock_irq(&child->sighand->siglock);
if (likely(child->last_siginfo != NULL)) {
lastinfo = *child->last_siginfo;
error = 0;
}
spin_unlock_irq(&child->sighand->siglock);
}
read_unlock(&tasklist_lock);
if (!error)
return copy_siginfo_to_user32(data, &lastinfo);
return error;
}
long compat_arch_ptrace(struct task_struct *child, compat_long_t request, long compat_arch_ptrace(struct task_struct *child, compat_long_t request,
compat_ulong_t caddr, compat_ulong_t cdata) compat_ulong_t caddr, compat_ulong_t cdata)
{ {
...@@ -306,9 +282,6 @@ long compat_arch_ptrace(struct task_struct *child, compat_long_t request, ...@@ -306,9 +282,6 @@ long compat_arch_ptrace(struct task_struct *child, compat_long_t request,
0, PT_REGS_COUNT * sizeof(compat_long_t), 0, PT_REGS_COUNT * sizeof(compat_long_t),
compat_ptr(data)); compat_ptr(data));
case PTRACE_GETSIGINFO:
return compat_ptrace_getsiginfo(child, compat_ptr(data));
case PTRACE_GETFPREGS: case PTRACE_GETFPREGS:
case PTRACE_SETFPREGS: case PTRACE_SETFPREGS:
case PTRACE_GETVRREGS: case PTRACE_GETVRREGS:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment