aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/s390/kernel/ptrace.c37
1 files changed, 1 insertions, 36 deletions
diff --git a/arch/s390/kernel/ptrace.c b/arch/s390/kernel/ptrace.c
index 9dbaef44e8ec..7f4270163744 100644
--- a/arch/s390/kernel/ptrace.c
+++ b/arch/s390/kernel/ptrace.c
@@ -607,18 +607,8 @@ do_ptrace_emu31(struct task_struct *child, long request, long addr, long data)
607} 607}
608#endif 608#endif
609 609
610static int 610long arch_ptrace(struct task_struct *child, long request, long addr, long data)
611do_ptrace(struct task_struct *child, long request, long addr, long data)
612{ 611{
613 int ret;
614
615 if (request == PTRACE_ATTACH)
616 return ptrace_attach(child);
617
618 ret = ptrace_check_attach(child, request == PTRACE_KILL);
619 if (ret < 0)
620 return ret;
621
622 switch (request) { 612 switch (request) {
623 case PTRACE_SYSCALL: 613 case PTRACE_SYSCALL:
624 /* continue and stop at next (return from) syscall */ 614 /* continue and stop at next (return from) syscall */
@@ -673,31 +663,6 @@ do_ptrace(struct task_struct *child, long request, long addr, long data)
673 return -EIO; 663 return -EIO;
674} 664}
675 665
676asmlinkage long
677sys_ptrace(long request, long pid, long addr, long data)
678{
679 struct task_struct *child;
680 int ret;
681
682 lock_kernel();
683 if (request == PTRACE_TRACEME) {
684 ret = ptrace_traceme();
685 goto out;
686 }
687
688 child = ptrace_get_task_struct(pid);
689 if (IS_ERR(child)) {
690 ret = PTR_ERR(child);
691 goto out;
692 }
693
694 ret = do_ptrace(child, request, addr, data);
695 put_task_struct(child);
696out:
697 unlock_kernel();
698 return ret;
699}
700
701asmlinkage void 666asmlinkage void
702syscall_trace(struct pt_regs *regs, int entryexit) 667syscall_trace(struct pt_regs *regs, int entryexit)
703{ 668{