Re: [linux-stable-rc:linux-5.15.y 6874/8723] arch/arm/lib/xor-neon.c:30:2: warning: This code requires at least version 4.6 of GCC

From: Arnd Bergmann
Date: Mon Jul 25 2022 - 10:36:03 EST


On Mon, Jul 25, 2022 at 2:55 PM Arnd Bergmann <arnd@xxxxxxxxxx> wrote:

> The other easy workaround would be to just turn off the xor-neon code
> when building with clang, e.g. using this Makefile hack:
>
> diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile
> index 6d2ba454f25b..8e4fe6421dd2 100644
> --- a/arch/arm/lib/Makefile
> +++ b/arch/arm/lib/Makefile
> @@ -43,8 +43,10 @@ endif
> $(obj)/csumpartialcopy.o: $(obj)/csumpartialcopygeneric.S
> $(obj)/csumpartialcopyuser.o: $(obj)/csumpartialcopygeneric.S
>
> +ifdef CONFIG_CC_IS_CLANG
> ifeq ($(CONFIG_KERNEL_MODE_NEON),y)
> NEON_FLAGS := -march=armv7-a -mfloat-abi=softfp -mfpu=neon
> CFLAGS_xor-neon.o += $(NEON_FLAGS)
> obj-$(CONFIG_XOR_BLOCKS) += xor-neon.o
> endif
> +endif

Nevermind, this does not actually work. Just turning off the warning
is probably best then, as actually disabling this code would still
be invasive not do much beyond saving a little bit of kernel .text size.

Arnd