summaryrefslogtreecommitdiff
path: root/Documentation/RCU/rcu_dereference.txt
AgeCommit message (Collapse)AuthorFilesLines
2019-03-27doc: Describe choice of rcu_dereference() APIs and __rcu usagePaul E. McKenney1-0/+103
Reported-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
2017-12-05doc: De-emphasize smp_read_barrier_dependsPaul E. McKenney1-5/+1
This commit keeps only the historical and low-level discussion of smp_read_barrier_depends(). Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> [ paulmck: Adjusted to allow for David Howells feedback on prior commit. ]
2017-08-17doc: No longer allowed to use rcu_dereference on non-pointersPaul E. McKenney1-40/+21
There are too many ways for the compiler to optimize (that is, break) dependencies carried via integer values, so it is now permissible to carry dependencies only via pointers. This commit catches up some of the documentation on this point. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
2017-04-12doc: Update the comparisons rule in rcu_dereference.txtMichalis Kokologiannakis1-0/+9
When an RCU-protected pointer is fetched but never dereferenced rcu_access_pointer() should be used in place of rcu_dereference(). This commit explicitly records this very fact in Documentation/ RCU/rcu_dereference.txt, in order to prevent the usage of rcu_dereference() in comparisons. Signed-off-by: Michalis Kokologiannakis <mixaskok@gmail.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
2015-07-16documentation: Fix spelling of "operators"Paul E. McKenney1-1/+1
Reported-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
2015-05-27Merge branches 'array.2015.05.27a', 'doc.2015.05.27a', 'fixes.2015.05.27a', ↵Paul E. McKenney1-0/+5
'hotplug.2015.05.27a', 'init.2015.05.27a', 'tiny.2015.05.27a' and 'torture.2015.05.27a' into HEAD array.2015.05.27a: Remove all uses of RCU-protected array indexes. doc.2015.05.27a: Docuemntation updates. fixes.2015.05.27a: Miscellaneous fixes. hotplug.2015.05.27a: CPU-hotplug updates. init.2015.05.27a: Initialization/Kconfig updates. tiny.2015.05.27a: Updates to Tiny RCU. torture.2015.05.27a: Torture-testing updates.
2015-05-27documentation: Update rcu_dereference.txt based on WG21 discussionsPaul E. McKenney1-0/+5
This commit provides another caveat for the care and feeding of pointers returned by rcu_dereference() that was pointed out in discussions within the C++ standards committee. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
2015-05-27documentation: RCU-protected array indexes no longer supportedPaul E. McKenney1-21/+12
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
2014-04-29documentation: Record rcu_dereference() value mishandlingPaul E. McKenney1-0/+371
Recent LKML discussings (see http://lwn.net/Articles/586838/ and http://lwn.net/Articles/588300/ for the LWN writeups) brought out some ways of misusing the return value from rcu_dereference() that are not necessarily completely intuitive. This commit therefore documents what can and cannot safely be done with these values. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org>