x86, arm64: Add ARCH_WANT_RESERVE_CRASH_KERNEL config
From: Chen Zhou <chenzhou10@huawei.com>
Link: https://lkml.org/lkml/2021/1/30/53
Link: c8013ee6cd
We make the functions reserve_crashkernel[_low]() as generic for
x86 and arm64. Since reserve_crashkernel[_low]() implementations
are quite similar on other architectures as well, we can have more
users of this later.
So have CONFIG_ARCH_WANT_RESERVE_CRASH_KERNEL in arch/Kconfig and
select this by X86 and ARM64.
Suggested-by: Mike Rapoport <rppt@kernel.org>
Signed-off-by: Chen Zhou <chenzhou10@huawei.com>
Acked-by: Xie XiuQi <xiexiuqi@huawei.com>
Signed-off-by: Zheng Zengkai <zhengzengkai@huawei.com>
Signed-off-by: Kairui Song <kasong@tencent.com>
Reviewed-by: Bin Lai <robinlai@tencent.com>
This commit is contained in:
parent
bd482067c3
commit
d001dccf2b
|
@ -24,6 +24,9 @@ config KEXEC_ELF
|
|||
config HAVE_IMA_KEXEC
|
||||
bool
|
||||
|
||||
config ARCH_WANT_RESERVE_CRASH_KERNEL
|
||||
bool
|
||||
|
||||
config HOTPLUG_SMT
|
||||
bool
|
||||
|
||||
|
|
|
@ -73,6 +73,7 @@ config ARM64
|
|||
select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT
|
||||
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_RESERVE_CRASH_KERNEL if KEXEC_CORE
|
||||
select ARCH_HAS_UBSAN_SANITIZE_ALL
|
||||
select ARM_AMBA
|
||||
select ARM_ARCH_TIMER
|
||||
|
|
|
@ -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 HAVE_DEBUG_STACKOVERFLOW
|
||||
|
@ -26,6 +27,7 @@ config X86_64
|
|||
select ARCH_HAS_GIGANTIC_PAGE
|
||||
select ARCH_SUPPORTS_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_STATE
|
||||
|
|
|
@ -318,9 +318,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
|
||||
|
@ -448,8 +446,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 */
|
||||
|
||||
Elf_Word *append_elf_note(Elf_Word *buf, char *name, unsigned int type,
|
||||
void *data, size_t data_len)
|
||||
|
|
Loading…
Reference in New Issue