[PATCHv2 0/3] kexec: Add support for UKI format kernel
Philipp Rudo
prudo at redhat.com
Mon Oct 21 09:25:06 PDT 2024
Hi Pingfan,
Hi Simon,
I know I'm a little bit too late, but I finally had time to take a
look. All in all the series looks fine to me. But I have two questions.
1) Is there a reason why you don't enable the UKI for x86 as well? The
way I see it patch 1 and 2 cover x86 as well. So you only should need a
patch similar to patch 3. Or am I missing something?
2) Would it make sense to "reuse" the mechanism you introduced for the
initrd for the command line as well. I.e. if it's a UKI with a .cmdline
section and the user didn't provide any of the --command-line,
--reuse-cmdline, etc. then use the command line from the UKI.
Thanks
Philipp
On Wed, 16 Oct 2024 19:34:12 +0800
Pingfan Liu <piliu at redhat.com> wrote:
> As a UEFI PE format kernel image becomes more popular, there is a need
> for kexec to reboot those kinds of images.
>
> After the introduction of the UKI (another PE), at present, there are
> three competitive methods to support that goal, but all of them have
> pros and cons.[1] It seems that none of them can be accepted in the near
> future. Therefore, we are resorting to the user space kexec-tools to
> parse the UKI format for the time being.
>
> By parsing the UKI, systemd-stub is stepped around and PCM will not affect
> the boot up of the second system.
>
> [1]: https://github.com/rhkdump/kexec_uefi/blob/main/overview.md#the-competitive-solutions
>
> Cc: Simon Horman <horms at kernel.org>
> Cc: Eric Biederman <ebiederm at xmission.com>
> Cc: Baoquan He <bhe at redhat.com>
> Cc: Dave Young <dyoung at redhat.com>
> Cc: Ard Biesheuvel <ardb at kernel.org>
> Cc: Jan Hendrik Farr <kernel at jfarr.cc>
> Cc: Philipp Rudo <prudo at redhat.com>
> Cc: Lennart Poettering <mzxreary at 0pointer.de>
> Cc: kexec at lists.infradead.org
> ---
> v1 -> v2:
> Add include/pe.h in makefile to fix 'make dist'
> Rename default_initrd_fd to implicit_initrd_fd
>
>
> Pingfan Liu (3):
> kexec: Introduce implicit_initrd_fd to pass internal initrd
> information
> kexec: Introduce UKI image parser
> arm64: Support UKI image format
>
> include/Makefile | 1 +
> include/pe.h | 104 +++++++++++++++++++++++
> kexec/Makefile | 1 +
> kexec/arch/arm64/kexec-arm64.c | 1 +
> kexec/arch/arm64/kexec-image-arm64.c | 3 +-
> kexec/arch/x86_64/kexec-bzImage64.c | 3 +-
> kexec/kexec-uki.c | 122 +++++++++++++++++++++++++++
> kexec/kexec.c | 2 +
> kexec/kexec.h | 5 ++
> 9 files changed, 240 insertions(+), 2 deletions(-)
> create mode 100644 include/pe.h
> create mode 100644 kexec/kexec-uki.c
>
More information about the kexec
mailing list