Commit 7e8b1e78 authored by Richard Braun's avatar Richard Braun Committed by Paul E. McKenney

Documentation: Memory barrier semantics of atomic_xchg()

Add atomic_xchg() to documentation for atomic operations and
memory barriers.
Signed-off-by: default avatarRichard Braun <rbraun@sceen.net>
Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: default avatarJosh Triplett <josh@joshtriplett.org>
parent 52494535
...@@ -253,6 +253,8 @@ This performs an atomic exchange operation on the atomic variable v, setting ...@@ -253,6 +253,8 @@ This performs an atomic exchange operation on the atomic variable v, setting
the given new value. It returns the old value that the atomic variable v had the given new value. It returns the old value that the atomic variable v had
just before the operation. just before the operation.
atomic_xchg requires explicit memory barriers around the operation.
int atomic_cmpxchg(atomic_t *v, int old, int new); int atomic_cmpxchg(atomic_t *v, int old, int new);
This performs an atomic compare exchange operation on the atomic value v, This performs an atomic compare exchange operation on the atomic value v,
......
...@@ -1685,6 +1685,7 @@ explicit lock operations, described later). These include: ...@@ -1685,6 +1685,7 @@ explicit lock operations, described later). These include:
xchg(); xchg();
cmpxchg(); cmpxchg();
atomic_xchg();
atomic_cmpxchg(); atomic_cmpxchg();
atomic_inc_return(); atomic_inc_return();
atomic_dec_return(); atomic_dec_return();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment