rcu: Remove redundant memory barrier from __call_rcu()
authorPaul E. McKenney <paul.mckenney@linaro.org>
Mon, 13 Aug 2012 23:34:12 +0000 (16:34 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 23 Sep 2012 14:42:51 +0000 (07:42 -0700)
commitfdab649b1aa732cd6e79654349088465cdff49af
tree5a8b75266eb451b0766f2c622744ae984ac7c3b5
parentc96ea7cfdd88d0a67c970502bc5313fede34b86b
rcu: Remove redundant memory barrier from __call_rcu()

The first memory barrier in __call_rcu() is supposed to order any
updates done beforehand by the caller against the actual queuing
of the callback.  However, the second memory barrier (which is intended
to order incrementing the queue lengths before queuing the callback)
is also between the caller's updates and the queuing of the callback.
The second memory barrier can therefore serve both purposes.

This commit therefore removes the first memory barrier.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcutree.c