Re: [PATCH] arm64: alternatives: Move length validation in alternative_{insn,endif}

From: Nathan Chancellor
Date: Thu Apr 15 2021 - 09:26:05 EST


On Thu, Apr 15, 2021 at 10:17:43AM +0100, Catalin Marinas wrote:
> Hi Nathan,
>
> On Tue, Apr 13, 2021 at 05:08:04PM -0700, Nathan Chancellor wrote:
> > After commit 2decad92f473 ("arm64: mte: Ensure TIF_MTE_ASYNC_FAULT is
> > set atomically"), LLVM's integrated assembler fails to build entry.S:
> >
> > <instantiation>:5:7: error: expected assembly-time absolute expression
> > .org . - (664b-663b) + (662b-661b)
> > ^
> > <instantiation>:6:7: error: expected assembly-time absolute expression
> > .org . - (662b-661b) + (664b-663b)
> > ^
>
> I tried the latest Linus' tree and linux-next (defconfig) with this
> commit in and I can't get your build error. I used both clang-10 from
> Debian stable and clang-11 from Debian sid. So, which clang version did
> you use or which kernel config options?
>
> --
> Catalin
>

Hi Catalin,

Interesting, this reproduces for me with LLVM 12 or newer with just
defconfig.

$ make -j"$(nproc)" ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- LLVM=1 LLVM_IAS=1 defconfig arch/arm64/kernel/entry.o

https://github.com/ClangBuiltLinux/continuous-integration2/runs/2350258778?check_suite_focus=true

Cheers,
Nathan