[PATCH v2 4/7] arm64: kdump: set up other segments
AKASHI Takahiro
takahiro.akashi at linaro.org
Mon Aug 8 19:00:29 PDT 2016
We make sure that all the other segments, initrd and device-tree blob,
also be loaded into the reserved memory of crash dump kernel.
Signed-off-by: AKASHI Takahiro <takahiro.akashi at linaro.org>
---
kexec/arch/arm64/kexec-arm64.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/kexec/arch/arm64/kexec-arm64.c b/kexec/arch/arm64/kexec-arm64.c
index 940cddb..b9da85d 100644
--- a/kexec/arch/arm64/kexec-arm64.c
+++ b/kexec/arch/arm64/kexec-arm64.c
@@ -342,9 +342,15 @@ int arm64_load_other_segments(struct kexec_info *info,
/* Put the other segments after the image. */
- image_base = arm64_mem.phys_offset + arm64_mem.text_offset;
- hole_min = image_base + arm64_mem.image_size;
- hole_max = ULONG_MAX;
+ if (info->kexec_flags & KEXEC_ON_CRASH) {
+ image_base = crash_reserved_mem.start + arm64_mem.text_offset;
+ hole_min = image_base + arm64_mem.image_size;
+ hole_max = crash_reserved_mem.end;
+ } else {
+ image_base = arm64_mem.phys_offset + arm64_mem.text_offset;
+ hole_min = image_base + arm64_mem.image_size;
+ hole_max = ULONG_MAX;
+ }
if (arm64_opts.initrd) {
initrd_buf = slurp_file(arm64_opts.initrd, &initrd_size);
--
2.9.0
More information about the kexec
mailing list