diff options
author | Christoph Hellwig <hch@lst.de> | 2007-06-04 23:26:51 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-06-07 11:44:39 +1000 |
commit | bb5db29aa0379f0f3ef857a3a3715f17261c611b (patch) | |
tree | 7de8b9a16f8a78fb99ac10e1f8d64664b5472aa3 /arch/powerpc/mm/tlb_64.c | |
parent | 47d3a5faa3f72186f769ed9579c630afb8433f2b (diff) |
[POWERPC] spufs scheduler: Fix wakeup races
Fix the race between checking for contexts on the runqueue and actually
waking them in spu_deactive and spu_yield.
The guts of spu_reschedule are split into a new helper called
grab_runnable_context which shows if there is a runnable thread below
a specified priority and if yes removes if from the runqueue and uses
it. This function is used by the new __spu_deactivate hepler shared
by preemption and spu_yield to grab a new context before deactivating
a specified priority and if yes removes if from the runqueue and uses
it. This function is used by the new __spu_deactivate hepler shared
by preemption and spu_yield to grab a new context before deactivating
the old one.
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/mm/tlb_64.c')
0 files changed, 0 insertions, 0 deletions