Re: MMIO and gcc re-ordering issue

From: Benjamin Herrenschmidt
Date: Thu Jun 05 2008 - 04:44:54 EST


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.


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