[PATCH] arm64/kexec: Fix missing extra range for crashkres_low.
Levi Yun
ppbuk5246 at gmail.com
Wed Aug 3 08:12:17 PDT 2022
Like crashk_res, Calling crash_exclude_mem_range function with
crashk_low_res area would need extra crash_mem range too.
Add one extra crash_mem range when crashk_low_res is used.
Signed-off-by: Levi Yun <ppbuk5246 at gmail.com>
---
arch/arm64/kernel/machine_kexec_file.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm64/kernel/machine_kexec_file.c b/arch/arm64/kernel/machine_kexec_file.c
index 889951291cc0..378aee04e7d4 100644
--- a/arch/arm64/kernel/machine_kexec_file.c
+++ b/arch/arm64/kernel/machine_kexec_file.c
@@ -51,6 +51,9 @@ static int prepare_elf_headers(void **addr, unsigned long *sz)
for_each_mem_range(i, &start, &end)
nr_ranges++;
+ if (crashk_low_res.end)
+ nr_ranges++; /**< for exclusion of crashkernel=size,low region */
+
cmem = kmalloc(struct_size(cmem, ranges, nr_ranges), GFP_KERNEL);
if (!cmem)
return -ENOMEM;
--
2.35.1
More information about the linux-arm-kernel
mailing list