mbox series

[v2,0/2] Fix Kernel failing to freeze system on panic

Message ID 20200311171245.45443-1-cristian.marussi@arm.com (mailing list archive)
Headers show
Series Fix Kernel failing to freeze system on panic | expand

Message

Cristian Marussi March 11, 2020, 5:12 p.m. UTC
Hi

Since a while (~v5.2) it has been reported that on arm64 when a single
core is online and another one panics while booting up, SMP send stop
machinery fails to send the proper stop requests, and, as a result, the
system is still well alive at the end of panic instead of being frozen;
moreover, this same behaviour on the crash_kexec path causes to loose
one CPU on the following crash-triggered reboot.

This anomaly is still present on v5.6-rc5.

Given that a previous attempt [1] to address this issue in common code
once for all architectures, while trying to remove duplicate code, had
a mild reception (to use an euphemism :D), this new series goes back
to the original plan of just trying to fix the arm64 behaviour on both
stop and crash paths. (the issue has not been observed on armv7)

Thanks

Cristian

[1] https://lore.kernel.org/lkml/20191219121905.26905-1-cristian.marussi@arm.com/

Changelog:

v1 --> v2:
- rebased on v5.6-rc5
- dropped some useless comments
- adopted a common helper used across both patches as suggested
  by Mark Ruland

Cristian Marussi (2):
  arm64: smp: fix smp_send_stop() behaviour
  arm64: smp: fix crash_smp_send_stop() behaviour

 arch/arm64/kernel/smp.c | 25 ++++++++++++++++++++-----
 1 file changed, 20 insertions(+), 5 deletions(-)