[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110325195136.GA7346@elte.hu>
Date: Fri, 25 Mar 2011 20:51:36 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: Andrey Kuzmin <andrey.v.kuzmin@...il.com>,
Tejun Heo <tj@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Chris Mason <chris.mason@...cle.com>,
linux-kernel@...r.kernel.org, linux-btrfs@...r.kernel.org
Subject: Re: [PATCH 2/2] mutex: Apply adaptive spinning on mutex_trylock()
* Steven Rostedt <rostedt@...dmis.org> wrote:
> On Fri, 2011-03-25 at 16:50 +0300, Andrey Kuzmin wrote:
> > On Fri, Mar 25, 2011 at 4:12 PM, Steven Rostedt <rostedt@...dmis.org> wrote:
> > > On Fri, 2011-03-25 at 14:13 +0300, Andrey Kuzmin wrote:
> > >> Turning try_lock into indefinitely spinning one breaks its semantics,
> > >> so deadlock is to be expected. But what's wrong in this scenario if
> > >> try_lock spins a bit before giving up?
> > >
> > > Because that will cause this scenario to spin that "little longer"
> > > always, and introduce latencies that did not exist before. Either the
> > > solution does not break this scenario, or it should not go in.
> >
> > Broken semantics and extra latency are two separate issues. If the
> > former is fixed, the latter is easily handled by introducing new
> > mutex_trylock_spin call that lets one either stick to existing
> > behavior (try/fail) or choose a new one where latency penalty is
> > justified by locking patterns.
> >
>
> For those wanting a more RT deterministic OS, I will argue against
> latency penalties.
Later mails from Tejun suggest that the benchmark results are varied, and that
it's not a clear win after all.
It's possible that if useless spinning is introduced then that might explain
such workload variations. I.e. it's not really 'latencies' but 'unnecessary
overhead spent spinning' - and also 'extra non-deterministic noise' - none of
which help consistent performance.
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists