[patch 2/2] powerpc: optimise smp_wmb
npiggin at suse.de
Thu May 22 01:47:02 EST 2008
On Wed, May 21, 2008 at 11:43:00AM -0400, Benjamin Herrenschmidt wrote:
> On Wed, 2008-05-21 at 17:34 +0200, Nick Piggin wrote:
> > On Wed, May 21, 2008 at 11:26:32AM -0400, Benjamin Herrenschmidt wrote:
> > >
> > > On Wed, 2008-05-21 at 16:12 +0200, Nick Piggin wrote:
> > > > lwsync is the recommended method of store/store ordering on caching enabled
> > > > memory. For those subarchs which have lwsync, use it rather than eieio for
> > > > smp_wmb.
> > >
> > > Yuck... existence of lwsync depends on the processor at boot time...
> > Not according to the __stringify(LWSYNC) that I just removed. At least,
> > presumably it is always present on 64 bit processors, and 32 bit ones
> > will be no worse off as they'll continue just using eieio.
> No, it doesn't exist on power3, but it degrades into a sync
OK, but I just don't understand what the problem is... your synch.h has
# define LWSYNC lwsync
# define LWSYNC sync
And LWSYNC is then used for rmb()... how was that OK but this not?
More information about the Linuxppc-dev