David S. Miller writes:

> This is the first time I've seen that ?mb() should order I/O
> accesses.  My sparc64 versions certainly don't handle that
> correctly.  :-)  That being said, I think we're all being
> educated to so me extent in this thread.

Certainly driver writers expect that the combination of a wmb()
followed by a writel() will enforce ordering between any previous
writes to memory and the I/O write in the writel (as in the typhoon.c
example that Anton posted).  On ppc64 this means that we have to use a
sync instruction rather than any lighter-weight memory barrier for
wmb.

Paul.

Reply via email to