From: Martin Schwidefsky Date: Wed, 30 Apr 2008 11:38:48 +0000 (+0200) Subject: [S390] Remove self ptrace IEEE_IP hack. X-Git-Tag: v2.6.26-rc1~107^2~2 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=613e1def6b52c399a8b72a5e11bc2e57d2546fb8;p=linux-2.6-omap-h63xx.git [S390] Remove self ptrace IEEE_IP hack. The self referential PT_IEEE_IP ptrace peek & poke calls have been broken for that last 6 years. For peek the code always returns 0 instead of the last ieee fault and for poke the code does nothing. Since nobody noticed the code seems to be superfluous. So lets remove it. Cc: Christoph Hellwig Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/kernel/ptrace.c b/arch/s390/kernel/ptrace.c index 58a06429698..9dbaef44e8e 100644 --- a/arch/s390/kernel/ptrace.c +++ b/arch/s390/kernel/ptrace.c @@ -607,8 +607,6 @@ do_ptrace_emu31(struct task_struct *child, long request, long addr, long data) } #endif -#define PT32_IEEE_IP 0x13c - static int do_ptrace(struct task_struct *child, long request, long addr, long data) { @@ -617,24 +615,6 @@ do_ptrace(struct task_struct *child, long request, long addr, long data) if (request == PTRACE_ATTACH) return ptrace_attach(child); - /* - * Special cases to get/store the ieee instructions pointer. - */ - if (child == current) { - if (request == PTRACE_PEEKUSR && addr == PT_IEEE_IP) - return peek_user(child, addr, data); - if (request == PTRACE_POKEUSR && addr == PT_IEEE_IP) - return poke_user(child, addr, data); -#ifdef CONFIG_COMPAT - if (request == PTRACE_PEEKUSR && - addr == PT32_IEEE_IP && test_thread_flag(TIF_31BIT)) - return peek_user_emu31(child, addr, data); - if (request == PTRACE_POKEUSR && - addr == PT32_IEEE_IP && test_thread_flag(TIF_31BIT)) - return poke_user_emu31(child, addr, data); -#endif - } - ret = ptrace_check_attach(child, request == PTRACE_KILL); if (ret < 0) return ret;