* [GIT PULL] urgent EFI fix for v4.9 @ 2016-10-18 15:53 Ard Biesheuvel [not found] ` <1476805991-7160-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> 2016-10-19 12:51 ` [GIT PULL] urgent EFI fix for v4.9 Ingo Molnar 0 siblings, 2 replies; 3+ messages in thread From: Ard Biesheuvel @ 2016-10-18 15:53 UTC (permalink / raw) To: mingo-DgEjT+Ai2ygdnm+yROfE0A, Thomas Gleixner, H . Peter Anvin Cc: Ard Biesheuvel, linux-kernel-u79uwXL29TY76Z2rM5mHXA, linux-efi-u79uwXL29TY76Z2rM5mHXA, Jon Hunter, Matt Fleming Please merge the single fix below: it addresses a build issue on ARM with less recent toolchain versions, which surfaced now that EFI has been added to multi_v7_defconfig, the de facto generic defconfig for the most recent cores. The following changes since commit b67be92feb486f800d80d72c67fd87b47b79b18e: Merge tag 'pwm/for-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm (2016-10-12 11:11:05 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-urgent for you to fetch changes up to 0d5b726f1009d05657ec71c716ba6529dcc98d2b: efi/arm: Fix absolute relocation detection for older toolchains (2016-10-14 10:57:59 +0100) ---------------------------------------------------------------- * Fix a build issue in the ARM version of libstub with slightly older toolchains ---------------------------------------------------------------- Ard Biesheuvel (1): efi/arm: Fix absolute relocation detection for older toolchains drivers/firmware/efi/libstub/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <1476805991-7160-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>]
* [PATCH] efi/arm: Fix absolute relocation detection for older toolchains [not found] ` <1476805991-7160-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> @ 2016-10-18 15:53 ` Ard Biesheuvel 0 siblings, 0 replies; 3+ messages in thread From: Ard Biesheuvel @ 2016-10-18 15:53 UTC (permalink / raw) To: mingo-DgEjT+Ai2ygdnm+yROfE0A, Thomas Gleixner, H . Peter Anvin Cc: Ard Biesheuvel, linux-kernel-u79uwXL29TY76Z2rM5mHXA, linux-efi-u79uwXL29TY76Z2rM5mHXA When building the ARM kernel with CONFIG_EFI=y, the following build error may occur when using a less recent version of binutils (2.23 or older): STUBCPY drivers/firmware/efi/libstub/lib-sort.stub.o 00000000 R_ARM_ABS32 sort 00000004 R_ARM_ABS32 __ksymtab_strings drivers/firmware/efi/libstub/lib-sort.stub.o: absolute symbol references not allowed in the EFI stub (and when building with debug symbols, the list above is much longer, and contains all the internal references between the .debug sections and the actual code) This issue is caused by the fact that objcopy v2.23 or earlier does not support wildcards in its -R and -j options, which means the following line from the Makefile: STUBCOPY_FLAGS-y := -R .debug* -R *ksymtab* -R *kcrctab* fails to take effect, leaving harmless absolute relocations in the binary that are indistinguishable from relocations that may cause crashes at runtime due to the fact that these relocations are resolved at link time using the virtual address of the kernel, which is always different from the address at which the EFI firmware loads and invokes the stub. So, as a workaround, disable debug symbols explicitly when building the stub for ARM, and strip the ksymtab and kcrctab symbols for the only exported symbol we currently reuse in the stub, which is 'sort'. Cc: Matt Fleming <matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org> Tested-by: Jon Hunter <jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> Reviewed-by: Matt Fleming <matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org> Signed-off-by: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> --- drivers/firmware/efi/libstub/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/firmware/efi/libstub/Makefile b/drivers/firmware/efi/libstub/Makefile index c06945160a41..5e23e2d305e7 100644 --- a/drivers/firmware/efi/libstub/Makefile +++ b/drivers/firmware/efi/libstub/Makefile @@ -11,7 +11,7 @@ cflags-$(CONFIG_X86) += -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 \ -mno-mmx -mno-sse cflags-$(CONFIG_ARM64) := $(subst -pg,,$(KBUILD_CFLAGS)) -cflags-$(CONFIG_ARM) := $(subst -pg,,$(KBUILD_CFLAGS)) \ +cflags-$(CONFIG_ARM) := $(subst -pg,,$(KBUILD_CFLAGS)) -g0 \ -fno-builtin -fpic -mno-single-pic-base cflags-$(CONFIG_EFI_ARMSTUB) += -I$(srctree)/scripts/dtc/libfdt @@ -79,5 +79,6 @@ quiet_cmd_stubcopy = STUBCPY $@ # decompressor. So move our .data to .data.efistub, which is preserved # explicitly by the decompressor linker script. # -STUBCOPY_FLAGS-$(CONFIG_ARM) += --rename-section .data=.data.efistub +STUBCOPY_FLAGS-$(CONFIG_ARM) += --rename-section .data=.data.efistub \ + -R ___ksymtab+sort -R ___kcrctab+sort STUBCOPY_RELOC-$(CONFIG_ARM) := R_ARM_ABS -- 2.7.4 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [GIT PULL] urgent EFI fix for v4.9 2016-10-18 15:53 [GIT PULL] urgent EFI fix for v4.9 Ard Biesheuvel [not found] ` <1476805991-7160-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> @ 2016-10-19 12:51 ` Ingo Molnar 1 sibling, 0 replies; 3+ messages in thread From: Ingo Molnar @ 2016-10-19 12:51 UTC (permalink / raw) To: Ard Biesheuvel Cc: Thomas Gleixner, H . Peter Anvin, linux-kernel, linux-efi, Jon Hunter, Matt Fleming * Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > Please merge the single fix below: it addresses a build issue on ARM with > less recent toolchain versions, which surfaced now that EFI has been added > to multi_v7_defconfig, the de facto generic defconfig for the most recent > cores. > > The following changes since commit b67be92feb486f800d80d72c67fd87b47b79b18e: > > Merge tag 'pwm/for-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm (2016-10-12 11:11:05 -0700) > > are available in the git repository at: > > git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-urgent > > for you to fetch changes up to 0d5b726f1009d05657ec71c716ba6529dcc98d2b: > > efi/arm: Fix absolute relocation detection for older toolchains (2016-10-14 10:57:59 +0100) > > ---------------------------------------------------------------- > * Fix a build issue in the ARM version of libstub with slightly older > toolchains > > ---------------------------------------------------------------- > Ard Biesheuvel (1): > efi/arm: Fix absolute relocation detection for older toolchains > > drivers/firmware/efi/libstub/Makefile | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) Applied, thanks Ard! Ingo ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-10-19 12:51 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-10-18 15:53 [GIT PULL] urgent EFI fix for v4.9 Ard Biesheuvel [not found] ` <1476805991-7160-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> 2016-10-18 15:53 ` [PATCH] efi/arm: Fix absolute relocation detection for older toolchains Ard Biesheuvel 2016-10-19 12:51 ` [GIT PULL] urgent EFI fix for v4.9 Ingo Molnar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).