APPLIED[M]: [MANTIC][PATCH] UBUNTU: [Config]: Turn on CONFIG_EFI_ZBOOT on ARM64

Andrea Righi andrea.righi at canonical.com
Sat Sep 9 14:59:43 UTC 2023


On Fri, Sep 08, 2023 at 07:21:28PM +0100, Dimitri John Ledkov wrote:
> 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>
> ---

Applied to mantic/linux.

Thanks!
-Andrea

>  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
> 
> 
> -- 
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team



More information about the kernel-team mailing list