Re: [PATCH v16 08/11] x86, arm64: Add ARCH_WANT_RESERVE_CRASH_KERNEL config
From: Catalin Marinas <catalin.marinas@arm.com>
Date: 2021-12-08 17:09:35
Also in:
kexec, linux-arm-kernel, linux-doc, lkml
On Tue, Nov 23, 2021 at 08:46:43PM +0800, Zhen Lei wrote:
quoted hunk ↗ jump to hunk
diff --git a/arch/Kconfig b/arch/Kconfig index 26b8ed11639da46..19256aa924c3b2c 100644 --- a/arch/Kconfig +++ b/arch/Kconfig@@ -24,6 +24,9 @@ config KEXEC_ELF config HAVE_IMA_KEXEC bool +config ARCH_WANT_RESERVE_CRASH_KERNEL + bool + config SET_FS booldiff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index c4207cf9bb17ffb..4b99efa36da3793 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig@@ -95,6 +95,7 @@ config ARM64 select ARCH_WANT_FRAME_POINTERS select ARCH_WANT_HUGE_PMD_SHARE if ARM64_4K_PAGES || (ARM64_16K_PAGES && !ARM64_VA_BITS_36) select ARCH_WANT_LD_ORPHAN_WARN + select ARCH_WANT_RESERVE_CRASH_KERNEL if KEXEC_CORE select ARCH_WANTS_NO_INSTR select ARCH_HAS_UBSAN_SANITIZE_ALL select ARM_AMBAdiff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 7399327d1eff79d..528034b4276ecf8 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig@@ -12,6 +12,7 @@ config X86_32 depends on !64BIT # Options that are inherently 32-bit kernel only: select ARCH_WANT_IPC_PARSE_VERSION + select ARCH_WANT_RESERVE_CRASH_KERNEL if KEXEC_CORE select CLKSRC_I8253 select CLONE_BACKWARDS select GENERIC_VDSO_32@@ -28,6 +29,7 @@ config X86_64 select ARCH_HAS_GIGANTIC_PAGE select ARCH_SUPPORTS_INT128 if CC_HAS_INT128 select ARCH_USE_CMPXCHG_LOCKREF + select ARCH_WANT_RESERVE_CRASH_KERNEL if KEXEC_CORE select HAVE_ARCH_SOFT_DIRTY select MODULES_USE_ELF_RELA select NEED_DMA_MAP_STATEdiff --git a/kernel/crash_core.c b/kernel/crash_core.c index 4dc2643fcbccf99..b23cfc0ca8905fd 100644 --- a/kernel/crash_core.c +++ b/kernel/crash_core.c@@ -321,9 +321,7 @@ int __init parse_crashkernel_low(char *cmdline, * --------- Crashkernel reservation ------------------------------ */ -#ifdef CONFIG_KEXEC_CORE - -#if defined(CONFIG_X86) || defined(CONFIG_ARM64) +#ifdef CONFIG_ARCH_WANT_RESERVE_CRASH_KERNEL static int __init reserve_crashkernel_low(void) { #ifdef CONFIG_64BIT@@ -451,8 +449,7 @@ void __init reserve_crashkernel(void) crashk_res.start = crash_base; crashk_res.end = crash_base + crash_size - 1; } -#endif -#endif /* CONFIG_KEXEC_CORE */ +#endif /* CONFIG_ARCH_WANT_RESERVE_CRASH_KERNEL */
Nitpick mostly but it may simplify the patches if the x86, arch/Kconfig and crash_core.c changes here could be moved to patch 5. The remaining select for arm64 should be moved to patch 7 and drop the #if change in that patch. This way we can keep the x86 patches on a separate branch. Thanks. -- Catalin