diff mbox series

[v2] arm64: Allow packing uncompressed images into distro packages

Message ID 20240910-uncompressed-distro-packages-v2-1-51538434787f@quicinc.com
State New
Headers show
Series [v2] arm64: Allow packing uncompressed images into distro packages | expand

Commit Message

Bjorn Andersson Sept. 11, 2024, 2:53 a.m. UTC
From: Bjorn Andersson <quic_bjorande@quicinc.com>

The distro packages (deb-pkg, pacman-pkg, rpm-pkg) are generated using
the compressed kernel image, which means that the kernel once installed
can not be booted with systemd-boot.

This differs from the packages generated by the distros themselves,
which uses the uncompressed image.

Use the newly introduced CONFIG_COMPRESSED_INSTALL option to allow
selection of which version of the kernel image should be packaged into
the distro packages.

Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
---
Changes in v2:
- Restore the install-specific handling to retain the behavior of
  installing the uncompressed "Image" under CONFIG_EFI_ZBOOT=y &&
  CONFIG_COMPRESSED_INSTALL=n.
- Link to v1: https://lore.kernel.org/r/20240819-uncompressed-distro-packages-v1-1-c8accc8bc9ea@quicinc.com
---
 arch/arm64/Makefile | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)


---
base-commit: 469f1bad3c1c6e268059f78c0eec7e9552b3894c
change-id: 20240819-uncompressed-distro-packages-8da6959ed698

Best regards,

Comments

Konrad Dybcio Oct. 8, 2024, 12:14 p.m. UTC | #1
On 11.09.2024 4:53 AM, Bjorn Andersson wrote:
> From: Bjorn Andersson <quic_bjorande@quicinc.com>
> 
> The distro packages (deb-pkg, pacman-pkg, rpm-pkg) are generated using
> the compressed kernel image, which means that the kernel once installed
> can not be booted with systemd-boot.
> 
> This differs from the packages generated by the distros themselves,
> which uses the uncompressed image.
> 
> Use the newly introduced CONFIG_COMPRESSED_INSTALL option to allow
> selection of which version of the kernel image should be packaged into
> the distro packages.
> 
> Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad
Marc Zyngier Oct. 16, 2024, 4:44 p.m. UTC | #2
Hi Bjorn,

On Wed, 11 Sep 2024 03:53:16 +0100,
Bjorn Andersson <andersson@kernel.org> wrote:
> 
> From: Bjorn Andersson <quic_bjorande@quicinc.com>
> 
> The distro packages (deb-pkg, pacman-pkg, rpm-pkg) are generated using
> the compressed kernel image, which means that the kernel once installed
> can not be booted with systemd-boot.

Are you sure? I just installed a guest with systemd-boot
(252.30-1~deb12u, as shipped in Debian), and it is perfectly able to
boot a compressed kernel.

> 
> This differs from the packages generated by the distros themselves,
> which uses the uncompressed image.
> 
> Use the newly introduced CONFIG_COMPRESSED_INSTALL option to allow
> selection of which version of the kernel image should be packaged into
> the distro packages.

I'm normally building kernels as Debian packages, without any of
CONFIG_EFI_ZBOOT or CONFIG_COMPRESSED_INSTALL.

As a result, the installed kernel image of a Debian package shoots up
from ~8M to an impressive 25M, since we're not picking the compressed
image anymore. Storage may be cheap, but still.

I really don't think CONFIG_COMPRESSED_INSTALL should change the
existing behaviours, and a new option would be better suited to enable
this new setup if deemed necessary.

Thanks,

	M.
diff mbox series

Patch

diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index f6bc3da1ef11..3d9752e56109 100644
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -166,9 +166,13 @@  BOOT_TARGETS	:= Image vmlinuz.efi image.fit
 PHONY += $(BOOT_TARGETS)
 
 ifeq ($(CONFIG_EFI_ZBOOT),)
-KBUILD_IMAGE	:= $(boot)/Image.gz
+  ifeq ($(CONFIG_COMPRESSED_INSTALL),y)
+    KBUILD_IMAGE := $(boot)/Image.gz
+  else
+    KBUILD_IMAGE := $(boot)/Image
+  endif
 else
-KBUILD_IMAGE	:= $(boot)/vmlinuz.efi
+  KBUILD_IMAGE := $(boot)/vmlinuz.efi
 endif
 
 all:	$(notdir $(KBUILD_IMAGE))