From 66ceb247dc7eaf277d304a261dcc151449248c14 Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Thu, 30 Jun 2005 09:42:00 +0000 Subject: [PATCH] --- yaml --- r: 11123 b: refs/heads/master c: c134a5ecdb8f4aee09feca0d4d395915e752fcb8 h: refs/heads/master i: 11121: 906cef97efb7c5fba7932430dca76e9f86e0d1a8 11119: abdb6f20277e193335404b659fed2580e57ec75f v: v3 --- [refs] | 2 +- trunk/arch/mips/kernel/ptrace.c | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index f2520e6d909e..33fb08dffccb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7222424e2eb7915bceb34b915150f2fc76e0477c +refs/heads/master: c134a5ecdb8f4aee09feca0d4d395915e752fcb8 diff --git a/trunk/arch/mips/kernel/ptrace.c b/trunk/arch/mips/kernel/ptrace.c index 2441e32ce820..74283369a1e3 100644 --- a/trunk/arch/mips/kernel/ptrace.c +++ b/trunk/arch/mips/kernel/ptrace.c @@ -177,19 +177,22 @@ asmlinkage int sys_ptrace(long request, long pid, long addr, long data) write_c0_status(flags); break; } - case DSP_BASE ... DSP_BASE + 5: + case DSP_BASE ... DSP_BASE + 5: { + dspreg_t *dregs; + if (!cpu_has_dsp) { tmp = 0; ret = -EIO; goto out_tsk; } if (child->thread.dsp.used_dsp) { - dspreg_t *dregs = __get_dsp_regs(child); + dregs = __get_dsp_regs(child); tmp = (unsigned long) (dregs[addr - DSP_BASE]); } else { tmp = -1; /* DSP registers yet used */ } break; + } case DSP_CONTROL: if (!cpu_has_dsp) { tmp = 0; @@ -270,15 +273,18 @@ asmlinkage int sys_ptrace(long request, long pid, long addr, long data) else child->thread.fpu.soft.fcr31 = data; break; - case DSP_BASE ... DSP_BASE + 5: + case DSP_BASE ... DSP_BASE + 5: { + dspreg_t *dregs; + if (!cpu_has_dsp) { ret = -EIO; break; } - dspreg_t *dregs = __get_dsp_regs(child); + dregs = __get_dsp_regs(child); dregs[addr - DSP_BASE] = data; break; + } case DSP_CONTROL: if (!cpu_has_dsp) { ret = -EIO;