Commit c19d050f authored by Bhupesh Sharma's avatar Bhupesh Sharma Committed by Will Deacon

arm64/kexec: Use consistent convention of initializing 'kxec_buf.mem' with KEXEC_BUF_MEM_UNKNOWN

With commit b6664ba4 ("s390, kexec_file: drop arch_kexec_mem_walk()"),
we introduced the KEXEC_BUF_MEM_UNKNOWN macro. If kexec_buf.mem is set
to this value, kexec_locate_mem_hole() will try to allocate free memory.

While other arch(s) like s390 and x86_64 already use this macro to
initialize kexec_buf.mem with, arm64 uses an equivalent value of 0.
Replace it with KEXEC_BUF_MEM_UNKNOWN, to keep the convention of
initializing 'kxec_buf.mem' consistent across various archs.

Cc: takahiro.akashi@linaro.org
Cc: james.morse@arm.com
Reviewed-by: default avatarMatthias Brugger <mbrugger@suse.com>
Signed-off-by: default avatarBhupesh Sharma <bhsharma@redhat.com>
Signed-off-by: default avatarWill Deacon <will@kernel.org>
parent b907b80d
...@@ -84,7 +84,7 @@ static void *image_load(struct kimage *image, ...@@ -84,7 +84,7 @@ static void *image_load(struct kimage *image,
kbuf.buffer = kernel; kbuf.buffer = kernel;
kbuf.bufsz = kernel_len; kbuf.bufsz = kernel_len;
kbuf.mem = 0; kbuf.mem = KEXEC_BUF_MEM_UNKNOWN;
kbuf.memsz = le64_to_cpu(h->image_size); kbuf.memsz = le64_to_cpu(h->image_size);
text_offset = le64_to_cpu(h->text_offset); text_offset = le64_to_cpu(h->text_offset);
kbuf.buf_align = MIN_KIMG_ALIGN; kbuf.buf_align = MIN_KIMG_ALIGN;
......
...@@ -177,7 +177,7 @@ int load_other_segments(struct kimage *image, ...@@ -177,7 +177,7 @@ int load_other_segments(struct kimage *image,
if (initrd) { if (initrd) {
kbuf.buffer = initrd; kbuf.buffer = initrd;
kbuf.bufsz = initrd_len; kbuf.bufsz = initrd_len;
kbuf.mem = 0; kbuf.mem = KEXEC_BUF_MEM_UNKNOWN;
kbuf.memsz = initrd_len; kbuf.memsz = initrd_len;
kbuf.buf_align = 0; kbuf.buf_align = 0;
/* within 1GB-aligned window of up to 32GB in size */ /* within 1GB-aligned window of up to 32GB in size */
...@@ -204,7 +204,7 @@ int load_other_segments(struct kimage *image, ...@@ -204,7 +204,7 @@ int load_other_segments(struct kimage *image,
dtb_len = fdt_totalsize(dtb); dtb_len = fdt_totalsize(dtb);
kbuf.buffer = dtb; kbuf.buffer = dtb;
kbuf.bufsz = dtb_len; kbuf.bufsz = dtb_len;
kbuf.mem = 0; kbuf.mem = KEXEC_BUF_MEM_UNKNOWN;
kbuf.memsz = dtb_len; kbuf.memsz = dtb_len;
/* not across 2MB boundary */ /* not across 2MB boundary */
kbuf.buf_align = SZ_2M; kbuf.buf_align = SZ_2M;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment