Browse Source

[S390] use generic sys_ptrace

After the PT_IEEE_IP hack has been removed s390 can now use
the common code sys_ptrace function.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Martin Schwidefsky 17 years ago
parent
commit
941af343e2
2 changed files with 1 additions and 38 deletions
  1. 1 36
      arch/s390/kernel/ptrace.c
  2. 0 2
      include/asm-s390/ptrace.h

+ 1 - 36
arch/s390/kernel/ptrace.c

@@ -607,18 +607,8 @@ do_ptrace_emu31(struct task_struct *child, long request, long addr, long data)
 }
 }
 #endif
 #endif
 
 
-static int
-do_ptrace(struct task_struct *child, long request, long addr, long data)
+long arch_ptrace(struct task_struct *child, long request, long addr, long data)
 {
 {
-	int ret;
-
-	if (request == PTRACE_ATTACH)
-		return ptrace_attach(child);
-
-	ret = ptrace_check_attach(child, request == PTRACE_KILL);
-	if (ret < 0)
-		return ret;
-
 	switch (request) {
 	switch (request) {
 	case PTRACE_SYSCALL:
 	case PTRACE_SYSCALL:
 		/* continue and stop at next (return from) syscall */
 		/* continue and stop at next (return from) syscall */
@@ -673,31 +663,6 @@ do_ptrace(struct task_struct *child, long request, long addr, long data)
 	return -EIO;
 	return -EIO;
 }
 }
 
 
-asmlinkage long
-sys_ptrace(long request, long pid, long addr, long data)
-{
-	struct task_struct *child;
-	int ret;
-
-	lock_kernel();
-	if (request == PTRACE_TRACEME) {
-		 ret = ptrace_traceme();
-		 goto out;
-	}
-
-	child = ptrace_get_task_struct(pid);
-	if (IS_ERR(child)) {
-		ret = PTR_ERR(child);
-		goto out;
-	}
-
-	ret = do_ptrace(child, request, addr, data);
-	put_task_struct(child);
-out:
-	unlock_kernel();
-	return ret;
-}
-
 asmlinkage void
 asmlinkage void
 syscall_trace(struct pt_regs *regs, int entryexit)
 syscall_trace(struct pt_regs *regs, int entryexit)
 {
 {

+ 0 - 2
include/asm-s390/ptrace.h

@@ -463,8 +463,6 @@ struct user_regs_struct
 };
 };
 
 
 #ifdef __KERNEL__
 #ifdef __KERNEL__
-#define __ARCH_SYS_PTRACE	1
-
 /*
 /*
  * These are defined as per linux/ptrace.h, which see.
  * These are defined as per linux/ptrace.h, which see.
  */
  */