Re: [PATCH] x86: define arch_crash_save_vmcoreinfo() if CONFIG_CRASH_CORE=y

From: Borislav Petkov
Date: Wed Dec 18 2019 - 05:41:27 EST


On Mon, Dec 02, 2019 at 10:02:29AM -0800, Omar Sandoval wrote:
> From: Omar Sandoval <osandov@xxxxxx>
>
> kernel/crash_core.c calls arch_crash_save_vmcoreinfo() to get
> arch-specific bits for vmcoreinfo. If it is not defined, then it has a
> no-op fallback. kernel/crash_core.c is gated behind CONFIG_CRASH_CORE.
> However, x86 defines arch_crash_save_vmcoreinfo() in
> arch/x86/kernel/machine_kexec_*.c, which is gated behind
> CONFIG_KEXEC_CORE. So, a kernel with CONFIG_CRASH_CORE=y and
> CONFIG_KEXEC_CORE=n

How does that even happen?

Symbol: KEXEC_CORE [=y]
Type : bool
Defined at arch/Kconfig:17
Selects: CRASH_CORE [=y]
Selected by [y]:
- KEXEC [=y]
- KEXEC_FILE [=y] && X86_64 [=y] && CRYPTO [=y]=y && CRYPTO_SHA256 [=y]=y

In order to do crash dumps, you need to select KEXEC, which selects
KEXEC_CORE, which selects CRASH_CORE...

Or are you talking about the PROC_KCORE use angle where it selects
CRASH_CORE and the crash_save_vmcoreinfo_init() initcall is then
supposed to save arch-specific crash info?

Thx.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette