@@ -258,11 +258,13 @@ static void __init arch_reserve_vmcore(void)
static void __init arch_parse_crashkernel(void)
{
-#ifdef CONFIG_KEXEC
int ret;
unsigned long long total_mem;
unsigned long long crash_base, crash_size;
+ if (!IS_ENABLED(CONFIG_CRASH_RESERVE))
+ return;
+
total_mem = memblock_phys_mem_size();
ret = parse_crashkernel(boot_command_line, total_mem,
&crash_size, &crash_base,
@@ -283,7 +285,6 @@ static void __init arch_parse_crashkernel(void)
crashk_res.start = crash_base;
crashk_res.end = crash_base + crash_size - 1;
-#endif
}
static void __init fdt_setup(void)
@@ -468,7 +469,7 @@ static void __init resource_init(void)
request_resource(res, &bss_resource);
}
-#ifdef CONFIG_KEXEC
+#ifdef CONFIG_CRASH_RESERVE
if (crashk_res.start < crashk_res.end) {
insert_resource(&iomem_resource, &crashk_res);
pr_info("Reserving %ldMB of memory at %ldMB for crashkernel\n",
Now crash codes under kernel/ folder has been split out from kexec code, crash dumping can be separated from kexec reboot in config items on loongarch with some adjustments. Here wrap up crash dumping codes with CONFIG_CRASH_DUMP ifdeffery, and use IS_ENABLED(CONFIG_CRASH_RESERVE) check to decide if compiling in the crashkernel reservation code. Signed-off-by: Baoquan He <bhe@redhat.com> --- arch/loongarch/kernel/setup.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)