linux/arch
Mark Rutland 7c7084f3ba locking/atomic: xtensa: add preprocessor symbols
Some atomics can be implemented in several different ways, e.g.
FULL/ACQUIRE/RELEASE ordered atomics can be implemented in terms of
RELAXED atomics, and ACQUIRE/RELEASE/RELAXED can be implemented in terms
of FULL ordered atomics. Other atomics are optional, and don't exist in
some configurations (e.g. not all architectures implement the 128-bit
cmpxchg ops).

Subsequent patches will require that architectures define a preprocessor
symbol for any atomic (or ordering variant) which is optional. This will
make the fallback ifdeffery more robust, and simplify future changes.

Add the required definitions to arch/xtensa.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230605070124.3741859-14-mark.rutland@arm.com
2023-06-05 09:57:18 +02:00
..
alpha locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
arc locking/atomic: arc: add preprocessor symbols 2023-06-05 09:57:14 +02:00
arm locking/atomic: arm: add preprocessor symbols 2023-06-05 09:57:15 +02:00
arm64 locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
csky locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
hexagon locking/atomic: hexagon: add preprocessor symbols 2023-06-05 09:57:15 +02:00
ia64 locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
loongarch locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
m68k locking/atomic: m68k: add preprocessor symbols 2023-06-05 09:57:16 +02:00
microblaze Kconfig: introduce HAS_IOPORT option and select it as necessary 2023-04-05 22:15:19 +02:00
mips locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
nios2 - Nick Piggin's "shoot lazy tlbs" series, to improve the peformance of 2023-04-27 19:42:02 -07:00
openrisc locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
parisc locking/atomic: parisc: add preprocessor symbols 2023-06-05 09:57:16 +02:00
powerpc locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
riscv locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
s390 s390/cpum_sf: Convert to cmpxchg128() 2023-06-05 09:36:40 +02:00
sh locking/atomic: sh: add preprocessor symbols 2023-06-05 09:57:16 +02:00
sparc locking/atomic: sparc: add preprocessor symbols 2023-06-05 09:57:17 +02:00
um This pull request contains the following changes for UML: 2023-05-03 19:02:03 -07:00
x86 locking/atomic: x86: add preprocessor symbols 2023-06-05 09:57:17 +02:00
xtensa locking/atomic: xtensa: add preprocessor symbols 2023-06-05 09:57:18 +02:00
.gitignore
Kconfig lazy tlb: shoot lazies, non-refcounting lazy tlb mm reference handling scheme 2023-03-28 16:20:08 -07:00