summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAKASHI Takahiro <takahiro.akashi@linaro.org>2017-05-17 14:51:48 +0900
committerSimon Horman <horms@verge.net.au>2017-05-22 13:36:30 +0200
commitdefad947feff0d0135f79893e99ca94ec9a59e0f (patch)
tree59fbbd5dc811f070d7b93a7c9a230be365b89890
parent1591926df5a602ffcbf55e99aa8a96fbebd0bafe (diff)
arm64: kdump: set up other segments
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@linaro.org> Tested-by: David Woodhouse <dwmw@amazon.co.uk> Tested-by: Pratyush Anand <panand@redhat.com> Signed-off-by: Simon Horman <horms@verge.net.au>
-rw-r--r--kexec/arch/arm64/kexec-arm64.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/kexec/arch/arm64/kexec-arm64.c b/kexec/arch/arm64/kexec-arm64.c
index 6c21756..dfe16a6 100644
--- a/kexec/arch/arm64/kexec-arm64.c
+++ b/kexec/arch/arm64/kexec-arm64.c
@@ -376,7 +376,10 @@ int arm64_load_other_segments(struct kexec_info *info,
/* Put the other segments after the image. */
hole_min = image_base + arm64_mem.image_size;
- hole_max = ULONG_MAX;
+ if (info->kexec_flags & KEXEC_ON_CRASH)
+ hole_max = crash_reserved_mem.end;
+ else
+ hole_max = ULONG_MAX;
if (arm64_opts.initrd) {
initrd_buf = slurp_file(arm64_opts.initrd, &initrd_size);