[patch] mutex: optimise generic mutex implementations
Nick Piggin
npiggin at suse.de
Thu Oct 23 18:02:08 EST 2008
On Thu, Oct 23, 2008 at 03:43:58PM +1100, Benjamin Herrenschmidt wrote:
> On Wed, 2008-10-22 at 17:59 +0200, Ingo Molnar wrote:
> > * Nick Piggin <npiggin at suse.de> wrote:
> >
> > > Speed up generic mutex implementations.
> > >
> > > - atomic operations which both modify the variable and return something imply
> > > full smp memory barriers before and after the memory operations involved
> > > (failing atomic_cmpxchg, atomic_add_unless, etc don't imply a barrier because
> > > they don't modify the target). See Documentation/atomic_ops.txt.
> > > So remove extra barriers and branches.
> > >
> > > - All architectures support atomic_cmpxchg. This has no relation to
> > > __HAVE_ARCH_CMPXCHG. We can just take the atomic_cmpxchg path unconditionally
> > >
> > > This reduces a simple single threaded fastpath lock+unlock test from 590 cycles
> > > to 203 cycles on a ppc970 system.
> > >
> > > Signed-off-by: Nick Piggin <npiggin at suse.de>
> >
> > no objections here. Lets merge these two patches via the ppc tree, so
> > that it gets testing on real hardware as well?
> >
> > Acked-by: Ingo Molnar <mingo at elte.hu>
>
> Allright but in that case it will be after -rc1 unless I manage to sneak
> something in tomorrow before linux closes the merge window.
>
> I can't get an update today.
Fine with me.
Thanks,
Nick
More information about the Linuxppc-dev
mailing list