[Intel-gfx] [PATCH 2/2] drm/i915: properly clflush pwrites to phys objects

Daniel Vetter daniel at ffwll.ch
Tue Nov 29 18:22:53 CET 2011


On Tue, Nov 29, 2011 at 05:16:52PM +0100, Daniel Vetter wrote:
> On Tue, Nov 29, 2011 at 03:35:54PM +0000, Chris Wilson wrote:
> > On Tue, 29 Nov 2011 16:09:29 +0100, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> > > Usually results in (rare) cursor corruptions on platforms
> > > requiring physically addressed cursors.
> > 
> > So the phys cursor pages are set to WC upon creation, are we just
> > missing the mb()? Or more likely the CPUs don't have PAT and we are
> > being lazy in not detecting the error.
> 
> Yes, on reconsidering the tested-by is from a pentium m, which has working
> pat, and we do a wbinvd in the i8xx chipset flush, so I don't know anymore
> how this patch actually works.
> 
> But it seems to indeed fix the issue for at least one reporter and cursor
> update is about as far away from a perf critical path as possible, so who
> cares about such minor quibbles, it works ;-)

After some irc discussion with Dave Airlie I'll now try whether a simple
wmb(); to flush the wc cache isn't good enough. Will take at least a week
to run by testers and gathe feedback, though.
-Daniel
-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48



More information about the Intel-gfx mailing list