Re: Potential 2.2.8 scheduler bugs

Richard Henderson (rth@twiddle.net)
Tue, 18 May 1999 10:24:03 -0700


On Fri, May 14, 1999 at 01:59:39AM +0200, Andrea Arcangeli wrote:
> I thought that running wmb() in cpu 1 was forcing the CPU1 to write
> ordered in memory, but nothing more. So according to me writing in-order
> using CPU 1, doesn't imply that CPU 2 will be forced to read in-order too
> from memory (and even if it will be forced in x86 that's not enough).
>
> This is why I think that to force CPU 2 to read in-order we must use
> rmb(), even if the other cpu uses wmb() to allow us to read the right
> thing if we synchronize our reads too.
>
> I would like to know if my understanding of wmb() is wrong ;).

Your understanding is correct. Both Alpha and Sparc64 SMP
will be affected by out of order reads without an rmb.

r~

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/