]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
s390: don't allow CONFIG_COMPAT with LD=ld.lld
authorNathan Chancellor <nathan@kernel.org>
Wed, 14 Feb 2024 22:53:48 +0000 (15:53 -0700)
committerHeiko Carstens <hca@linux.ibm.com>
Fri, 16 Feb 2024 13:30:12 +0000 (14:30 +0100)
When building 'ARCH=s390 defconfig compat.config' with GCC and
LD=ld.lld, there is an error when attempting to link the compat vDSO:

  ld.lld: error: unknown emulation: elf_s390
  make[4]: *** [arch/s390/kernel/vdso32/Makefile:48: arch/s390/kernel/vdso32/vdso32.so.dbg] Error 1

Much like clang, ld.lld only supports the 64-bit s390 emulation. Add a
dependency on not using LLD to CONFIG_COMPAT to avoid breaking the build
with this toolchain combination.

Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://lore.kernel.org/r/20240214-s390-compat-lld-dep-v1-1-abf1f4b5e514@kernel.org
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/Kconfig

index 771235aee6bfb4dbcb43de7963ad9a78c260917e..39e937309fc25aa68826ebab03af6cc113f7368e 100644 (file)
@@ -449,7 +449,7 @@ config COMPAT
        select COMPAT_OLD_SIGACTION
        select HAVE_UID16
        depends on MULTIUSER
-       depends on !CC_IS_CLANG
+       depends on !CC_IS_CLANG && !LD_IS_LLD
        help
          Select this option if you want to enable your system kernel to
          handle system-calls from ELF binaries for 31 bit ESA.  This option