Hi,
On 07/09/2020 18:45, Trammell Hudson wrote:
> This patch series adds support for bundling the xen.efi hypervisor,
> the xen.cfg configuration file, the Linux kernel and initrd, as well
> as the XSM, and architectural specific files into a single "unified"
> EFI executable. This allows an administrator to update the components
> independently without requiring rebuilding xen, as well as to replace
> the components in an existing image.
>
> The resulting EFI executable can be invoked directly from the UEFI Boot
> Manager, removing the need to use a separate loader like grub as well
> as removing dependencies on local filesystem access. And since it is
> a single file, it can be signed and validated by UEFI Secure Boot without
> requring the shim protocol.
>
> It is inspired by systemd-boot's unified kernel technique and borrows the
> function to locate PE sections from systemd's LGPL'ed code. During EFI
> boot, Xen looks at its own loaded image to locate the PE sections for
> the Xen configuration (`.config`), dom0 kernel (`.kernel`), dom0 initrd
> (`.initrd`), and XSM config (`.xsm`), which are included after building
> xen.efi using objcopy to add named sections for each input file.
>
> Trammell hudson (4):
> x86/xen.lds.S: Work around binutils build id alignment bug
> efi/boot.c: add file.need_to_free and split display_file_info()
> efi: Enable booting unified hypervisor/kernel/initrd images
> efi: Do not use command line if secure boot is enabled.
Please make sure to have the patch sent with "In-reply-to" pointing to
the cover letter.
git format-patch should do it for you.
Cheers,
>
> .gitignore | 1 +
> docs/misc/efi.pandoc | 47 ++++++++++++
> xen/arch/arm/efi/efi-boot.h | 22 ++++--
> xen/arch/x86/efi/Makefile | 2 +-
> xen/arch/x86/efi/efi-boot.h | 7 +-
> xen/arch/x86/xen.lds.S | 1 +
> xen/common/efi/boot.c | 139 ++++++++++++++++++++++++++---------
> xen/common/efi/efi.h | 3 +
> xen/common/efi/pe.c | 141 ++++++++++++++++++++++++++++++++++++
> 9 files changed, 317 insertions(+), 46 deletions(-)
> create mode 100644 xen/common/efi/pe.c
>
> --
> 2.25.1
>
>
>
>
>
>
--
Julien Grall