lkml.org 
[lkml]   [2004]   [Dec]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: What does atomic_read actually do?
    From
    Date
    On Sat, 2004-12-18 at 11:23 -0500, Joseph Seigh wrote:
    > It doesn't do anything that would actually guarantee that the fetch from
    > memory would be atomic as far as I can see, at least in the x86 version.

    define atomic....

    what linux atomics guarantee you is that you either "see" the old or the
    new value if you use atomic_* as the sole accessor API, with the
    footnote that this only holds if you don't forcefully misalign the
    atomic_t.

    if you want ordering guarantees on top... you need to use explicit
    bariers for that (wmb/rmb and friends).

    For the "no inbetween" rule, doing the read the way x86 does works on
    x86, since x86 makes sure that on the write side, no intermediate
    results become visible.


    -
    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: 2005-03-22 14:08    [W:0.020 / U:1.088 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site