]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: 7852/1: cmpxchg: implement barrier-less cmpxchg64_local
authorWill Deacon <will.deacon@arm.com>
Wed, 9 Oct 2013 16:01:21 +0000 (17:01 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 29 Oct 2013 11:06:06 +0000 (11:06 +0000)
commitd5ced5e8bfbdec5b9be0cfef39423a2064c53f5f
tree0c23d146be95ffcb82405c6b6770ae52421ba19e
parente1f623adc6f7e8935af2308a94ae5360ff22b891
ARM: 7852/1: cmpxchg: implement barrier-less cmpxchg64_local

Our cmpxchg64 macros are wrappers around atomic64_cmpxchg. Whilst this is
great for code re-use, there is a case for barrier-less cmpxchg where it
is known to be safe (for example cmpxchg64_local and cmpxchg-based
lockrefs).

This patch introduces a 64-bit cmpxchg implementation specifically
for the cmpxchg64_* macros, so that it can be later used by the lockref
code.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/cmpxchg.h