[POWERPC] spufs: Fix affinity after introduction of node_allowed() calls
authorAndre Detsch <adetsch@br.ibm.com>
Mon, 30 Jul 2007 23:48:11 +0000 (09:48 +1000)
committerPaul Mackerras <paulus@samba.org>
Fri, 3 Aug 2007 09:18:10 +0000 (19:18 +1000)
This patch fixes affinity reference point placement, which was not being
done in some situations, after the introduction of node_allowed() calls.

The previously used parameter, 'ctx', is just the iterator of the
previous list_for_each_entry_reverse loop, and its value might be
invalid at the end of the loop. Also, the right context to seek
for information when defining the reference ctx location
_is_ the reference ctx.

Signed-off-by: Andre Detsch <adetsch@br.ibm.com>
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>
arch/powerpc/platforms/cell/spufs/sched.c

index 758a80a..c784edd 100644 (file)
@@ -351,7 +351,8 @@ static void aff_set_ref_point_location(struct spu_gang *gang)
                lowest_offset = ctx->aff_offset;
        }
 
-       gang->aff_ref_spu = aff_ref_location(ctx, mem_aff, gs, lowest_offset);
+       gang->aff_ref_spu = aff_ref_location(gang->aff_ref_ctx, mem_aff, gs,
+                                                       lowest_offset);
 }
 
 static struct spu *ctx_location(struct spu *ref, int offset, int node)