Re: MMIO and gcc re-ordering issue

Benjamin Herrenschmidt
2008-06-05T08:44:41Z

On Thu, 2008-06-05 at 10:40 +0200, Jes Sorensen wrote:
> Jesse Barnes wrote:
> > Now, in hindsight, using a PIO write set & test flag approach in
> > writeX/spin_unlock (ala powerpc) might have been a better approach, but iirc
> > that never came up in the discussion, probably because we were focused on PCI
> > posting and not uncached vs. cached ordering.
>
> Hi Jesse,
>
> I am going to take a stab at implementing this so we can see how much
> of an impact it will have.

Note that the powerpc implementation currently clears the flag
on spin_lock and tests it on unlock. We are considering changing
that to not touch the flag on spin_lock and just clear it whenever
we do a sync (ie, on unlock, on explicit mmiowb, and possibly even
on readl's where we happen to do sync's).

Ben.