]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/v850/kernel/ptrace.c
Pull ec into release branch
[linux-2.6-omap-h63xx.git] / arch / v850 / kernel / ptrace.c
index 67e057509664a89daa48936f1741ad711464f89c..a458ac941b25b8fb432e83dc99f4c40c18aba1f7 100644 (file)
@@ -21,7 +21,6 @@
 #include <linux/kernel.h>
 #include <linux/mm.h>
 #include <linux/sched.h>
-#include <linux/smp_lock.h>
 #include <linux/ptrace.h>
 #include <linux/signal.h>
 
@@ -118,24 +117,16 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
        int rval;
 
        switch (request) {
-               unsigned long val, copied;
+               unsigned long val;
 
        case PTRACE_PEEKTEXT: /* read word at location addr. */
        case PTRACE_PEEKDATA:
-               copied = access_process_vm(child, addr, &val, sizeof(val), 0);
-               rval = -EIO;
-               if (copied != sizeof(val))
-                       break;
-               rval = put_user(val, (unsigned long *)data);
+               rval = generic_ptrace_peekdata(child, addr, data);
                goto out;
 
        case PTRACE_POKETEXT: /* write the word at location addr. */
        case PTRACE_POKEDATA:
-               rval = 0;
-               if (access_process_vm(child, addr, &data, sizeof(data), 1)
-                   == sizeof(data))
-                       break;
-               rval = -EIO;
+               rval = generic_ptrace_pokedata(child, addr, data);
                goto out;
 
        /* Read/write the word at location ADDR in the registers.  */