lkml.org 
[lkml]   [2022]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 045/530] riscv: Pass -mno-relax only on lld < 15.0.0
    Date
    From: Fangrui Song <maskray@google.com>

    commit 3cebf80e9a0d3adcb174053be32c88a640b3344b upstream.

    lld since llvm:6611d58f5bbc ("[ELF] Relax R_RISCV_ALIGN"), which will be
    included in the 15.0.0 release, has implemented some RISC-V linker
    relaxation. -mno-relax is no longer needed in
    KBUILD_CFLAGS/KBUILD_AFLAGS to suppress R_RISCV_ALIGN which older lld
    can not handle:

    ld.lld: error: capability.c:(.fixup+0x0): relocation R_RISCV_ALIGN
    requires unimplemented linker relaxation; recompile with -mno-relax
    but the .o is already compiled with -mno-relax

    Signed-off-by: Fangrui Song <maskray@google.com>
    Link: https://lore.kernel.org/r/20220710071117.446112-1-maskray@google.com/
    Link: https://lore.kernel.org/r/20220918092933.19943-1-palmer@rivosinc.com
    Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
    Tested-by: Nick Desaulniers <ndesaulniers@google.com>
    Tested-by: Nathan Chancellor <nathan@kernel.org>
    Tested-by: Conor Dooley <conor.dooley@microchip.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    arch/riscv/Makefile | 2 ++
    1 file changed, 2 insertions(+)

    --- a/arch/riscv/Makefile
    +++ b/arch/riscv/Makefile
    @@ -39,6 +39,7 @@ else
    endif

    ifeq ($(CONFIG_LD_IS_LLD),y)
    +ifeq ($(shell test $(CONFIG_LLD_VERSION) -lt 150000; echo $$?),0)
    KBUILD_CFLAGS += -mno-relax
    KBUILD_AFLAGS += -mno-relax
    ifndef CONFIG_AS_IS_LLVM
    @@ -46,6 +47,7 @@ ifndef CONFIG_AS_IS_LLVM
    KBUILD_AFLAGS += -Wa,-mno-relax
    endif
    endif
    +endif

    # ISA string setting
    riscv-march-$(CONFIG_ARCH_RV32I) := rv32ima

    \
     
     \ /
      Last update: 2022-10-24 22:26    [W:4.231 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site