Bug 78494 - [uxa regression] [drm:i915_gem_do_execbuffer] 0 cliprects but dirt in cliprects fields
Summary: [uxa regression] [drm:i915_gem_do_execbuffer] 0 cliprects but dirt in cliprec...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: Other All
: highest blocker
Assignee: Daniel Vetter
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-05-09 15:03 UTC by Chris Wilson
Modified: 2016-11-22 09:02 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
workaround for uxa dirt in DR4 (1.57 KB, patch)
2014-05-13 11:41 UTC, Daniel Vetter
no flags Details | Splinter Review

Description Chris Wilson 2014-05-09 15:03:51 UTC
UXA feeds garbage into execbuffer. News at 11.
Comment 1 Daniel Vetter 2014-05-13 11:37:30 UTC
Oh dear. Workaround rolling in asap.
Comment 2 Daniel Vetter 2014-05-13 11:41:15 UTC
Created attachment 98972 [details] [review]
workaround for uxa dirt in DR4

Tested-by highly welcome.
Comment 3 Chris Wilson 2014-05-13 14:05:13 UTC
commit ea2ffaa17220ff906355465a878f019cc7091003
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Tue May 13 13:37:37 2014 +0200

    drm/i915: Work-around garbage DR4 from UXA
    
    Somehow UXA submits a completely bogus DR4 value since essentially
    forever. It was originally introduced in
    
    commit bade7d7d2505a10a8a7d24b084aff9742e2d6d64
    Author: Eric Anholt <eric@anholt.net>
    Date:   Fri Jun 6 14:03:25 2008 -0700
    
        Use the DRM for submitting batchbuffers when available.
    
    and dutifully copied around ever since. Since we want to keep the
    general dirt catching around just special case the UXA value.
    
    This regression was introduced in
    
    commit 9cb346648d9c529eccc5c7f30093e82d37004e37
    Author: Daniel Vetter <daniel.vetter@ffwll.ch>
    Date:   Thu Apr 24 08:09:11 2014 +0200
    
        drm/i915: Catch dirt in unused execbuffer fields
    
    Comment from Chris' review:
    
    "To be fair, it is a sensible value if one supposes a Region style API to
    cliprects. Under that API, DR[14] define the extents of the clip region,
    and ((0,0), (0,0)) [DR1==DR4==0] would mean all clipped, do not draw
    anything."
    
    v2: Pimp commit message a bit and remove the double space.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78494
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Jörg Otte <jrg.otte@gmail.com>
    Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Comment 4 Jari Tahvanainen 2016-11-22 09:02:56 UTC
Closing resolved+fixed. After >2 years assuming that commit ffd93f24 has fixed the issue.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.