MIPS: DSP: eleminate used_dsp.
used_dsp was meant to be used like used_math - but since the FPU context is small and lazy context switching is a stupid idea on multiprocessors this idea only got halfway implemented and those bits are were now breaking ptrace. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
@@ -280,12 +280,8 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
|
|||||||
ret = -EIO;
|
ret = -EIO;
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
if (child->thread.dsp.used_dsp) {
|
|
||||||
dregs = __get_dsp_regs(child);
|
dregs = __get_dsp_regs(child);
|
||||||
tmp = (unsigned long) (dregs[addr - DSP_BASE]);
|
tmp = (unsigned long) (dregs[addr - DSP_BASE]);
|
||||||
} else {
|
|
||||||
tmp = -1; /* DSP registers yet used */
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DSP_CONTROL:
|
case DSP_CONTROL:
|
||||||
|
@@ -201,12 +201,8 @@ asmlinkage int sys32_ptrace(int request, int pid, int addr, int data)
|
|||||||
ret = -EIO;
|
ret = -EIO;
|
||||||
goto out_tsk;
|
goto out_tsk;
|
||||||
}
|
}
|
||||||
if (child->thread.dsp.used_dsp) {
|
|
||||||
dspreg_t *dregs = __get_dsp_regs(child);
|
dspreg_t *dregs = __get_dsp_regs(child);
|
||||||
tmp = (unsigned long) (dregs[addr - DSP_BASE]);
|
tmp = (unsigned long) (dregs[addr - DSP_BASE]);
|
||||||
} else {
|
|
||||||
tmp = -1; /* DSP registers yet used */
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case DSP_CONTROL:
|
case DSP_CONTROL:
|
||||||
if (!cpu_has_dsp) {
|
if (!cpu_has_dsp) {
|
||||||
|
@@ -103,7 +103,6 @@ typedef __u32 dspreg_t;
|
|||||||
struct mips_dsp_state {
|
struct mips_dsp_state {
|
||||||
dspreg_t dspr[NUM_DSP_REGS];
|
dspreg_t dspr[NUM_DSP_REGS];
|
||||||
unsigned int dspcontrol;
|
unsigned int dspcontrol;
|
||||||
unsigned short used_dsp;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#define INIT_DSP {{0,},}
|
#define INIT_DSP {{0,},}
|
||||||
|
Reference in New Issue
Block a user