My understanding was that on x86, loads could pass stores in general,
i.e. a later load could be performed before an earlier store. I guess
that can't be true for uncached loads, but could a cacheable load be
performed before an earlier uncached store?
I just wish we had even one actual example of things going wrong with
the current rules we have on powerpc to motivate changing to this
model.
That leaves a gulf between the extremely strongly ordered writel
etc. and the extremely weakly ordered __writel etc. The current
powerpc scheme is fine for a lot of drivers but your proposal would
leave us no way to deliver it to them.
Paul.
--