[v2] powerpc: Fix deadlock with multiple calls to smp_send_stop

Michael Ellerman patch-notifications at ellerman.id.au
Sat Apr 28 21:12:45 AEST 2018


On Fri, 2018-04-27 at 01:51:59 UTC, Nicholas Piggin wrote:
> smp_send_stop can lock up the IPI path for any subsequent calls,
> because the receiving CPUs spin in their handler function. This
> started becoming a problem with the addition of an smp_send_stop
> call in the reboot path, because panics can reboot after doing
> their own smp_send_stop.
> 
> The NMI IPI variant was fixed with ac61c11566 ("powerpc: Fix
> smp_send_stop NMI IPI handling"), which leaves the smp_call_function
> variant.
> 
> This is fixed by having smp_send_stop only ever do the
> smp_call_function once. This is a bit less robust than the NMI IPI
> fix, because any other call to smp_call_function after smp_send_stop
> could deadlock, but that has always been the case, and it was not
> been a problem before.
> 
> Cc: Michael Ellerman <mpe at ellerman.id.au>
> Fixes: f2748bdfe1573 ("powerpc/powernv: Always stop secondaries before reboot/shutdown")
> Reported-by: Abdul Haleem <abdhalee at linux.vnet.ibm.com>
> Signed-off-by: Nicholas Piggin <npiggin at gmail.com>

Applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/6029755eed95e5c90f763188c87ae3

cheers


More information about the Linuxppc-dev mailing list