frv: cmpxchg: Implement cmpxchg64
PATCH 1/1 frv: cmpxchg: Implement cmpxchg64
FRV supports 64-bit cmpxchg, which is provided by the arch code as __cmpxchg_64 and subsequently used to implement atomic64_cmpxchg.
This patch hooks up the generic cmpxchg64 API using the same function, which also provides default definitions of the relaxed, acquire and release variants. This fixes the build when COMPILE_TEST=y and IOMMU_IO_PGTABLE_LPAE=y.
Cc Joerg Roedel <[email protected]>
Cc Robin Murphy <[email protected]>
Cc Peter Zijlstra <[email protected]>
Cc Ingo Molnar <[email protected]>
Cc Andrew Morton <[email protected]>
Reported-by kbuild test robot <[email protected]>
Signed-off-by Will Deacon <[email protected]>
---
FRV is orphaned, so not sure where to send this.
arch/frv/include/asm/cmpxchg.h | 1 + 1 file changed, 1 insertion(+)
arch/frv/include/asm/cmpxchg.h +1 -0
@@ -76,6 +76,7 @@ extern uint32_t __xchg_32(uint32_t i, volatile void *v);* - if (*ptr != test) then orig = *ptr; */ extern uint64_t __cmpxchg_64 (uint64_t test,uint64_t new,volatile uint64_t *v); +#define cmpxchg64 (p, o, n) __cmpxchg_64((o), (n), (p))#ifndef CONFIG_FRV_OUTOFLINE_ATOMIC_OPS
Signature · 1 line
2.1.4