summaryrefslogtreecommitdiffstats
path: root/include/asm-generic/atomic64.h
diff options
context:
space:
mode:
authorPeter Zijlstra2014-04-23 19:32:50 +0200
committerThomas Gleixner2015-07-27 14:06:24 +0200
commite6942b7de2dfe44ebde9bae57dadece5abca9de8 (patch)
treeb235317c5f6d200bcc25b43a406237a0d15319cf /include/asm-generic/atomic64.h
parenttile: Provide atomic_{or,xor,and} (diff)
downloadkernel-qcow2-linux-e6942b7de2dfe44ebde9bae57dadece5abca9de8.tar.gz
kernel-qcow2-linux-e6942b7de2dfe44ebde9bae57dadece5abca9de8.tar.xz
kernel-qcow2-linux-e6942b7de2dfe44ebde9bae57dadece5abca9de8.zip
atomic: Provide atomic_{or,xor,and}
Implement atomic logic ops -- atomic_{or,xor,and}. These will replace the atomic_{set,clear}_mask functions that are available on some archs. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-generic/atomic64.h')
-rw-r--r--include/asm-generic/atomic64.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/asm-generic/atomic64.h b/include/asm-generic/atomic64.h
index 30ad9c86cebb..d48e78ccad3d 100644
--- a/include/asm-generic/atomic64.h
+++ b/include/asm-generic/atomic64.h
@@ -32,6 +32,10 @@ extern long long atomic64_##op##_return(long long a, atomic64_t *v);
ATOMIC64_OPS(add)
ATOMIC64_OPS(sub)
+ATOMIC64_OP(and)
+ATOMIC64_OP(or)
+ATOMIC64_OP(xor)
+
#undef ATOMIC64_OPS
#undef ATOMIC64_OP_RETURN
#undef ATOMIC64_OP