Re: [PATCH 0/3] EFI fixes for -next

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 20 Jan 2020 at 10:49, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
>
>
> * Ard Biesheuvel <ardb@xxxxxxxxxx> wrote:
>
> > A couple of fixes for more unusual configurations that weren't caught in
> > my testing before. One for KASAN, one for the LLVM linker and one for the
> > old EFI memory map when running on mixed mode systems.
> >
> > These apply onto the Git pull request [0[ that I sent out at the beginning
> > of the week.
> >
> > [0] https://lore.kernel.org/linux-efi/20200113172245.27925-1-ardb@xxxxxxxxxx/
> >
> > Ard Biesheuvel (3):
> >   efi/x86: avoid KASAN false positives when accessing the 1:1 mapping
> >   x86/boot/compressed: relax sed symbol type regex for LLVM ld.lld
> >   efi/x86: disallow efi=old_map in mixed mode
> >
> >  arch/x86/boot/Makefile         |  2 +-
> >  arch/x86/platform/efi/efi_64.c | 11 ++++++-----
> >  arch/x86/platform/uv/bios_uv.c |  2 +-
> >  3 files changed, 8 insertions(+), 7 deletions(-)
>
> Just a minor bugreport, in some (weird) config combinations we now get
> this build failure:
>
>   ld: arch/x86/platform/efi/efi_64.o: in function `efi_set_virtual_address_map':
>   efi_64.c:(.init.text+0x1419): undefined reference to `__efi64_thunk'
>   ld: efi_64.c:(.init.text+0x1530): undefined reference to `efi_uv1_memmap_phys_prolog'
>   ld: efi_64.c:(.init.text+0x1706): undefined reference to `efi_uv1_memmap_phys_epilog'
>
> Config attached.
>
> I believe the trigger condition is:
>
>   !CONFIG_X86_UV
>   CONFIG_EFI=y
>

Strange.

Those references to missing symbols are guarded by efi_is_mixed() and
efi_have_uv1_memmap(), both of which are static inline bool()
functions wrapping IS_ENABLED() checks against CONFIG_EFI_MIXED and
CONFIG_X86_UV, respectively. IOW, it is unexpected that the compiler
doesn't const-propagate those expressions and optimize away the
references entirely.

Is there any special debug or diagnostic options enabled?



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux