ARM: call machine_shutdown() from machine_halt(), etc
authorRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 26 Jul 2010 12:31:27 +0000 (13:31 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 27 Jul 2010 09:48:43 +0000 (10:48 +0100)
commit3d3f78d752bfada5b6041f2f7bd0833d8bdf7a4a
tree14365f6ef64f10095c3080cdabb9b8cd0a51d671
parent5388a6b266e9c3357353332ba0cd5549082887f1
ARM: call machine_shutdown() from machine_halt(), etc

x86 calls machine_shutdown() from the various machine_*() calls which
take the machine down ready for halting, restarting, etc, and uses
this to bring the system safely to a point where those actions can be
performed.  Such actions are stopping the secondary CPUs.

So, change the ARM implementation of these to reflect what x86 does.

This solves kexec problems on ARM SMP platforms, where the secondary
CPUs were left running across the kexec call.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/machine_kexec.c
arch/arm/kernel/process.c
arch/arm/kernel/smp.c