[MANTIC][PATCH] UBUNTU: [Config]: Turn on CONFIG_EFI_ZBOOT on ARM64
Dimitri John Ledkov
dimitri.ledkov at canonical.com
Fri Sep 8 18:21:28 UTC 2023
On UEFI platforms, since v6.2 Linux, with new enough grub2 (2.12~rc1),
EFI_ZBOOT can be used. This enables UEFI boot to use Linux EFI stub
decompressors to supports Zstd compressed kernel image, like on other
architectures.
Other boot-types should continue to use compressed images for now
(i.e. u-boot, piboot, abootimg) kernels. See comment in arm64.mk.
BugLink: https://bugs.launchpad.net/bugs/2002226
Signed-off-by: Dimitri John Ledkov <dimitri.ledkov at canonical.com>
---
debian.master/config/annotations | 28 +++++++++++++++-------------
debian.master/rules.d/arm64.mk | 5 +++--
2 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/debian.master/config/annotations b/debian.master/config/annotations
index 60be644b2e..6164cfe79c 100644
--- a/debian.master/config/annotations
+++ b/debian.master/config/annotations
@@ -174,6 +174,9 @@ CONFIG_EFIVAR_FS note<'needed for variable EFI up
CONFIG_EFI_HANDOVER_PROTOCOL policy<{'amd64': 'y'}>
CONFIG_EFI_HANDOVER_PROTOCOL note<'{GRUB may include some downstream patches that may rely on the handover protocol, so make sure this is enabled}'>
+CONFIG_EFI_ZBOOT policy<{'arm64': 'y', 'riscv64': 'n'}>
+CONFIG_EFI_ZBOOT note<'LP: #2002226'>
+
CONFIG_EVM policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
CONFIG_EVM note<'LP: #1643652'>
@@ -321,7 +324,7 @@ CONFIG_IP_PNP note<'LP: #1259861'>
CONFIG_ISM policy<{'s390x': 'm'}>
CONFIG_ISM note<'LP: #1789934'>
-CONFIG_KERNEL_ZSTD policy<{'amd64': 'y', 'arm64': '-', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_KERNEL_ZSTD policy<{'amd64': 'y', 'arm64': 'y', 'riscv64': '-', 's390x': 'y'}>
CONFIG_KERNEL_ZSTD note<'LP: #1931725'>
CONFIG_KEXEC_BZIMAGE_VERIFY_SIG policy<{'amd64': 'y'}>
@@ -4522,7 +4525,6 @@ CONFIG_EFI_STUB policy<{'amd64': 'y', 'arm64': '
CONFIG_EFI_TEST policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'riscv64': 'm'}>
CONFIG_EFI_VARS_PSTORE policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'riscv64': 'm'}>
CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'riscv64': 'n'}>
-CONFIG_EFI_ZBOOT policy<{'arm64': 'n', 'riscv64': 'n'}>
CONFIG_EFS_FS policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 'riscv64': 'm', 's390x': 'n'}>
CONFIG_EINT_MTK policy<{'arm64': 'y', 'armhf': 'y'}>
CONFIG_EISA policy<{'amd64': 'y'}>
@@ -5424,13 +5426,13 @@ CONFIG_HAVE_IRQ_TIME_ACCOUNTING policy<{'amd64': 'y', 'arm64': '
CONFIG_HAVE_JUMP_LABEL_HACK policy<{'amd64': 'y'}>
CONFIG_HAVE_KCSAN_COMPILER policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
CONFIG_HAVE_KERNEL_BZIP2 policy<{'amd64': 'y', 's390x': 'y'}>
-CONFIG_HAVE_KERNEL_GZIP policy<{'amd64': 'y', 'arm64': '-', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': '-', 's390x': 'y'}>
-CONFIG_HAVE_KERNEL_LZ4 policy<{'amd64': 'y', 'arm64': '-', 'armhf': 'y', 'riscv64': '-', 's390x': 'y'}>
-CONFIG_HAVE_KERNEL_LZMA policy<{'amd64': 'y', 'arm64': '-', 'armhf': 'y', 'riscv64': '-', 's390x': 'y'}>
-CONFIG_HAVE_KERNEL_LZO policy<{'amd64': 'y', 'arm64': '-', 'armhf': 'y', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_HAVE_KERNEL_GZIP policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_HAVE_KERNEL_LZ4 policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_HAVE_KERNEL_LZMA policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_HAVE_KERNEL_LZO policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'riscv64': '-', 's390x': 'y'}>
CONFIG_HAVE_KERNEL_UNCOMPRESSED policy<{'s390x': 'y'}>
-CONFIG_HAVE_KERNEL_XZ policy<{'amd64': 'y', 'arm64': '-', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': '-', 's390x': 'y'}>
-CONFIG_HAVE_KERNEL_ZSTD policy<{'amd64': 'y', 'arm64': '-', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_HAVE_KERNEL_XZ policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': '-', 's390x': 'y'}>
+CONFIG_HAVE_KERNEL_ZSTD policy<{'amd64': 'y', 'arm64': 'y', 'riscv64': '-', 's390x': 'y'}>
CONFIG_HAVE_KPROBES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
CONFIG_HAVE_KPROBES_ON_FTRACE policy<{'amd64': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
CONFIG_HAVE_KRETPROBES policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
@@ -6859,15 +6861,15 @@ CONFIG_KDB_KEYBOARD policy<{'amd64': 'y', 'arm64': '
CONFIG_KEEMBAY_WATCHDOG policy<{'arm64': 'm'}>
CONFIG_KEMPLD_WDT policy<{'amd64': 'm', 'arm64': 'm', 'armhf': 'm', 'ppc64el': 'm', 'riscv64': 'm'}>
CONFIG_KERNEL_BZIP2 policy<{'amd64': 'n', 's390x': 'n'}>
-CONFIG_KERNEL_GZIP policy<{'amd64': 'n', 'arm64': '-', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': '-', 's390x': 'n'}>
-CONFIG_KERNEL_LZ4 policy<{'amd64': 'n', 'arm64': '-', 'armhf': 'n', 'riscv64': '-', 's390x': 'n'}>
-CONFIG_KERNEL_LZMA policy<{'amd64': 'n', 'arm64': '-', 'armhf': 'n', 'riscv64': '-', 's390x': 'n'}>
-CONFIG_KERNEL_LZO policy<{'amd64': 'n', 'arm64': '-', 'armhf': 'n', 'riscv64': '-', 's390x': 'n'}>
+CONFIG_KERNEL_GZIP policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': '-', 's390x': 'n'}>
+CONFIG_KERNEL_LZ4 policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'riscv64': '-', 's390x': 'n'}>
+CONFIG_KERNEL_LZMA policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'riscv64': '-', 's390x': 'n'}>
+CONFIG_KERNEL_LZO policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'riscv64': '-', 's390x': 'n'}>
CONFIG_KERNEL_MODE_NEON policy<{'arm64': 'y', 'armhf': 'y'}>
CONFIG_KERNEL_NOBP policy<{'s390x': 'n'}>
CONFIG_KERNEL_START policy<{'ppc64el': '0xc000000000000000'}>
CONFIG_KERNEL_UNCOMPRESSED policy<{'s390x': 'n'}>
-CONFIG_KERNEL_XZ policy<{'amd64': 'n', 'arm64': '-', 'armhf': 'n', 'ppc64el': 'n', 'riscv64': '-', 's390x': 'n'}>
+CONFIG_KERNEL_XZ policy<{'amd64': 'n', 'arm64': 'n', 'armhf': 'n', 'ppc64el': 'n', 'riscv64': '-', 's390x': 'n'}>
CONFIG_KERNFS policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
CONFIG_KEXEC policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
CONFIG_KEXEC_CORE policy<{'amd64': 'y', 'arm64': 'y', 'armhf': 'y', 'ppc64el': 'y', 'riscv64': 'y', 's390x': 'y'}>
diff --git a/debian.master/rules.d/arm64.mk b/debian.master/rules.d/arm64.mk
index 3306ccfce1..f47ba46252 100644
--- a/debian.master/rules.d/arm64.mk
+++ b/debian.master/rules.d/arm64.mk
@@ -2,8 +2,9 @@ human_arch = ARMv8
build_arch = arm64
defconfig = defconfig
flavours = generic generic-64k
-build_image = Image.gz
-kernel_file = arch/$(build_arch)/boot/Image.gz
+# Non-efi flavours likely want the old Image.gz here
+build_image = vmlinuz.efi
+kernel_file = arch/$(build_arch)/boot/vmlinuz.efi
install_file = vmlinuz
no_dumpfile = true
uefi_signed = true
--
2.34.1
More information about the kernel-team
mailing list