Mark Rutland 1bdadf46ef locking/atomic: atomic64: support ARCH_ATOMIC
We'd like all architectures to convert to ARCH_ATOMIC, as this will
enable functionality, and once all architectures are converted it will
be possible to make significant cleanups to the atomic headers.

A number of architectures use asm-generic/atomic64.h, and it's
impractical to convert the header and all these architectures in one go.
To make it possible to convert them one-by-one, let's make the
asm-generic implementation function as either atomic64_*() or
arch_atomic64_*() depending on whether ARCH_ATOMIC is selected. To do
this, the generic implementations are prefixed as generic_atomic64_*(),
and preprocessor definitions map atomic64_*()/arch_atomic64_*() onto
these as appropriate.

Once all users are moved over to ARCH_ATOMIC the ifdeffery in the header
can be simplified and/or removed entirely.

For existing users (none of which select ARCH_ATOMIC), there should be
no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20210525140232.53872-11-mark.rutland@arm.com
2021-05-26 13:20:50 +02:00
..
2020-08-09 14:10:26 -07:00
2021-04-29 11:28:08 -07:00
2020-10-30 17:34:45 +11:00
2021-04-14 16:30:30 +03:00
2021-05-06 19:24:12 -07:00
2021-05-05 12:39:29 -07:00
2018-08-16 12:14:42 -07:00
2021-01-21 14:06:00 -07:00
2021-01-03 20:05:18 -05:00
2020-10-20 14:39:37 -07:00
2021-04-14 16:30:30 +03:00
2021-04-30 11:20:36 -07:00
2021-02-26 09:41:05 -08:00
2021-04-14 16:30:30 +03:00
2018-10-16 13:45:44 +02:00
2021-05-06 19:24:12 -07:00
2020-06-15 18:22:43 -07:00
2019-07-11 15:17:41 -07:00
2020-12-15 22:46:16 -08:00
2018-10-15 16:31:29 -04:00
2020-12-15 22:46:16 -08:00
2021-04-28 10:01:40 -07:00
2021-02-26 09:41:05 -08:00
2021-02-26 09:41:05 -08:00
2021-04-28 10:01:40 -07:00