summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoland McGrath2008-01-30 13:31:47 +0100
committerIngo Molnar2008-01-30 13:31:47 +0100
commit16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf (patch)
treee87239acac664b4f940118b9920e457cb8a1461c
parentx86: user_regset user-copy helpers (diff)
downloadkernel-qcow2-linux-16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf.tar.gz
kernel-qcow2-linux-16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf.tar.xz
kernel-qcow2-linux-16c3e389e7a7254ff8dc7029ac4fbe996c3c75bf.zip
x86: ptrace_request peekdata/pokedata
This makes ptrace_request handle {PEEK,POKE}{TEXT,DATA} directly. Every arch_ptrace that could call generic_ptrace_peekdata already has a default case calling ptrace_request, so this keeps things simpler for the arch code. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--kernel/ptrace.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/ptrace.c b/kernel/ptrace.c
index 973d727f5e84..e6a99d2793b3 100644
--- a/kernel/ptrace.c
+++ b/kernel/ptrace.c
@@ -426,6 +426,13 @@ int ptrace_request(struct task_struct *child, long request,
int ret = -EIO;
switch (request) {
+ case PTRACE_PEEKTEXT:
+ case PTRACE_PEEKDATA:
+ return generic_ptrace_peekdata(child, addr, data);
+ case PTRACE_POKETEXT:
+ case PTRACE_POKEDATA:
+ return generic_ptrace_pokedata(child, addr, data);
+
#ifdef PTRACE_OLDSETOPTIONS
case PTRACE_OLDSETOPTIONS:
#endif