public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] x86/percpu: Fix "multiple identical address spaces specified for type" clang warning
@ 2024-05-26 17:55 Uros Bizjak
  2024-05-26 17:55 ` [PATCH 2/2] x86/percpu: *DO NOT MERGE* Enable named address spaces for clang Uros Bizjak
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Uros Bizjak @ 2024-05-26 17:55 UTC (permalink / raw)
  To: x86, llvm, linux-kernel
  Cc: Uros Bizjak, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
	Dave Hansen, H. Peter Anvin, Nathan Chancellor, Nick Desaulniers,
	Bill Wendling, Justin Stitt

The clang build with named address spaces enabled currently fails with:

error: multiple identical address spaces specified for type [-Werror,-Wduplicate-decl-specifier]

The warning is emitted when accessing const_pcpu_hot structure,
which is already declared in __seg_gs named address space.

Use specialized accessor for __raw_cpu_read_const() instead, avoiding
redeclaring __seg_gs named address space via __raw_cpu_read().

Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Nathan Chancellor <nathan@kernel.org>
Cc: Nick Desaulniers <ndesaulniers@google.com>
Cc: Bill Wendling <morbo@google.com>
Cc: Justin Stitt <justinstitt@google.com>
---
 arch/x86/include/asm/percpu.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h
index c55a79d5feae..aeea5c8a17de 100644
--- a/arch/x86/include/asm/percpu.h
+++ b/arch/x86/include/asm/percpu.h
@@ -160,7 +160,10 @@ do {									\
 	*(qual __my_cpu_type(pcp) *)__my_cpu_ptr(&(pcp)) = (val);	\
 } while (0)
 
-#define __raw_cpu_read_const(pcp)	__raw_cpu_read(, , pcp)
+#define __raw_cpu_read_const(pcp)					\
+({									\
+	*(typeof(pcp) *)(__force uintptr_t)(&(pcp));			\
+})
 
 #else /* !CONFIG_USE_X86_SEG_SUPPORT: */
 
-- 
2.42.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-07-17 15:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-26 17:55 [PATCH 1/2] x86/percpu: Fix "multiple identical address spaces specified for type" clang warning Uros Bizjak
2024-05-26 17:55 ` [PATCH 2/2] x86/percpu: *DO NOT MERGE* Enable named address spaces for clang Uros Bizjak
2024-05-30 15:57 ` [PATCH 1/2] x86/percpu: Fix "multiple identical address spaces specified for type" clang warning Nathan Chancellor
2024-07-17 14:40 ` Ingo Molnar
2024-07-17 15:53   ` Uros Bizjak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox