Messages in this thread | | | Date | Mon, 3 Aug 2015 16:05:33 -0400 | From | Steven Rostedt <> | Subject | Re: [PATCH tip/core/rcu 19/19] rcu: Add fastpath bypassing funnel locking |
| |
On Thu, 30 Jul 2015 17:40:01 +0200 Peter Zijlstra <peterz@infradead.org> wrote:
> On Thu, Jul 30, 2015 at 08:34:52AM -0700, Paul E. McKenney wrote: > > > If the extra read before the cmpxchg() does not hurt, we should do the > > > same for mutex and make the above redundant. > > > > I am pretty sure that different hardware wants it done differently. :-/ > > So I agree that hard data would be good. > > > > I could probably further optimize the RCU code by checking for a > > single-node tree, but I am not convinced that this is worthwhile. > > However, skipping three cache misses in the uncontended case is > > definitely worthwhile, hence this patch. ;-) > > I was mostly talking about the !mutex_is_locked() && mutex_try_lock() > thing. The fast path thing makes sense.
Note, mutex does do this for the optimistic spin. See mutex_try_to_aquire().
-- Steve
| |