aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m32r/kernel
diff options
context:
space:
mode:
authorAlexey Dobriyan <adobriyan@gmail.com>2007-07-17 07:03:44 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-17 13:23:03 -0400
commitf284ce7269031947326bac6bb19a977705276222 (patch)
tree8b145d42d4da182fb185dacc53b24ca7a2546114 /arch/m32r/kernel
parent7664732315c97f48dba9d1e7339ad16fc5a320ac (diff)
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/m32r/kernel')
-rw-r--r--arch/m32r/kernel/ptrace.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/arch/m32r/kernel/ptrace.c b/arch/m32r/kernel/ptrace.c
index 01a1c9ac8458..57a92ef31a90 100644
--- a/arch/m32r/kernel/ptrace.c
+++ b/arch/m32r/kernel/ptrace.c
@@ -619,15 +619,9 @@ do_ptrace(long request, struct task_struct *child, long addr, long data)
619 */ 619 */
620 case PTRACE_POKETEXT: 620 case PTRACE_POKETEXT:
621 case PTRACE_POKEDATA: 621 case PTRACE_POKEDATA:
622 ret = access_process_vm(child, addr, &data, sizeof(data), 1); 622 ret = generic_ptrace_pokedata(child, addr, data);
623 if (ret == sizeof(data)) { 623 if (ret == 0 && request == PTRACE_POKETEXT)
624 ret = 0; 624 invalidate_cache();
625 if (request == PTRACE_POKETEXT) {
626 invalidate_cache();
627 }
628 } else {
629 ret = -EIO;
630 }
631 break; 625 break;
632 626
633 /* 627 /*