From: Nick Piggin <npiggin@suse.de>
To: Scott Wood <scottwood@freescale.com>
Cc: linux-arch@vger.kernel.org, linuxppc-dev@ozlabs.org,
Ingo Molnar <mingo@elte.hu>,
paulus@samba.org
Subject: Re: [patch] powerpc: implement optimised mutex fastpaths
Date: Tue, 14 Oct 2008 09:06:22 +0200 [thread overview]
Message-ID: <20081014070621.GA2681@wotan.suse.de> (raw)
In-Reply-To: <20081013162020.GC19080@ld0162-tx32.am.freescale.net>
On Mon, Oct 13, 2008 at 11:20:20AM -0500, Scott Wood wrote:
> On Mon, Oct 13, 2008 at 11:15:47AM -0500, Scott Wood wrote:
> > On Sun, Oct 12, 2008 at 07:47:32AM +0200, Nick Piggin wrote:
> > > +static inline int __mutex_cmpxchg_lock(atomic_t *v, int old, int new)
> > > +{
> > > + int t;
> > > +
> > > + __asm__ __volatile__ (
> > > +"1: lwarx %0,0,%1 # mutex trylock\n\
> > > + cmpw 0,%0,%2\n\
> > > + bne- 2f\n"
> > > + PPC405_ERR77(0,%1)
> > > +" stwcx. %3,0,%1\n\
> > > + bne- 1b"
> > > + ISYNC_ON_SMP
> > > + "\n\
> > > +2:"
> > > + : "=&r" (t)
> > > + : "r" (&v->counter), "r" (old), "r" (new)
> > > + : "cc", "memory");
> >
> > This will break if the compiler picks r0 for &v->counter. Use "b" as the
> > constraint, or better yet do "lwarx %0, %y1", with a "Z" (v->counter)
> > constraint.
>
> Sorry, had a morning brain-fart there -- you're not using the base
> register.
OK no problem. Do you think it looks OK? Thanks for reviewing...
next prev parent reply other threads:[~2008-10-14 7:06 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-12 5:46 [patch] mutex: optimise generic mutex implementations Nick Piggin
2008-10-12 5:47 ` [patch] powerpc: implement optimised mutex fastpaths Nick Piggin
2008-10-13 1:18 ` Nick Piggin
2008-11-06 4:09 ` Paul Mackerras
2008-11-06 5:06 ` Nick Piggin
2008-10-13 16:15 ` Scott Wood
2008-10-13 16:20 ` Scott Wood
2008-10-14 7:06 ` Nick Piggin [this message]
2008-10-14 8:35 ` [patch] mutex: optimise generic mutex implementations Benjamin Herrenschmidt
2008-10-22 15:59 ` Ingo Molnar
2008-10-23 4:43 ` Benjamin Herrenschmidt
2008-10-23 7:02 ` Nick Piggin
2008-10-22 16:24 ` David Howells
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20081014070621.GA2681@wotan.suse.de \
--to=npiggin@suse.de \
--cc=linux-arch@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=mingo@elte.hu \
--cc=paulus@samba.org \
--cc=scottwood@freescale.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).