aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2015-04-07 15:45:41 -0400
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2015-05-27 15:57:28 -0400
commitee7c29be3695996536395f647e8a2ed6b1ab3a0d (patch)
treebf95316c3de33b26493c460bd69e9144947c0e4f
parentd956028e99b30726b0bce0ca684b40b1ad67b514 (diff)
documentation: Update rcu_dereference.txt based on WG21 discussions
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>
-rw-r--r--Documentation/RCU/rcu_dereference.txt5
1 files changed, 5 insertions, 0 deletions
diff --git a/Documentation/RCU/rcu_dereference.txt b/Documentation/RCU/rcu_dereference.txt
index ceb05da5a5ac..2d05c9241a33 100644
--- a/Documentation/RCU/rcu_dereference.txt
+++ b/Documentation/RCU/rcu_dereference.txt
@@ -193,6 +193,11 @@ o Be very careful about comparing pointers obtained from
193 pointer. Note that the volatile cast in rcu_dereference() 193 pointer. Note that the volatile cast in rcu_dereference()
194 will normally prevent the compiler from knowing too much. 194 will normally prevent the compiler from knowing too much.
195 195
196 However, please note that if the compiler knows that the
197 pointer takes on only one of two values, a not-equal
198 comparison will provide exactly the information that the
199 compiler needs to deduce the value of the pointer.
200
196o Disable any value-speculation optimizations that your compiler 201o Disable any value-speculation optimizations that your compiler
197 might provide, especially if you are making use of feedback-based 202 might provide, especially if you are making use of feedback-based
198 optimizations that take data collected from prior runs. Such 203 optimizations that take data collected from prior runs. Such