aboutsummaryrefslogtreecommitdiffstats
path: root/arch/xtensa/kernel/ptrace.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/xtensa/kernel/ptrace.c')
-rw-r--r--arch/xtensa/kernel/ptrace.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/arch/xtensa/kernel/ptrace.c b/arch/xtensa/kernel/ptrace.c
index 9d4e1ceb3f09..c72c9473ef99 100644
--- a/arch/xtensa/kernel/ptrace.c
+++ b/arch/xtensa/kernel/ptrace.c
@@ -256,9 +256,11 @@ int ptrace_pokeusr(struct task_struct *child, long regno, long val)
256 return 0; 256 return 0;
257} 257}
258 258
259long arch_ptrace(struct task_struct *child, long request, long addr, long data) 259long arch_ptrace(struct task_struct *child, long request,
260 unsigned long addr, unsigned long data)
260{ 261{
261 int ret = -EPERM; 262 int ret = -EPERM;
263 void __user *datap = (void __user *) data;
262 264
263 switch (request) { 265 switch (request) {
264 case PTRACE_PEEKTEXT: /* read word at location addr. */ 266 case PTRACE_PEEKTEXT: /* read word at location addr. */
@@ -267,7 +269,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
267 break; 269 break;
268 270
269 case PTRACE_PEEKUSR: /* read register specified by addr. */ 271 case PTRACE_PEEKUSR: /* read register specified by addr. */
270 ret = ptrace_peekusr(child, addr, (void __user *) data); 272 ret = ptrace_peekusr(child, addr, datap);
271 break; 273 break;
272 274
273 case PTRACE_POKETEXT: /* write the word at location addr. */ 275 case PTRACE_POKETEXT: /* write the word at location addr. */
@@ -280,19 +282,19 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
280 break; 282 break;
281 283
282 case PTRACE_GETREGS: 284 case PTRACE_GETREGS:
283 ret = ptrace_getregs(child, (void __user *) data); 285 ret = ptrace_getregs(child, datap);
284 break; 286 break;
285 287
286 case PTRACE_SETREGS: 288 case PTRACE_SETREGS:
287 ret = ptrace_setregs(child, (void __user *) data); 289 ret = ptrace_setregs(child, datap);
288 break; 290 break;
289 291
290 case PTRACE_GETXTREGS: 292 case PTRACE_GETXTREGS:
291 ret = ptrace_getxregs(child, (void __user *) data); 293 ret = ptrace_getxregs(child, datap);
292 break; 294 break;
293 295
294 case PTRACE_SETXTREGS: 296 case PTRACE_SETXTREGS:
295 ret = ptrace_setxregs(child, (void __user *) data); 297 ret = ptrace_setxregs(child, datap);
296 break; 298 break;
297 299
298 default: 300 default: