diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2015-09-17 11:18:32 -0400 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2015-10-06 14:22:57 -0400 |
commit | ad2ad5d31f90fc6fb269e9be244224cecfc8b400 (patch) | |
tree | 514da7f8d0ff06b41f1e0c553c10188ce9cc5814 /Documentation/memory-barriers.txt | |
parent | b672adf8cfb822781ab904343e5de0297ee117ed (diff) |
documentation: Add lockless_dereference()
The recently added lockless_dereference() macro is not present in the
Documentation/ directory, so this commit fixes that.
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Diffstat (limited to 'Documentation/memory-barriers.txt')
-rw-r--r-- | Documentation/memory-barriers.txt | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Documentation/memory-barriers.txt b/Documentation/memory-barriers.txt index d336e4d42029..8e7cf9ad3db1 100644 --- a/Documentation/memory-barriers.txt +++ b/Documentation/memory-barriers.txt | |||
@@ -1710,6 +1710,17 @@ There are some more advanced barrier functions: | |||
1710 | operations" subsection for information on where to use these. | 1710 | operations" subsection for information on where to use these. |
1711 | 1711 | ||
1712 | 1712 | ||
1713 | (*) lockless_dereference(); | ||
1714 | This can be thought of as a pointer-fetch wrapper around the | ||
1715 | smp_read_barrier_depends() data-dependency barrier. | ||
1716 | |||
1717 | This is also similar to rcu_dereference(), but in cases where | ||
1718 | object lifetime is handled by some mechanism other than RCU, for | ||
1719 | example, when the objects removed only when the system goes down. | ||
1720 | In addition, lockless_dereference() is used in some data structures | ||
1721 | that can be used both with and without RCU. | ||
1722 | |||
1723 | |||
1713 | (*) dma_wmb(); | 1724 | (*) dma_wmb(); |
1714 | (*) dma_rmb(); | 1725 | (*) dma_rmb(); |
1715 | 1726 | ||