Re: [RFC][PATCH 0/3] locking/mutex: Rewrite basic mutex

From: Peter Zijlstra
Date: Tue Aug 23 2016 - 17:50:40 EST


On Tue, Aug 23, 2016 at 02:53:07PM -0400, Linus Torvalds wrote:
> On Tue, Aug 23, 2016 at 12:17 PM, Davidlohr Bueso <dave@xxxxxxxxxxxx> wrote:
> >
> >> 46 files changed, 160 insertions(+), 1298 deletions(-)
> >
> > Oh my.
>
> Yeah, that looks like a pretty compelling argument right there, if
> there isn't any other really major downside to this...
>
> Peter, is there some downside that isn't obvious? Like "Well, this
> does regress performance because it now always does X"?

The biggest difference is the mutex fast paths, where they were a single
atomic and branch they're now a bit bigger. How much that matters in
practise is something that we'll have to benchmark a bit.

Esp. the mutex_lock() fast-path now also needs to load current, which
at least should be fairly hot but can still be a number of dependent
loads on some archs.