[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070815081841.GA16551@osiris.boeblingen.de.ibm.com>
Date: Wed, 15 Aug 2007 10:18:41 +0200
From: Heiko Carstens <heiko.carstens@...ibm.com>
To: Herbert Xu <herbert@...dor.apana.org.au>
Cc: Chris Snook <csnook@...hat.com>, satyam@...radead.org,
clameter@....com, linux-kernel@...r.kernel.org,
linux-arch@...r.kernel.org, torvalds@...ux-foundation.org,
netdev@...r.kernel.org, akpm@...ux-foundation.org, ak@...e.de,
davem@...emloft.net, schwidefsky@...ibm.com, wensong@...ux-vs.org,
horms@...ge.net.au, wjiang@...ilience.com, cfriesen@...tel.com,
zlynx@....org, rpjday@...dspring.com, jesper.juhl@...il.com,
segher@...nel.crashing.org
Subject: Re: [PATCH 0/24] make atomic_read() behave consistently across all
architectures
On Wed, Aug 15, 2007 at 02:49:03PM +0800, Herbert Xu wrote:
> Chris Snook <csnook@...hat.com> wrote:
> >
> > Because atomic operations are generally used for synchronization, which requires
> > volatile behavior. Most such codepaths currently use an inefficient barrier().
> > Some forget to and we get bugs, because people assume that atomic_read()
> > actually reads something, and atomic_write() actually writes something. Worse,
> > these are architecture-specific, even compiler version-specific bugs that are
> > often difficult to track down.
>
> I'm yet to see a single example from the current tree where
> this patch series is the correct solution. So far the only
> example has been a buggy piece of code which has since been
> fixed with a cpu_relax.
Btw.: we still have
include/asm-i386/mach-es7000/mach_wakecpu.h: while (!atomic_read(deassert));
include/asm-i386/mach-default/mach_wakecpu.h: while (!atomic_read(deassert));
Looks like they need to be fixed as well.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists