summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/ppc_ksyms.c
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2007-12-28 05:11:09 +0100
committerPaul Mackerras <paulus@samba.org>2008-01-25 12:52:50 +0100
commite057d985fd8aad83d07376c5c36f2c8a6c5411be (patch)
tree60506ba8d0fe04b53e7fe182e91633660a2ee710 /arch/powerpc/kernel/ppc_ksyms.c
parent[POWERPC] Make smp_call_function_map static (diff)
downloadlinux-e057d985fd8aad83d07376c5c36f2c8a6c5411be.tar.xz
linux-e057d985fd8aad83d07376c5c36f2c8a6c5411be.zip
[POWERPC] Make smp_send_stop() handle panic and xmon reboot
smp_send_stop() will send an IPI to all other cpus to shut them down. However, for the case of xmon-based reboots (as well as potentially some panics), the other cpus are (or might be) spinning with interrupts off, and won't take the IPI. Current code will drop us into the debugger when the IPI fails, which means we're in an infinite loop that we can't get out of without an external reset of some sort. Instead, make the smp_send_stop() IPI call path just print the warning about being unable to send IPIs, but make it return so the rest of the shutdown sequence can continue. It's not perfect, but the lesser of two evils. Also move the call_lock handling outside of smp_call_function_map so we can avoid deadlocks in smp_send_stop(). Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/ppc_ksyms.c')
0 files changed, 0 insertions, 0 deletions