lkml.org 
[lkml]   [2005]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] Fix RCU race in access of nohz_cpu_mask
    "Paul E. McKenney" <paulmck@us.ibm.com> wrote:
    >
    > 1. wmb() guarantees that any writes preceding the wmb() will
    > be seen by the interconnect before any writes following the
    > wmb(). But this applies -only- to the writes executed by
    > the CPU doing the wmb().
    >
    > 2. rmb() guarantees that any changes seen by the interconnect
    > preceding the rmb() will be seen by any reads following the
    > rmb(). Again, this applies only to reads executed by the
    > CPU doing the wmb(). However, the changes might be due to
    > any CPU.
    >
    > 3. mb() combines the guarantees made by rmb() and wmb().

    So foo_mb() in preemptible code is potentially buggy.

    I guess we assume that a context switch accidentally did enough of the
    right types of barriers for things to work OK.
    -
    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-12-12 05:35    [W:4.038 / U:5.736 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site