Re: [next] arm: current.h:53:6: error: out of range pc-relative fixup value

From: Nathan Chancellor
Date: Wed Dec 22 2021 - 13:32:56 EST


On Wed, Dec 22, 2021 at 11:57:20PM +0530, Naresh Kamboju wrote:
> [ Please ignore this email if it is already reported ]
>
> On Linux next 20211220 (and 20211222) tag following arm config builds failed
> with clang-11, clang-12, clang-13 and clang-nightly.
>
> Build errors:
> -------------
> In file included from /builds/linux/kernel/sched/core.c:10:
> In file included from /builds/linux/include/trace/events/sched.h:8:
> In file included from /builds/linux/include/linux/kthread.h:6:
> In file included from /builds/linux/include/linux/sched.h:12:
> /builds/linux/arch/arm/include/asm/current.h:53:6: error: out of range
> pc-relative fixup value
> asm(LOAD_SYM_ARMV6(%0, __current) : "=r"(cur));
> ^
> /builds/linux/arch/arm/include/asm/insn.h:25:2: note: expanded from
> macro 'LOAD_SYM_ARMV6'
> " ldr " #reg ", =" #sym " \n\t" \
> ^
> <inline asm>:1:3: note: instantiated into assembly here
> ldr r2, =__current
> ^

Report on our issue tracker with discussion:

https://github.com/ClangBuiltLinux/linux/issues/1551

Ard has a fix that should resolve this here:

https://lore.kernel.org/r/20211222104939.1154570-1-ardb@xxxxxxxxxx/

I am about to reply with a Tested-by tag, I have tested LLVM 12 and 13
and my 14 build is running right now. Might be helpful for you to run
that patch through your matrix as well.

Cheers,
Nathan