Re: [REGRESSION] mainline/master: (build) in arch/arm/kernel/entry-common.o (/tmp/kci/linux/scripts/Makefile...
Thorsten Leemhuis <[email protected]>
| Newsgroups | dev.linux.lists.kernelci,dev.linux.lists.regressions |
|---|---|
| Message-ID | <[email protected]> |
On 8/20/26 02:09, Nathan Chancellor wrote: > On Wed, Aug 19, 2026 at 11:08:39AM +0300, Ard Biesheuvel wrote: >> We're falling back to the mov_l asm macro in this case. >> >> This is unfortunate, because the only reason to avoid these group >> relocations is making allyesconfig work, now that LLD has caught up. >> >> I did not manage to reproduce this, but if this is something we care >> deeply about, we might tweak mov_l as below when COMPILE_TEST is set, >> so that the literal pool is always in range. > > I am not sure that we do, at least currently, since Arnd's patch to turn > off OABI compat for everything but StrongARM has now landed in mainline, > getting rid of the originally reported error. Grea. Nathan, Ard, many thx for looking into this! > If this error comes back, we could look at a better fix. +1 -- not sure, but even that might only be worth it if more than just one CI runs into the problem in a particular test case. Ciao, Thorsten >> --- a/arch/arm/include/asm/assembler.h >> +++ b/arch/arm/include/asm/assembler.h >> @@ -636,6 +636,12 @@ >> .macro mov_l, dst:req, imm:req, cond >> .if __LINUX_ARM_ARCH__ < 7 >> ldr\cond \dst, =\imm >> +#ifdef CONFIG_COMPILE_TEST >> + /* The literal may go out of range in pathological cases */ >> + b .L\@ >> + .ltorg >> +.L\@: >> +#endif >> .else >> movw\cond \dst, #:lower16:\imm >> movt\cond \dst, #:upper16:\imm > #regzbot resolve: commit 25900bd99d4d avoids this error by disabling CONFIG_OABI_COMPAT for allmodconfig