]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: imx6: spin the cpu until hardware takes it down
authorShawn Guo <shawn.guo@linaro.org>
Sat, 18 Aug 2012 06:27:32 +0000 (14:27 +0800)
committerShawn Guo <shawn.guo@linaro.org>
Thu, 23 Aug 2012 13:10:22 +0000 (21:10 +0800)
commitdc2184fae0527da8576d1907486cbba82005a677
tree6971c668617734f27ba86364c189c9dbecf8811c
parentd0b6a3c37b6ad072cdf1f56686fb5a0c123b95e6
ARM: imx6: spin the cpu until hardware takes it down

Though commit d6cb33d (ARM: imx6: exit coherency when shutting down
a cpu) improves the stability of imx6q cpu hotplug a lot, there are
still hangs seen with a more stressful hotplug testing.

It's expected that once imx_enable_cpu(cpu, false) is called, the cpu
will be taken down by hardware immediately, and the code after that
will not get any chance to execute.  However, this is not always the
case from the testing.  The cpu could possibly be alive for a few
cycles before hardware actually takes it down.  So rather than letting
cpu execute some code that could cause a hang in these cycles, let's
make the cpu spin there and wait for hardware to take it down.

Cc: <stable@vger.kernel.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
arch/arm/mach-imx/hotplug.c