diff options
author | Nathan Chancellor <nathan@kernel.org> | 2021-03-25 21:04:40 +0100 |
---|---|---|
committer | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2021-06-07 12:56:19 +0100 |
commit | 7411cfc3c91a08a884463bbc7623087ecc2efdd8 (patch) | |
tree | f209f227de336c83d2bbbe772519fb4f9ad51120 /arch/arm/Kconfig.debug | |
parent | c01914efeaa9732c0e3dfbb19c8d03826c11431d (diff) | |
download | linux-7411cfc3c91a08a884463bbc7623087ecc2efdd8.tar.gz linux-7411cfc3c91a08a884463bbc7623087ecc2efdd8.tar.bz2 linux-7411cfc3c91a08a884463bbc7623087ecc2efdd8.zip |
ARM: 9070/1: Make UNWINDER_ARM depend on ld.bfd or ld.lld 11.0.0+
When linking aspeed_g5_defconfig with ld.lld 10.0.1, the following error
occurs:
ld.lld: error: .tmp_vmlinux.kallsyms1:(.ARM.exidx+0x34D98): relocation
R_ARM_PREL31 out of range: 2135538592 is not in [-1073741824,
1073741823]
This was resolved in ld.lld 11.0.0 but the minimum supported version of
ld.lld for the kernel is 10.0.1. Prevent CONFIG_UNWINDER_ARM from being
selected in this case so that the problematic sections cannot be
created.
Link: https://github.com/ClangBuiltLinux/linux/issues/732
Link: https://github.com/llvm/llvm-project/commit/48aebfc908ba7b9372aaa478a9c200789491096e
Suggested-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Diffstat (limited to 'arch/arm/Kconfig.debug')
-rw-r--r-- | arch/arm/Kconfig.debug | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug index 36016497b1b3..7902bc2096e0 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug @@ -66,6 +66,8 @@ config UNWINDER_FRAME_POINTER config UNWINDER_ARM bool "ARM EABI stack unwinder" depends on AEABI && !FUNCTION_GRAPH_TRACER + # https://github.com/ClangBuiltLinux/linux/issues/732 + depends on !LD_IS_LLD || LLD_VERSION >= 110000 select ARM_UNWIND help This option enables stack unwinding support in the kernel |