summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/cell/spufs/context.c
diff options
context:
space:
mode:
authorChristoph Hellwig2007-06-29 02:57:56 +0200
committerPaul Mackerras2007-07-03 07:24:45 +0200
commitea1ae5949d7fcd2e622226ba71741a0f43b6ef0a (patch)
tree869e76ffe14b24f0d3aa92f9d6ed267a3326cc08 /arch/powerpc/platforms/cell/spufs/context.c
parent[POWERPC] spusched: Update scheduling paramters on every spu_run (diff)
downloadkernel-qcow2-linux-ea1ae5949d7fcd2e622226ba71741a0f43b6ef0a.tar.gz
kernel-qcow2-linux-ea1ae5949d7fcd2e622226ba71741a0f43b6ef0a.tar.xz
kernel-qcow2-linux-ea1ae5949d7fcd2e622226ba71741a0f43b6ef0a.zip
[POWERPC] spusched: fix cpu/node binding
Add a cpus_allowed allowed filed to struct spu_context so that we always use the cpu mask of the owning thread instead of the one happening to call into the scheduler. Also use this information in grab_runnable_context to avoid spurious wakeups. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/cell/spufs/context.c')
-rw-r--r--arch/powerpc/platforms/cell/spufs/context.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/cell/spufs/context.c b/arch/powerpc/platforms/cell/spufs/context.c
index c778d9178e0f..6ff2a75589f3 100644
--- a/arch/powerpc/platforms/cell/spufs/context.c
+++ b/arch/powerpc/platforms/cell/spufs/context.c
@@ -53,7 +53,7 @@ struct spu_context *alloc_spu_context(struct spu_gang *gang)
INIT_LIST_HEAD(&ctx->rq);
if (gang)
spu_gang_add_ctx(gang, ctx);
-
+ ctx->cpus_allowed = current->cpus_allowed;
spu_set_timeslice(ctx);
goto out;
out_free: