Re: linux-next: Tree for Jun 24 [build failure on arm64]

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

 



On Wed, Jun 24, 2020 at 05:08:56PM +0800, Shaokun Zhang wrote:
> +Will Deacon,
> 
> Hi Will,
> 
> There's a build failure on arm64:
> 
>   CALL    scripts/atomic/check-atomics.sh
>   CALL    scripts/checksyscalls.sh
>   LD      arch/arm64/kernel/vdso/vdso.so.dbg
> ld: unrecognized option '--no-eh-frame-hdr'
> ld: use the --help option for usage information
> arch/arm64/kernel/vdso/Makefile:64: recipe for target
> 'arch/arm64/kernel/vdso/vdso.so.dbg' failed
> make[1]: *** [arch/arm64/kernel/vdso/vdso.so.dbg] Error 1
> arch/arm64/Makefile:175: recipe for target 'vdso_prepare' failed
> make: *** [vdso_prepare] Error 2
> 
> GCC version is followed:
> gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.12) 5.4.0 20160609
> 
> It seems caused by
> 87676cfca141 arm64: vdso: Disable dwarf unwinding through the sigreturn
> trampoline

Urgh, binutils quality strikes again. If you're able to reproduce locally,
can you try the diff below, please? All the linkers I have kicking around
seem to support --no-eh-frame-hdr.

Will

--->8

diff --git a/arch/arm64/kernel/vdso/Makefile b/arch/arm64/kernel/vdso/Makefile
index 1e5a940532da..97d3d3632093 100644
--- a/arch/arm64/kernel/vdso/Makefile
+++ b/arch/arm64/kernel/vdso/Makefile
@@ -23,8 +23,9 @@ btildflags-$(CONFIG_ARM64_BTI_KERNEL) += -z force-bti
 # potential future proofing if we end up with internal calls to the exported
 # routines, as x86 does (see 6f121e548f83 ("x86, vdso: Reimplement vdso.so
 # preparation in build-time C")).
-ldflags-y := -shared -nostdlib -soname=linux-vdso.so.1 --hash-style=sysv \
-               -Bsymbolic --no-eh-frame-hdr --build-id -n $(btildflags-y) -T
+ldflags-y := -shared -nostdlib -soname=linux-vdso.so.1 --hash-style=sysv       \
+            -Bsymbolic $(call ld-option, --no-eh-frame-hdr) --build-id -n      \
+            $(btildflags-y) -T
 
 ccflags-y := -fno-common -fno-builtin -fno-stack-protector -ffixed-x18
 ccflags-y += -DDISABLE_BRANCH_PROFILING




[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux