Messages in this thread | | | Date | Tue, 10 Dec 2013 18:25:28 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH v5 tip/core/locking 5/7] Documentation/memory-barriers.txt: Downgrade UNLOCK+LOCK |
| |
On Tue, Dec 10, 2013 at 09:12:47AM -0800, Paul E. McKenney wrote: > > The way I read the above it says that you need > > smp_mb__after_unlock_lock() when the UNLOCK and LOCK are on the same > > variable. That doesn't make sense, I thought that was the one case we > > all agreed on it would indeed be a full barrier without extra trickery. > > On x86, sure, but smp_mb__after_unlock_lock() is nothingness on x86 > anyway. Other architectures might benefit from requiring that the > smp_mb__after_unlock_lock() be used in this case.
Confused, UNLOCK X, LOCK X, must always be fully serializing. That's the entire purpose of the thing.
The only place you can go play games (and clearly we are going there) is when the UNLOCK and LOCK are on different variables.
| |