undefined reference to `__aarch64_cas4_sync' error on arm64 native build

From: richard clark
Date: Mon Jan 01 2024 - 22:29:47 EST


Hi,

I have a strong power arm64 box, and the linux distro is ubuntu 22.04,
the native gcc version is:

$ gcc --version
gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

It will abort the kernel build with the complaint by 'make Image':
ld: Unexpected GOT/PLT entries detected!
ld: Unexpected run-time procedure linkages detected!
ld: ID map text too big or misaligned
ld: drivers/net/nvidia_eth.o: in function `osi_lock_irq_enabled':
osi_hal.c:(.text+0x3cc): undefined reference to `__aarch64_cas4_sync'
...

But the cross-compile with aarch64-linux-gnu-gcc on the x86 box
doesn't show the above error message.
Any comments/suggestions? Thanks very much!

Richard