[PATCH] arm64: properly install vmlinuz.efi

Simon Glass sjg at chromium.org
Thu Dec 14 12:12:13 PST 2023


Hi Josef,

On Thu, 14 Dec 2023 at 09:19, Josef Bacik <josef at toxicpanda.com> wrote:
>
> If you select CONFIG_EFI_ZBOOT, we will generate vmlinuz.efi, and then
> when we go to install the kernel we'll install the vmlinux instead
> because install.sh only recognizes Image.gz as wanting the compressed
> install image.  With CONFIG_EFI_ZBOOT we don't get the proper kernel
> installed, which means it doesn't boot, which makes for a very confused
> and subsequently angry kernel developer.
>
> Fix this by properly installing our compressed kernel if we've enabled
> CONFIG_EFI_ZBOOT.
>
> Signed-off-by: Josef Bacik <josef at toxicpanda.com>
> ---
>  arch/arm64/boot/install.sh | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/install.sh b/arch/arm64/boot/install.sh
> index 7399d706967a..9b7a09808a3d 100755
> --- a/arch/arm64/boot/install.sh
> +++ b/arch/arm64/boot/install.sh
> @@ -17,7 +17,8 @@
>  #   $3 - kernel map file
>  #   $4 - default install path (blank if root directory)
>
> -if [ "$(basename $2)" = "Image.gz" ]; then
> +if [ "$(basename $2)" = "Image.gz" ] || [ "$(basename $2)" = "vmlinuz.efi" ]
> +then
>  # Compressed install
>    echo "Installing compressed kernel"
>    base=vmlinuz

This is a little messy.

There is a KBUILD_IMAGE var which should be usable, although I see
that it is set to $(boot)/Image when 'make install' is invoked.

Could we perhaps make sure that this var is set to the file to be installed?

I also wonder how useful it is to indicate whether the image is
compressed or not, so perhaps we could just say 'Installing kernel' ?

Regards,
Simon



More information about the linux-arm-kernel mailing list