android_kernel_xiaomi_sm8350/arch/powerpc/platforms
Sebastien Dugue b906cfa397 powerpc/pseries: Fix cpu hotplug
Currently, pseries_cpu_die() calls msleep() while polling RTAS for
the status of the dying cpu.

However, if the cpu that is going down also happens to be the one
doing the tick then we're hosed as the tick_do_timer_cpu 'baton' is
only passed later on in tick_shutdown() when _cpu_down() does the
CPU_DEAD notification.  Therefore jiffies won't be updated anymore.

This replaces that msleep() with a cpu_relax() to make sure we're not
going to schedule at that point.

With this patch my test box survives a 100k iterations hotplug stress
test on _all_ cpus, whereas without it, it quickly dies after ~50
iterations.

Signed-off-by: Sebastien Dugue <sebastien.dugue@bull.net>
Cc: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-12-23 15:13:27 +11:00
..
8xx powerpc: Add support for the MPC852 based mgsuvd board from keymile. 2008-09-16 10:01:30 -05:00
40x powerpc: Introduce ppc_pci_flags accessors 2008-12-16 15:53:16 +11:00
44x powerpc: Introduce ppc_pci_flags accessors 2008-12-16 15:53:16 +11:00
52xx powerpc/mpc5200: Make internal 5200 PIC the default interrupt controller 2008-12-21 02:54:27 -07:00
82xx powerpc: Introduce ppc_pci_flags accessors 2008-12-16 15:53:16 +11:00
83xx powerpc/83xx: don't probe broken PCI on mpc837x_mds boards 2008-10-13 11:09:58 -05:00
85xx powerpc: struct device - replace bus_id with dev_name(), dev_set_name() 2008-12-16 15:53:38 +11:00
86xx powerpc/86xx: Basic GPIO support for GE Fanuc SBC610 2008-12-03 10:47:37 -06:00
512x powerpc/5121: Add PCI support. 2008-10-13 11:09:58 -05:00
cell powerpc/cell: add QPACE as a separate Cell platform 2008-12-22 22:19:19 +01:00
chrp powerpc: Introduce ppc_pci_flags accessors 2008-12-16 15:53:16 +11:00
embedded6xx powerpc: fix i2c on PPC linkstation / kurobox machines 2008-10-28 09:45:57 -05:00
iseries powerpc/iseries: viodasd needs to depend on CONFIG_BLOCK 2008-12-21 14:21:15 +11:00
maple Merge commit 'origin' 2008-10-15 11:31:54 +11:00
pasemi phylib: two dynamic mii_bus allocation fallout fixes 2008-10-09 09:45:04 -07:00
powermac powerpc/mm: Introduce MMU features 2008-12-21 14:21:16 +11:00
prep
ps3 powerpc: struct device - replace bus_id with dev_name(), dev_set_name() 2008-12-16 15:53:38 +11:00
pseries powerpc/pseries: Fix cpu hotplug 2008-12-23 15:13:27 +11:00
fsl_uli1575.c powerpc: Fix boot hang regression on MPC8544DS 2008-10-02 00:58:49 -05:00
Kconfig powerpc/QE: move QE_GPIO Kconfig symbol into the platforms/Kconfig 2008-10-13 11:09:58 -05:00
Kconfig.cputype powerpc/mm: Split mmu_context handling 2008-12-21 14:21:15 +11:00
Makefile powerpc: Remove use of CONFIG_PPC_MERGE 2008-08-04 13:18:17 +10:00