[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070913151738.4462fdf2.akpm@linux-foundation.org>
Date: Thu, 13 Sep 2007 15:17:38 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Benjamin Herrenschmidt <benh@...nel.crashing.org>
Cc: Nick Piggin <nickpiggin@...oo.com.au>,
Mathieu Desnoyers <mathieu.desnoyers@...ymtl.ca>,
linux-kernel@...r.kernel.org
Subject: Re: 2.6.23-rc4-mm1 compile error for ppc 32
On Sat, 08 Sep 2007 18:42:10 +0200
Benjamin Herrenschmidt <benh@...nel.crashing.org> wrote:
>
> > > If so, the finger points at this:
> > >
> > > static __inline__ void __clear_bit_unlock(int nr, volatile unsigned long
> > > *addr) {
> > > __asm__ __volatile__(LWSYNC_ON_SMP ::: "memory");
> > > __clear_bit(nr, addr);
> > > }
> > >
> > > which was added by Nick's powerpc-lock-bitops.patch. I am suspecting that
> > > this isn't pp32 code?
> >
> > Hmm, when LWSYNC_ON_SMP is a noop, it seems like it should probably
> > be an empty string instead of nothing? ("") That should make behaviour
> > more consistent I think.
>
> The wormhole is arch/ppc's hack to get to include/asm-powerpc...
>
> As for having LWSYNC_ON_SMP be "" ... that might be the best way but I'd
> rather not take chances right now and go for the quick fix of making
> __clear_bit_unlock() do
>
> LWSYNC_ON_SMP ""
>
> instead.
>
Like this?
--- a/include/asm-powerpc/bitops.h~powerpc-lock-bitops-fix
+++ a/include/asm-powerpc/bitops.h
@@ -226,7 +226,7 @@ static __inline__ void set_bits(unsigned
static __inline__ void __clear_bit_unlock(int nr, volatile unsigned long *addr)
{
- __asm__ __volatile__(LWSYNC_ON_SMP ::: "memory");
+ __asm__ __volatile__(LWSYNC_ON_SMP "" ::: "memory");
__clear_bit(nr, addr);
}
_
-
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