lkml.org 
[lkml]   [2007]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [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@redhat.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 linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-08-15 10:21    [W:0.021 / U:30.844 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site