MMIO and gcc re-ordering issue

Arjan van de Ven arjan at
Tue May 27 13:42:33 EST 2008

On Mon, 26 May 2008 19:28:12 -0700 (PDT)
David Miller <davem at> wrote:

> From: Benjamin Herrenschmidt <benh at>
> Date: Tue, 27 May 2008 12:15:40 +1000
> > Some of them. USB comes to mind. I'd be happy to make it "the rule"
> > and document that MMIO vs. coherent access aren't implicitely
> > ordered. I would still keep them ordered on powerpc for a little
> > while tho until I'm happy enough with driver auditing.
> > 
> > But heh, it's you who was telling me that it would be a bad
> > engineering decision and we had to make everybody look like x86 &
> > fully ordered :-) I decided to agree back then and stuck all those
> > nasty heavy barriers in the powerpc variants of readl/writel/...
> I still believe this.
> It's just another complicated thing for driver authors to get wrong.
> The other side of the coin is of course the cost.
> The only thing I am absolutely sure of is that we should make a
> decision fast, document it, and just stick to it.

... and try to find a way to test for it at runtime or compile time.

either via sparse or some fancy lockdep like "device store" thing?
If we can't test for it and it doesn't show up on x86 ... it'll just be
an eterrnal chase.

If you want to reach me at my work email, use arjan at
For development, discussion and tips for power savings, 

More information about the Linuxppc-dev mailing list