Skip to content

Commit 0628c03

Browse files
nathanchancehcahca
authored andcommitted
s390/vdso: drop '-fPIC' from LDFLAGS
'-fPIC' as an option to the linker does not do what it seems like it should. With ld.bfd, it is treated as '-f PIC', which does not make sense based on the meaning of '-f': -f SHLIB, --auxiliary SHLIB Auxiliary filter for shared object symbol table When building with ld.lld (currently under review in a GitHub pull request), it just errors out because '-f' means nothing and neither does '-fPIC': ld.lld: error: unknown argument '-fPIC' '-fPIC' was blindly copied from CFLAGS when the vDSO stopped being linked with '$(CC)', it should not be needed. Remove it to clear up the build failure with ld.lld. Fixes: 2b2a258 ("s390/vdso: Use $(LD) instead of $(CC) to link vDSO") Link: llvm/llvm-project#75643 Signed-off-by: Nathan Chancellor <nathan@kernel.org> Reviewed-by: Fangrui Song <maskray@google.com> Link: https://lore.kernel.org/r/20240130-s390-vdso-drop-fpic-from-ldflags-v1-1-094ad104fc55@kernel.org Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
1 parent 14edd0d commit 0628c03

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

arch/s390/kernel/vdso32/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ KBUILD_CFLAGS_32 := $(filter-out -m64,$(KBUILD_CFLAGS))
2222
KBUILD_CFLAGS_32 := $(filter-out -mno-pic-data-is-text-relative,$(KBUILD_CFLAGS_32))
2323
KBUILD_CFLAGS_32 += -m31 -fPIC -shared -fno-common -fno-builtin
2424

25-
LDFLAGS_vdso32.so.dbg += -fPIC -shared -soname=linux-vdso32.so.1 \
25+
LDFLAGS_vdso32.so.dbg += -shared -soname=linux-vdso32.so.1 \
2626
--hash-style=both --build-id=sha1 -melf_s390 -T
2727

2828
$(targets:%=$(obj)/%.dbg): KBUILD_CFLAGS = $(KBUILD_CFLAGS_32)

arch/s390/kernel/vdso64/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ KBUILD_AFLAGS_64 += -m64
2626
KBUILD_CFLAGS_64 := $(filter-out -m64,$(KBUILD_CFLAGS))
2727
KBUILD_CFLAGS_64 := $(filter-out -mno-pic-data-is-text-relative,$(KBUILD_CFLAGS_64))
2828
KBUILD_CFLAGS_64 += -m64 -fPIC -fno-common -fno-builtin
29-
ldflags-y := -fPIC -shared -soname=linux-vdso64.so.1 \
29+
ldflags-y := -shared -soname=linux-vdso64.so.1 \
3030
--hash-style=both --build-id=sha1 -T
3131

3232
$(targets:%=$(obj)/%.dbg): KBUILD_CFLAGS = $(KBUILD_CFLAGS_64)

0 commit comments

Comments
 (0)