[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160922015354.GA12860@dhcp-128-65.nay.redhat.com>
Date: Thu, 22 Sep 2016 09:53:54 +0800
From: "'Dave Young'" <dyoung@...hat.com>
To: 河合英宏 / KAWAI,HIDEHIRO
<hidehiro.kawai.ez@...achi.com>
Cc: "xlpang@...hat.com" <xlpang@...hat.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Daniel Walker <dwalker@...o99.com>,
"linux-mips@...ux-mips.org" <linux-mips@...ux-mips.org>,
Baoquan He <bhe@...hat.com>, Toshi Kani <toshi.kani@....com>,
Masami Hiramatsu <mhiramat@...nel.org>,
"x86@...nel.org" <x86@...nel.org>,
"kexec@...ts.infradead.org" <kexec@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Ralf Baechle <ralf@...ux-mips.org>,
HATAYAMA Daisuke <d.hatayama@...fujitsu.com>,
Ingo Molnar <mingo@...hat.com>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
"H. Peter Anvin" <hpa@...or.com>,
"xen-devel@...ts.xenproject.org" <xen-devel@...ts.xenproject.org>,
Thomas Gleixner <tglx@...utronix.de>,
Borislav Petkov <bp@...e.de>, Vivek Goyal <vgoyal@...hat.com>,
David Vrabel <david.vrabel@...rix.com>
Subject: Re: [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@...hat.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@...achi.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@sysi4-13.yrl.intra.hitachi.co.jp
> Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@...achi.com>
> Reported-by: Daniel Walker <dwalker@...o99.com>
> Cc: Dave Young <dyoung@...hat.com>
> Cc: Baoquan He <bhe@...hat.com>
> Cc: Vivek Goyal <vgoyal@...hat.com>
> Cc: Eric Biederman <ebiederm@...ssion.com>
> Cc: Masami Hiramatsu <mhiramat@...nel.org>
> Cc: Daniel Walker <dwalker@...o99.com>
> Cc: Xunlei Pang <xpang@...hat.com>
> Cc: Thomas Gleixner <tglx@...utronix.de>
> Cc: Ingo Molnar <mingo@...hat.com>
> Cc: "H. Peter Anvin" <hpa@...or.com>
> Cc: Borislav Petkov <bp@...e.de>
> Cc: David Vrabel <david.vrabel@...rix.com>
> Cc: Toshi Kani <toshi.kani@....com>
> Cc: Ralf Baechle <ralf@...ux-mips.org>
> Cc: David Daney <david.daney@...ium.com>
> Cc: Aaro Koskinen <aaro.koskinen@....fi>
> Cc: "Steven J. Hill" <steven.hill@...ium.com>
> Cc: Corey Minyard <cminyard@...sta.com>
> Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
>
[snip]
Thanks
Dave
Powered by blists - more mailing lists