[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20061208171816.GG31068@flint.arm.linux.org.uk>
Date: Fri, 8 Dec 2006 17:18:17 +0000
From: Russell King <rmk+lkml@....linux.org.uk>
To: Christoph Lameter <clameter@....com>
Cc: David Howells <dhowells@...hat.com>,
Nick Piggin <nickpiggin@...oo.com.au>, torvalds@...l.org,
akpm@...l.org, linux-arm-kernel@...ts.arm.linux.org.uk,
linux-kernel@...r.kernel.org, linux-arch@...r.kernel.org
Subject: Re: [PATCH] WorkStruct: Implement generic UP cmpxchg() where an arch doesn't support it
On Fri, Dec 08, 2006 at 09:06:00AM -0800, Christoph Lameter wrote:
> On Fri, 8 Dec 2006, David Howells wrote:
>
> > > It is the most universal atomic instruction that I know of.
> >
> > I think TAS-type things and XCHG-type things are more common.
>
> Huh? The most popular architectures are i386 x86_64 sparc ia64 etc which
> all have one or the other form of cmpxchg (some issues with early sparc
> and i386).
According to the latest figures, 621 million ARM processors were
shipped in Q3, which equates to about 78 processors per second.
(taken from http://www.arm.com/news/15300.html).
I'd like to know the figures for these other so-called "popular
architectures".
But in any case that's an utterly irrelevant point to the argument
at hand.
> > In fact I think more things have LL/SC than have CMPXCHG.
>
> LL/SC can be easily used to come up with a cmpxchg equivalent.
As proven previously the reverse is also true. And as shown previously
the cheaper out of the two for all platforms is the LL/SC based
implementation, where the architecture specific implementation can
be _either_ LL/SC based or cmpxchg based depending on what is
supported in their hardware.
I'm going to keep saying this until people get it.
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
-
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