powerpc: use NMI IPI for smp_send_stop
authorNicholas Piggin <npiggin@gmail.com>
Sun, 1 Apr 2018 10:36:13 +0000 (20:36 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 3 Apr 2018 12:59:09 +0000 (22:59 +1000)
commit6bed3237624e3faad1592543952907cd01a42c83
treeb3a9aa7ef1247c67ad75b42147e13f35ed528a8f
parenta2b5e056b75ee6ef0777817644a456b36b96ce38
powerpc: use NMI IPI for smp_send_stop

Use the NMI IPI rather than smp_call_function for smp_send_stop.
Have stopped CPUs hard disable interrupts rather than just soft
disable.

This function is used in crash/panic/shutdown paths to bring other
CPUs down as quickly and reliably as possible, and minimizing their
potential to cause trouble.

Avoiding the Linux smp_call_function infrastructure and (if supported)
using true NMI IPIs makes this more robust.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/kernel/smp.c