[systemd-devel] [PATCH 0/1] x86/kexec: UKI support
Jarkko Sakkinen
jarkko at kernel.org
Tue Sep 12 03:37:47 PDT 2023
On Tue Sep 12, 2023 at 2:20 AM EEST, Neal Gompa wrote: > On Mon, Sep 11, 2023 at 7:15 PM Jarkko Sakkinen <jarkko at kernel.org> wrote:
> > On Sat Sep 9, 2023 at 7:18 PM EEST, Jan Hendrik Farr wrote:
> > > Hello,
> > >
> > > this patch implements UKI support for kexec_file_load. It will require support
> > > in the kexec-tools userspace utility. For testing purposes the following can be used:
> > > https://github.com/Cydox/kexec-test/
> > >
> > > There has been discussion on this topic in an issue on GitHub that is linked below
> > > for reference.
> > >
> > >
> > > Some links:
> > > - Related discussion: https://github.com/systemd/systemd/issues/28538
> > > - Documentation of UKIs: https://uapi-group.org/specifications/specs/unified_kernel_image/
> > >
> > > Jan Hendrik Farr (1):
> > > x86/kexec: UKI support
> > >
> > > arch/x86/include/asm/kexec-uki.h | 7 ++
> > > arch/x86/include/asm/parse_pefile.h | 32 +++++++
> > > arch/x86/kernel/Makefile | 2 +
> > > arch/x86/kernel/kexec-uki.c | 113 +++++++++++++++++++++++++
> > > arch/x86/kernel/machine_kexec_64.c | 2 +
> > > arch/x86/kernel/parse_pefile.c | 110 ++++++++++++++++++++++++
> > > crypto/asymmetric_keys/mscode_parser.c | 2 +-
> > > crypto/asymmetric_keys/verify_pefile.c | 110 +++---------------------
> > > crypto/asymmetric_keys/verify_pefile.h | 16 ----
> > > 9 files changed, 278 insertions(+), 116 deletions(-)
> > > create mode 100644 arch/x86/include/asm/kexec-uki.h
> > > create mode 100644 arch/x86/include/asm/parse_pefile.h
> > > create mode 100644 arch/x86/kernel/kexec-uki.c
> > > create mode 100644 arch/x86/kernel/parse_pefile.c
> > >
> > > --
> > > 2.40.1
> >
> > What the heck is UKI?
>
> Unified Kernel Images. More details available here:
> https://uapi-group.org/specifications/specs/unified_kernel_image/
>
> It's a way of creating initramfs-style images as fully generic,
> reproducible images that can be built server-side.
You can build today a kernel with these compiled in:
1. EFI stub
2. initeramfs
3. cmdline
Why another way (and label 'UKI') for a pre-existing feature?
BR, Jarkko
More information about the kexec
mailing list