[POWERPC] spufs: Fix SPE single-step mode
Currently we only catch debug events through the 0x3fff status; spufs_run_spu doesn't handle single-step SPE events. This change adds a handler for conditions where the SPE is stopped due to single-step-mode. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
038200cfdc
commit
60cf54db47
@ -410,8 +410,11 @@ long spufs_run_spu(struct spu_context *ctx, u32 *npc, u32 *event)
|
|||||||
* since we have TIF_SINGLESTEP set, thus the kernel will do
|
* since we have TIF_SINGLESTEP set, thus the kernel will do
|
||||||
* it upon return from the syscall anyawy
|
* it upon return from the syscall anyawy
|
||||||
*/
|
*/
|
||||||
if ((status & SPU_STATUS_STOPPED_BY_STOP)
|
if (unlikely(status & SPU_STATUS_SINGLE_STEP))
|
||||||
&& (status >> SPU_STOP_STATUS_SHIFT) == 0x3fff) {
|
ret = -ERESTARTSYS;
|
||||||
|
|
||||||
|
else if (unlikely((status & SPU_STATUS_STOPPED_BY_STOP)
|
||||||
|
&& (status >> SPU_STOP_STATUS_SHIFT) == 0x3fff)) {
|
||||||
force_sig(SIGTRAP, current);
|
force_sig(SIGTRAP, current);
|
||||||
ret = -ERESTARTSYS;
|
ret = -ERESTARTSYS;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user