[Bug 91562] [SKL][Linux] : Xrandr is not working as expected

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Sep 8 02:37:58 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=91562

--- Comment #19 from Chris Wilson <chris at chris-wilson.co.uk> ---
(In reply to Tvrtko Ursulin from comment #18)
> (In reply to Chris Wilson from comment #17)
> > (In reply to Tvrtko Ursulin from comment #16)
> > > (In reply to Chris Wilson from comment #15)
> > > > (In reply to Tvrtko Ursulin from comment #14)
> > > > > Created attachment 118122 [details]
> > > > > ddx debug log in Y tiling mode
> > > > > 
> > > > > With the DDX rebuilt to default to Y tiling, this logs shows that when
> > > > > "xrandr -o left" it abandons the Y tiled FB and goes back to X tiled.
> > > > 
> > > > It sets the rotation, and then the kernel rejects the setcrtc and so it is
> > > > forced to use a shadowfb, X without rotation, and perform manual rotations
> > > > (using the GPU of course!) from the Y-tiled frontbuffer to the X-tiled
> > > > framebuffer.
> > > 
> > > Does it try to go Y tiled when attempting to rotate, in the default build? 
> > 
> > It's tricky. The buffer cannot be exported and Y-tiling is so much slower
> > for common operations that I am not convinced it is worth it. It is possible
> > for the client to provide a Y-tiled buffer that we will then use. But since
> > the setcrtc failed...
> 
> So basically the reported black screen has nothing to do with hardware
> rotation, since hardware rotation is not supported since it requires Y
> tiling which the DDX won't attempt.

The scenario is the same, hw rotation is still requested. We depend on the
kernel reporting the failure to go back to manual rotation. So whilst the GTT
view should never be created, setting the rotation property during a setcrtc
would seem to be the trigger.

> And either way, since I could not reproduce the black screen, someone else
> will have to provide full debug logs for that case.
>  
> > > Interestingly in the Y tiled build there seems to be a path where it doesn't
> > > use fb modifiers ("[drm:intel_framebuffer_init] No Y tiling for legacy
> > > addfb").
> > 
> > Right, during the start up it tests whether the interface is deliberately
> > broken.
> 
> I am pretty sure I've seen it when requesting rotation, not on startup.

On reflection, we only try addfb2 if addfb says no (so everytime).

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20150908/99e229ff/attachment-0001.html>


More information about the intel-gfx-bugs mailing list