Re: [PATCH] powerpc/barrier: Avoid collision with clang's __lwsync macro
From: Michael Ellerman <hidden>
Date: 2021-06-18 04:24:15
Also in:
linuxppc-dev, lkml
From: Michael Ellerman <hidden>
Date: 2021-06-18 04:24:15
Also in:
linuxppc-dev, lkml
On Fri, 28 May 2021 11:27:52 -0700, Nathan Chancellor wrote:
A change in clang 13 results in the __lwsync macro being defined as
__builtin_ppc_lwsync, which emits 'lwsync' or 'msync' depending on what
the target supports. This breaks the build because of -Werror in
arch/powerpc, along with thousands of warnings:
In file included from arch/powerpc/kernel/pmc.c:12:
In file included from include/linux/bug.h:5:
In file included from arch/powerpc/include/asm/bug.h:109:
In file included from include/asm-generic/bug.h:20:
In file included from include/linux/kernel.h:12:
In file included from include/linux/bitops.h:32:
In file included from arch/powerpc/include/asm/bitops.h:62:
arch/powerpc/include/asm/barrier.h:49:9: error: '__lwsync' macro redefined [-Werror,-Wmacro-redefined]
#define __lwsync() __asm__ __volatile__ (stringify_in_c(LWSYNC) : : :"memory")
^
<built-in>:308:9: note: previous definition is here
#define __lwsync __builtin_ppc_lwsync
^
1 error generated.
[...]
Applied to powerpc/next.
[1/1] powerpc/barrier: Avoid collision with clang's __lwsync macro
https://git.kernel.org/powerpc/c/015d98149b326e0f1f02e44413112ca8b4330543
cheers