Subject: Re: linux-next: build failure after merge of the efi-fixes tree

From: "Ard Biesheuvel" <[email-masked]>
Date: Tue, 28 Apr 2026 12:25:07 +0200

Hi Thierry,

On Tue, 28 Apr 2026, at 12:22, Thierry Reding wrote:
> Hi all,
>
> After merging the efi-fixes tree, today's linux-next build (all of them)
> failed like this:
>
>     /srv/kbuild/next/linux.git/fs/efivarfs/super.c: In function 
> 'efivarfs_d_hash':
>     /srv/kbuild/next/linux.git/fs/efivarfs/super.c:183:20: error: 
> assignment of member 'hash' in read-only object
>       183 |         qstr->hash = end_name_hash(hash);
>           |                    ^
>     /srv/kbuild/next/linux.git/fs/efivarfs/super.c: At top level:
>     /srv/kbuild/next/linux.git/fs/efivarfs/super.c:189:19: error: 
> initialization of 'int (*)(const struct dentry *, struct qstr *)' from 
> incompatible pointer type 'int (*)(const struct dentry *, const struct 
> qstr *)' [-Wincompatible-pointer-types]
>       189 |         .d_hash = efivarfs_d_hash,
>           |                   ^~~~~~~~~~~~~~~
> Caused by commit
>
>     9c7c5eec5bca ("efivarfs: use QSTR() in efivarfs_alloc_dentry")
>
> and like this:
>
>     arm-linux-gnueabihf-ld: 
> drivers/firmware/efi/libstub/relocate.stub.o: in function 
> `efi_relocate_kernel':
>     
> /srv/kbuild/next/linux.git/drivers/firmware/efi/libstub/relocate.c:161:(.text+0x278): 
> undefined reference to `efi_cache_sync_image'
>     arm-linux-gnueabihf-ld: arch/arm/boot/compressed/vmlinux: hidden 
> symbol `efi_cache_sync_image' isn't defined
>     arm-linux-gnueabihf-ld: final link failed: bad value
>
> Caused by commit
>
>     4db2b7fdd6c9 ("efi/libstub: Synchronize instruction cache after 
> kernel relocation")
>
> I've fixed up both issues with the following patches, please squash these
> or equivalent changes into your tree to fix this.
>

Apologies for the breakage.

I'll drop these for now.