aboutsummaryrefslogtreecommitdiff
path: root/arch/powerpc/platforms/cell/spufs/run.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/platforms/cell/spufs/run.c')
-rw-r--r--arch/powerpc/platforms/cell/spufs/run.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/run.c b/arch/powerpc/platforms/cell/spufs/run.c
index 0c03a04b6a3..a4a0080c223 100644
--- a/arch/powerpc/platforms/cell/spufs/run.c
+++ b/arch/powerpc/platforms/cell/spufs/run.c
@@ -1,3 +1,5 @@
+#define DEBUG
+
#include <linux/wait.h>
#include <linux/ptrace.h>
@@ -56,12 +58,12 @@ static inline int spu_run_init(struct spu_context *ctx, u32 * npc)
if ((ret = spu_acquire_runnable(ctx)) != 0)
return ret;
- if (ctx->flags & SPU_CREATE_ISOLATE)
- runcntl |= SPU_RUNCNTL_ISOLATE;
- else
+ /* if we're in isolated mode, we would have started the SPU
+ * earlier, so don't do it again now. */
+ if (!(ctx->flags & SPU_CREATE_ISOLATE)) {
ctx->ops->npc_write(ctx, *npc);
-
- ctx->ops->runcntl_write(ctx, runcntl);
+ ctx->ops->runcntl_write(ctx, runcntl);
+ }
return 0;
}