Hi, ???? Thanks for the patch log update, it looks good to me. Acked-by: Dave Young <dyoung at redhat.com> On 09/20/16 at 11:22am, ???? / KAWAI?HIDEHIRO wrote: > Here is the revised commit description reflecting Dave's > comment. Cc list was copied from -mm version. > > From: Hidehiro Kawai <hidehiro.kawai.ez at hitachi.com> > Subject: x86/panic: replace smp_send_stop() with kdump friendly version in panic path > > This patch fixes a problem reported by Daniel Walker > (https://lkml.org/lkml/2015/6/24/44). > > When kernel panics with crash_kexec_post_notifiers kernel parameter > enabled, other CPUs are stopped by smp_send_stop() instead of > machine_crash_shutdown() in __crash_kexec() path. > > panic() > if crash_kexec_post_notifiers == 1 > smp_send_stop() > atomic_notifier_call_chain() > kmsg_dump() > __crash_kexec() > machine_crash_shutdown() > > Different from smp_send_stop(), machine_crash_shutdown() stops other > CPUs with extra works for kdump. So, if smp_send_stop() stops other > CPUs in advance, these extra works won't be done. For x86, kdump > routines miss to save other CPUs' registers and disable virtualization > extensions. > > To fix this problem, call a new kdump friendly function, > crash_smp_send_stop(), instead of the smp_send_stop() when > crash_kexec_post_notifiers is enabled. crash_smp_send_stop() is a > weak function, and it just call smp_send_stop(). Architecture > codes should override it so that kdump can work appropriately. > This patch only provides x86-specific version. > > For Xen's PV kernel, just keep the current behavior. > As for Dom0, it doesn't use crash_kexec routines, and it relies on > panic notifier chain. At the end of the chain, a hypercall is > issued which requests the hypervisor to execute kdump. This means > regardless of crash_kexec_post_notifiers setting, smp_send_stop(). > For PV HVM, it would work similarly to baremetal kernels with extra > cleanups for hypervisor. It doesn't need additional care. > > Changes in V4: > - Keep to use smp_send_stop if crash_kexec_post_notifiers is not set > - Rename panic_smp_send_stop to crash_smp_send_stop > - Don't change the behavior for Xen's PV kernel > > Changes in V3: > - Revise comments, description, and symbol names > > Changes in V2: > - Replace smp_send_stop() call with crash_kexec version which > saves cpu states and cleans up VMX/SVM > - Drop a fix for Problem 1 at this moment > > Fixes: f06e5153f4ae (kernel/panic.c: add "crash_kexec_post_notifiers" option) > Link: http://lkml.kernel.org/r/20160810080948.11028.15344.stgit at sysi4-13.yrl.intra.hitachi.co.jp > Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez at hitachi.com> > Reported-by: Daniel Walker <dwalker at fifo99.com> > Cc: Dave Young <dyoung at redhat.com> > Cc: Baoquan He <bhe at redhat.com> > Cc: Vivek Goyal <vgoyal at redhat.com> > Cc: Eric Biederman <ebiederm at xmission.com> > Cc: Masami Hiramatsu <mhiramat at kernel.org> > Cc: Daniel Walker <dwalker at fifo99.com> > Cc: Xunlei Pang <xpang at redhat.com> > Cc: Thomas Gleixner <tglx at linutronix.de> > Cc: Ingo Molnar <mingo at redhat.com> > Cc: "H. Peter Anvin" <hpa at zytor.com> > Cc: Borislav Petkov <bp at suse.de> > Cc: David Vrabel <david.vrabel at citrix.com> > Cc: Toshi Kani <toshi.kani at hpe.com> > Cc: Ralf Baechle <ralf at linux-mips.org> > Cc: David Daney <david.daney at cavium.com> > Cc: Aaro Koskinen <aaro.koskinen at iki.fi> > Cc: "Steven J. Hill" <steven.hill at cavium.com> > Cc: Corey Minyard <cminyard at mvista.com> > Signed-off-by: Andrew Morton <akpm at linux-foundation.org> > [snip] Thanks Dave