summaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel/ptrace.c
diff options
context:
space:
mode:
authorAlexey Dobriyan2007-07-17 13:03:44 +0200
committerLinus Torvalds2007-07-17 19:23:03 +0200
commitf284ce7269031947326bac6bb19a977705276222 (patch)
tree8b145d42d4da182fb185dacc53b24ca7a2546114 /arch/sh/kernel/ptrace.c
parentPTRACE_PEEKDATA consolidation (diff)
downloadkernel-qcow2-linux-f284ce7269031947326bac6bb19a977705276222.tar.gz
kernel-qcow2-linux-f284ce7269031947326bac6bb19a977705276222.tar.xz
kernel-qcow2-linux-f284ce7269031947326bac6bb19a977705276222.zip
PTRACE_POKEDATA consolidation
Identical implementations of PTRACE_POKEDATA go into generic_ptrace_pokedata() function. AFAICS, fix bug on xtensa where successful PTRACE_POKEDATA will nevertheless return EPERM. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Cc: Christoph Hellwig <hch@lst.de> Cc: <linux-arch@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/sh/kernel/ptrace.c')
-rw-r--r--arch/sh/kernel/ptrace.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/sh/kernel/ptrace.c b/arch/sh/kernel/ptrace.c
index f23f949576a5..891d1d46c902 100644
--- a/arch/sh/kernel/ptrace.c
+++ b/arch/sh/kernel/ptrace.c
@@ -126,10 +126,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
/* when I and D space are separate, this will have to be fixed. */
case PTRACE_POKETEXT: /* write the word at location addr. */
case PTRACE_POKEDATA:
- ret = 0;
- if (access_process_vm(child, addr, &data, sizeof(data), 1) == sizeof(data))
- break;
- ret = -EIO;
+ ret = generic_ptrace_pokedata(child, addr, data);
break;
case PTRACE_POKEUSR: /* write the word at location addr in the USER area */