From: Borislav Petkov <bp@alien8.de>
To: Ingo Molnar <mingo@kernel.org>
Cc: Zeng Heng <zengheng4@huawei.com>,
michael.roth@amd.com, hpa@zytor.com, tglx@linutronix.de,
sathyanarayanan.kuppuswamy@linux.intel.com,
kirill.shutemov@linux.intel.com, jroedel@suse.de,
keescook@chromium.org, mingo@redhat.com,
dave.hansen@linux.intel.com, brijesh.singh@amd.com,
linux-kernel@vger.kernel.org, x86@kernel.org,
liwei391@huawei.com
Subject: Re: [PATCH -v2] x86/boot/compressed: Register dummy NMI handler in EFI boot loader, to avoid kdump crashes
Date: Tue, 10 Jan 2023 13:11:29 +0100 [thread overview]
Message-ID: <Y71V8SRLxZ/Uqkfs@zn.tnic> (raw)
In-Reply-To: <Y71TglxSLJKO17SY@gmail.com>
On Tue, Jan 10, 2023 at 01:01:06PM +0100, Ingo Molnar wrote:
> From: Zeng Heng <zengheng4@huawei.com>
> Date: Tue, 10 Jan 2023 18:27:45 +0800
> Subject: [PATCH] x86/boot/compressed: Register dummy NMI handler in EFI boot loader, to avoid kdump crashes
>
> If kdump is enabled, when using mce_inject to inject errors, EFI
Why does "EFI" matter here? Any boot loader would do...
> boot loader would decompress & load second kernel for saving the
s/&/and/
> vmcore file.
>
> For normal errors that is fine.
Useless sentence.
> However, in the MCE case, the panic
> CPU that firstly enters into mce_panic() is running within NMI
> interrupt context,
"#MC context" it is non-maskable but that's not "NMI interrupt context"
> and the processor blocks delivery of subsequent
> NMIs until the next execution of the IRET instruction.
>
> When the panic CPU takes long time in the panic processing route,
I'm still unclear on the order of events here. It sounds like
1. MCE injected
2. panic
3. kdump gets loaded
If that is the case, then I presume the flow is:
mce_panic -> panic -> __crash_kexec()
Yes?
If so, then we should make sure we have *exited* #MC context before calling
panic() and not have to add hacks like this one of adding an empty NMI handler.
But I'm only speculating as it is hard to make sense of all this text.
Thx.
--
Regards/Gruss,
Boris.
https://people.kernel.org/tglx/notes-about-netiquette
next prev parent reply other threads:[~2023-01-10 12:14 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-10 10:27 [PATCH] x86/boot/compressed: Register NMI handler in EFI boot loader Zeng Heng
2023-01-10 10:59 ` Ingo Molnar
2023-01-10 12:01 ` [PATCH -v2] x86/boot/compressed: Register dummy NMI handler in EFI boot loader, to avoid kdump crashes Ingo Molnar
2023-01-10 12:11 ` Borislav Petkov [this message]
2023-01-10 12:17 ` Borislav Petkov
2023-01-10 12:34 ` Ingo Molnar
2023-01-10 12:46 ` Borislav Petkov
2023-01-10 12:50 ` Zeng Heng
2023-01-10 12:32 ` Zeng Heng
2023-01-10 12:57 ` Borislav Petkov
2023-01-10 13:42 ` Zeng Heng
2023-01-10 16:09 ` Borislav Petkov
2023-01-12 2:07 ` Zeng Heng
2023-01-10 14:53 ` Borislav Petkov
2023-01-11 3:46 ` Zeng Heng
2023-01-10 14:06 ` Zeng Heng
2023-01-10 11:41 ` [tip: x86/boot] " tip-bot2 for Zeng Heng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y71V8SRLxZ/Uqkfs@zn.tnic \
--to=bp@alien8.de \
--cc=brijesh.singh@amd.com \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=jroedel@suse.de \
--cc=keescook@chromium.org \
--cc=kirill.shutemov@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=liwei391@huawei.com \
--cc=michael.roth@amd.com \
--cc=mingo@kernel.org \
--cc=mingo@redhat.com \
--cc=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
--cc=zengheng4@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox