[PATCH 0/5] arm64: zboot support
Pingfan Liu
piliu at redhat.com
Thu May 11 20:10:28 PDT 2023
I have rebased Jeremy's V2 (which is off-list) onto my new code.
The whole series since commit a8de94e:
LoongArch: kdump: Set up kernel image segment
is available in the Git repository
at https://github.com/pfliu/kexec-tools/tree/zboot
up to the head
I have compiled it on x86_64 and aarch64, and successfully booted the
zboot image on aarch64
@Simon, is there any instruction to do the cross-building for
kexec-tools, so I can verify the pattern substitution works well on
other arches. I think I can post it to the list with a cover-letter
after verification.
Thanks,
Pingfan
On Fri, May 5, 2023 at 10:54 AM Pingfan Liu <piliu at redhat.com> wrote:
>
> As more complicated capsule kernel format occurs like zboot, where the
> compressed kernel is stored as a payload. The straight forward
> decompression can not meet the demand.
>
> As the first step, on aarch64, reading in the kernel file in a probe
> method and decide how to unfold the content by the method itself.
>
> The new designed probe interface returns two factors:
> 1. the parsed kernel_buf should be returned so that it can be used by
> the image load method later.
> 2. the final fd passed to sys_kexec_file_load, since aarch64 kernel can
> only work with Image format, the outer payload should be stripped and a
> temporary file of Image should be created.
>
>
> To: kexec at lists.infradead.org
> Cc: horms at verge.net.au
> Cc: ardb at kernel.org
> Cc: jeremy.linton at arm.com
>
> Pingfan Liu (5):
> kexec: Adding missing free for kernel_buf
> arm64/zImage: Remove unnecessary allocation for
> kernel_uncompressed_buf
> arm64: change the prototype of image probe function
> arm64: Scatter the reading of kernel file into each probe
> arm64: add support for zboot image
>
> kexec/arch/arm/kexec-arm.h | 4 +-
> kexec/arch/arm/kexec-uImage-arm.c | 2 +-
> kexec/arch/arm64/Makefile | 3 +-
> kexec/arch/arm64/kexec-arm64.c | 1 +
> kexec/arch/arm64/kexec-arm64.h | 13 +-
> kexec/arch/arm64/kexec-elf-arm64.c | 7 +-
> kexec/arch/arm64/kexec-image-arm64.c | 6 +-
> kexec/arch/arm64/kexec-uImage-arm64.c | 17 +-
> kexec/arch/arm64/kexec-zImage-arm64.c | 23 +--
> kexec/arch/arm64/kexec-zboot-arm64.c | 261 ++++++++++++++++++++++++++
> kexec/arch/arm64/zboot.h | 26 +++
> kexec/kexec.c | 48 +++--
> kexec/kexec.h | 8 +
> 13 files changed, 377 insertions(+), 42 deletions(-)
> create mode 100644 kexec/arch/arm64/kexec-zboot-arm64.c
> create mode 100644 kexec/arch/arm64/zboot.h
>
> --
> 2.31.1
>
More information about the kexec
mailing list