OpenCloudOS-Kernel/arch/powerpc/platforms/cell
Andre Detsch b2e601d14d powerpc/spufs: Fix possible scheduling of a context to multiple SPEs
We currently have a race when scheduling a context to a SPE -
after we have found a runnable context in spusched_tick, the same
context may have been scheduled by spu_activate().

This may result in a panic if we try to unschedule a context that has
been freed in the meantime.

This change exits spu_schedule() if the context has already been
scheduled, so we don't end up scheduling it twice.

Signed-off-by: Andre Detsch <adetsch@br.ibm.com>
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
2008-09-08 09:44:43 +10:00
..
spufs powerpc/spufs: Fix possible scheduling of a context to multiple SPEs 2008-09-08 09:44:43 +10:00
Kconfig powerpc/cell: Add support for power button of future IBM cell blades 2008-07-22 10:39:32 +10:00
Makefile powerpc/cell: Add support for power button of future IBM cell blades 2008-07-22 10:39:32 +10:00
axon_msi.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
beat.c [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
beat.h [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
beat_htab.c powerpc: Remove unnecessary condition when sanity-checking WIMG bits 2008-07-15 12:24:59 +10:00
beat_hvCall.S [POWERPC] celleb: Move files for Beat hvcall interfaces 2008-04-24 21:08:13 +10:00
beat_interrupt.c [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
beat_interrupt.h [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
beat_iommu.c [POWERPC] celleb: Move files for Beat mmu and iommu 2008-04-24 21:08:13 +10:00
beat_smp.c [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
beat_spu_priv1.c [POWERPC] celleb: Move a file for SPU on Beat 2008-04-24 21:08:13 +10:00
beat_syscall.h [POWERPC] celleb: Move files for Beat hvcall interfaces 2008-04-24 21:08:13 +10:00
beat_udbg.c [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
beat_wrapper.h [POWERPC] celleb: Move files for Beat hvcall interfaces 2008-04-24 21:08:13 +10:00
cbe_cpufreq.c [POWERPC] cell: Convert #include of asm/of_{platform, device}.h into linux/of_{platform, device}.h. 2007-12-19 01:00:02 +01:00
cbe_cpufreq.h [CELL] cbe_cpufreq: reorganize code 2007-07-20 21:41:38 +02:00
cbe_cpufreq_pervasive.c [POWERPC] cell: Move cbe_regs.h to include/asm-powerpc/cell-regs.h 2007-10-09 21:01:56 +10:00
cbe_cpufreq_pmi.c cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called already 2008-07-30 09:41:43 -07:00
cbe_powerbutton.c powerpc/cell: Add support for power button of future IBM cell blades 2008-07-22 10:39:32 +10:00
cbe_regs.c [POWERPC] cell/cbe_regs.c: Add missing of_node_put 2007-12-20 17:13:51 +11:00
cbe_thermal.c sysdev: Pass the attribute to the low level sysdev show/store function 2008-07-21 21:55:02 -07:00
celleb_pci.c [POWERPC] celleb: Add support for PCI Express 2008-04-24 21:08:14 +10:00
celleb_pci.h [POWERPC] celleb: Add support for PCI Express 2008-04-24 21:08:14 +10:00
celleb_scc.h [POWERPC] celleb: Add support for PCI Express 2008-04-24 21:08:14 +10:00
celleb_scc_epci.c [POWERPC] celleb: Move the SCC related code for celleb 2008-04-24 21:08:13 +10:00
celleb_scc_pciex.c dma-mapping: add the device argument to dma_mapping_error() 2008-07-26 12:00:03 -07:00
celleb_scc_sio.c [POWERPC] celleb: Move the SCC related code for celleb 2008-04-24 21:08:13 +10:00
celleb_scc_uhc.c [POWERPC] celleb: Move the SCC related code for celleb 2008-04-24 21:08:13 +10:00
celleb_setup.c [POWERPC] celleb: Move miscellaneous files for Beat 2008-04-24 21:08:14 +10:00
cpufreq_spudemand.c powerpc/cell/cpufreq: Add spu aware cpufreq governor 2008-07-22 10:39:31 +10:00
interrupt.c powerpc: convert to generic helpers for IPI function calls 2008-06-26 11:22:13 +02:00
interrupt.h [POWERPC] cell: Add routines for managing PMU interrupts 2006-12-04 20:40:12 +11:00
io-workarounds.c [POWERPC] cell: Fix section mismatches in io-workarounds code 2008-05-15 20:49:57 +10:00
io-workarounds.h [POWERPC] cell: Fix section mismatches in io-workarounds code 2008-05-15 20:49:57 +10:00
iommu.c powerpc/pseries: iommu enablement for CMO 2008-07-25 15:44:43 +10:00
pervasive.c powerpc/cell: Cleanup sysreset_hack for IBM cell blades 2008-07-22 10:39:31 +10:00
pervasive.h powerpc/cell: Cleanup sysreset_hack for IBM cell blades 2008-07-22 10:39:31 +10:00
pmu.c [POWERPC] cell: Use machine_*_initcall() hooks in platform code 2008-01-17 14:57:15 +11:00
ras.c powerpc/cell: Cleanup sysreset_hack for IBM cell blades 2008-07-22 10:39:31 +10:00
ras.h [POWERPC] cell: add RAS support 2006-06-21 15:01:29 +10:00
setup.c [POWERPC] cell: Generalize io-workarounds code 2008-04-24 21:08:12 +10:00
smp.c [POWERPC] Cleanup SMT thread handling 2007-12-03 13:56:25 +11:00
spider-pci.c dma-mapping: add the device argument to dma_mapping_error() 2008-07-26 12:00:03 -07:00
spider-pic.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
spu_base.c sysdev: Pass the attribute to the low level sysdev show/store function 2008-07-21 21:55:02 -07:00
spu_callbacks.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
spu_fault.c [POWERPC] spufs: move fault, lscsa_alloc and switch code to spufs module 2007-12-21 19:46:19 +11:00
spu_manage.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
spu_notify.c [POWERPC] Oprofile: Remove dependency on spufs module 2007-12-28 15:07:52 +11:00
spu_priv1_mmio.c [POWERPC] spufs: try to route SPU interrupts to local node 2008-05-05 13:33:43 +10:00
spu_priv1_mmio.h [POWERPC] cell: abstract spu management routines 2006-12-04 20:40:39 +11:00
spu_syscalls.c [POWERPC] Oprofile: Remove dependency on spufs module 2007-12-28 15:07:52 +11:00