aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/kernel/ptrace.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin/kernel/ptrace.c')
-rw-r--r--arch/blackfin/kernel/ptrace.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/arch/blackfin/kernel/ptrace.c b/arch/blackfin/kernel/ptrace.c
index b35839354130..75089f80855d 100644
--- a/arch/blackfin/kernel/ptrace.c
+++ b/arch/blackfin/kernel/ptrace.c
@@ -38,12 +38,13 @@
38 * Get contents of register REGNO in task TASK. 38 * Get contents of register REGNO in task TASK.
39 */ 39 */
40static inline long 40static inline long
41get_reg(struct task_struct *task, long regno, unsigned long __user *datap) 41get_reg(struct task_struct *task, unsigned long regno,
42 unsigned long __user *datap)
42{ 43{
43 long tmp; 44 long tmp;
44 struct pt_regs *regs = task_pt_regs(task); 45 struct pt_regs *regs = task_pt_regs(task);
45 46
46 if (regno & 3 || regno > PT_LAST_PSEUDO || regno < 0) 47 if (regno & 3 || regno > PT_LAST_PSEUDO)
47 return -EIO; 48 return -EIO;
48 49
49 switch (regno) { 50 switch (regno) {
@@ -74,11 +75,11 @@ get_reg(struct task_struct *task, long regno, unsigned long __user *datap)
74 * Write contents of register REGNO in task TASK. 75 * Write contents of register REGNO in task TASK.
75 */ 76 */
76static inline int 77static inline int
77put_reg(struct task_struct *task, long regno, unsigned long data) 78put_reg(struct task_struct *task, unsigned long regno, unsigned long data)
78{ 79{
79 struct pt_regs *regs = task_pt_regs(task); 80 struct pt_regs *regs = task_pt_regs(task);
80 81
81 if (regno & 3 || regno > PT_LAST_PSEUDO || regno < 0) 82 if (regno & 3 || regno > PT_LAST_PSEUDO)
82 return -EIO; 83 return -EIO;
83 84
84 switch (regno) { 85 switch (regno) {
@@ -240,7 +241,8 @@ void user_disable_single_step(struct task_struct *child)
240 clear_tsk_thread_flag(child, TIF_SINGLESTEP); 241 clear_tsk_thread_flag(child, TIF_SINGLESTEP);
241} 242}
242 243
243long arch_ptrace(struct task_struct *child, long request, long addr, long data) 244long arch_ptrace(struct task_struct *child, long request,
245 unsigned long addr, unsigned long data)
244{ 246{
245 int ret; 247 int ret;
246 unsigned long __user *datap = (unsigned long __user *)data; 248 unsigned long __user *datap = (unsigned long __user *)data;
@@ -368,14 +370,14 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
368 return copy_regset_to_user(child, &user_bfin_native_view, 370 return copy_regset_to_user(child, &user_bfin_native_view,
369 REGSET_GENERAL, 371 REGSET_GENERAL,
370 0, sizeof(struct pt_regs), 372 0, sizeof(struct pt_regs),
371 (void __user *)data); 373 datap);
372 374
373 case PTRACE_SETREGS: 375 case PTRACE_SETREGS:
374 pr_debug("ptrace: PTRACE_SETREGS\n"); 376 pr_debug("ptrace: PTRACE_SETREGS\n");
375 return copy_regset_from_user(child, &user_bfin_native_view, 377 return copy_regset_from_user(child, &user_bfin_native_view,
376 REGSET_GENERAL, 378 REGSET_GENERAL,
377 0, sizeof(struct pt_regs), 379 0, sizeof(struct pt_regs),
378 (const void __user *)data); 380 datap);
379 381
380 case_default: 382 case_default:
381 default: 383 default: