Re: v5.17-rc3 compile failure on aarch64

From: Mark Rutland
Date: Thu Feb 17 2022 - 06:50:47 EST


On Thu, Feb 17, 2022 at 04:37:49PM +0800, Qu Wenruo wrote:
> Hi,

Hi,

[adding LAKML so other arm/arm64 folk can chime in]

> Recently I found v5.17-rc3 kernel failed to compile on my aarch64 setup,
> it failed with the following error messages:
>
> AR lib/zstd/built-in.a
> LD [M] lib/zstd/zstd_compress.o
> ld: __patchable_function_entries has both ordered
> [`__patchable_function_entries' in lib/zstd/common/entropy_common.o] and
> unordered [`__patchable_function_entries' in
> lib/zstd/common/error_private.o] sections
> ld: final link failed: bad value
> make[2]: *** [scripts/Makefile.build:484: lib/zstd/zstd_compress.o] Error 1
> make[1]: *** [scripts/Makefile.build:550: lib/zstd] Error 2
> make: *** [Makefile:1831: lib] Error 2
> make: *** Waiting for unfinished jobs....

Uh-oh; that doesn't look good.

In case this is configuration-dependent, could you share your .config?

> But the same code base compiles fine inside my x86_64 VM.
>
> The aarch64 environment is an VM running on RockPro64 or RPI CM4.
>
> With a little older gcc (v10.2.0) and bintuils (2.35).

Is this a custom-built toolchain, or one shipped by a distribution?

If possible, can you see if you can reproduce this with one of the
kernel.org cross toolchains:

https://mirrors.edge.kernel.org/pub/tools/crosstool/

... because if you can, that will be much easier for someone else to
reproduce and analyse.

The closest builds are 9.3.0 and 10.3.0, for both arm64 and x86_64.

FWIW, I had a go building v5.17-rc3 defconfig with ftrace and zstd bits
eanbled with both GCC 9.3.0 and GCC 10.3.0, and I could not reproduce
the problem.

Thanks,
Mark.

> While for my x86_64 VM it has newer gcc (11.1.0) and binutiles (2.36.1)
>
> I'm super happy to upgrade my tool chain for my aarch64 VM, but I'm a
> little concerned if there is something worthy fixed.
>
> Thanks,
> Qu