[Intel-gfx] [PATCH] drm/i915: Unconditionally do fb tracking invalidate in set_domain

Daniel Vetter daniel at ffwll.ch
Sun Jun 28 23:56:24 PDT 2015


On Fri, Jun 26, 2015 at 05:02:49PM -0300, Paulo Zanoni wrote:
> 2015-06-26 14:35 GMT-03:00 Chris Wilson <chris at chris-wilson.co.uk>:
> > On Fri, Jun 26, 2015 at 07:35:16PM +0200, Daniel Vetter wrote:
> >> We can't elide the fb tracking invalidate if the buffer is already in
> >> the right domain since that would lead to missed screen updates. I'm
> >> pretty sure I've written this already before but must have gotten lost
> >> unfortunately :(
> >>
> >> v2: Chris observed that all internal set_domain users already
> >> correctly do the fb invalidate on their own, hence we can move this
> >> just into the set_domain ioctl instead.
> >>
> >> v3: I screwed up setting the invalidate ORIGIN_* correctly (Chris).
> >>
> >> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> >> Reported-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
> >> Cc: Paulo Zanoni <paulo.r.zanoni at intel.com>
> >> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> >
> > Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
> > -Chris
> 
> If you run:
> sudo ./kms_frontbuffer_tracking --psr-only --1p-only --use-small-modes
> 
> Without the patch, you get 9 failures:
> Subtest psr-1p-pri-sfb-multidraw-mmap-gtt: FAIL (10.979s)
> Subtest psr-1p-pri-sfb-multidraw-mmap-wc: FAIL (10.982s)
> Subtest psr-1p-pri-sfb-multidraw-pwrite: FAIL (9.448s)
> Subtest psr-1p-cur-sfb-multidraw-mmap-gtt: FAIL (11.208s)
> Subtest psr-1p-cur-sfb-multidraw-mmap-wc: FAIL (11.171s)
> Subtest psr-1p-cur-sfb-multidraw-pwrite: FAIL (8.966s)
> Subtest psr-1p-spr-sfb-multidraw-mmap-gtt: FAIL (11.536s)
> Subtest psr-1p-spr-sfb-multidraw-mmap-wc: FAIL (11.439s)
> Subtest psr-1p-spr-sfb-multidraw-pwrite: FAIL (10.043s)
> 
> With this patch, you get 0 failures \o/.
> 
> The "multidraw" subtest alternates between drawing types. So
> multidraw-mmap-gtt will alternate between mmap-gtt and mmap-cpu, then
> mmap-gtt and mmap-wc, then mmap-gtt and pwrite, then mmap-gtt and blt,
> then mmap-gtt and render.
> 
> Tested-by: Paulo Zanoni <paulo.r.zanoni at intel.com>

Thanks for testing&review, patch applied to dinq.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the Intel-gfx mailing list