[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [V4 PATCH 1/2] x86/panic: Replace smp_send_stop() with kdump friendly version in panic path
Hi, 河合英宏 Thanks for the patch log update, it looks good to me. Acked-by: Dave Young <dyoung@xxxxxxxxxx> 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@xxxxxxxxxxx> > 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@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx > Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx> > Reported-by: Daniel Walker <dwalker@xxxxxxxxxx> > Cc: Dave Young <dyoung@xxxxxxxxxx> > Cc: Baoquan He <bhe@xxxxxxxxxx> > Cc: Vivek Goyal <vgoyal@xxxxxxxxxx> > Cc: Eric Biederman <ebiederm@xxxxxxxxxxxx> > Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx> > Cc: Daniel Walker <dwalker@xxxxxxxxxx> > Cc: Xunlei Pang <xpang@xxxxxxxxxx> > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Cc: Ingo Molnar <mingo@xxxxxxxxxx> > Cc: "H. Peter Anvin" <hpa@xxxxxxxxx> > Cc: Borislav Petkov <bp@xxxxxxx> > Cc: David Vrabel <david.vrabel@xxxxxxxxxx> > Cc: Toshi Kani <toshi.kani@xxxxxxx> > Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > Cc: David Daney <david.daney@xxxxxxxxxx> > Cc: Aaro Koskinen <aaro.koskinen@xxxxxx> > Cc: "Steven J. Hill" <steven.hill@xxxxxxxxxx> > Cc: Corey Minyard <cminyard@xxxxxxxxxx> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > [snip] Thanks Dave _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |