[lkml]   [2005]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] Fix RCU race in access of nohz_cpu_mask
"Paul E. McKenney" <> 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
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-12-12 05:35    [W:0.159 / U:0.140 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site