Created attachment 101306 [details] Xorg log Since 3932e97 "sna/dri2: Allow TearFree flipping to individual CRTC", when using two monitors, one will turn off as soon as something like chromium is running in fullscreen.
Created attachment 101308 [details] dmesg with drm.debug=0x06
commit e2bfa715a9e115921263d572b9f4c496b550a494 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue Jun 10 21:28:32 2014 +0100 sna/dri2: Check that the window covers the whole CRTC before xchg Fixes TearFre regression from commit 3932e97057fca16615adaefbc1eb25a0d51a1d8b [2.99.912] Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Mon Jun 9 08:58:15 2014 +0100 sna/dri2: Allow TearFree flipping to individual CRTC Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Hmm, this happens on current git. Also the window does cover the whole crtc. This consistently fails: Start glxgears, move it to the second monitor, put it in fullscreen, put it out of fullscreen. Screen switches off.
Created attachment 101312 [details] hopefully part of Xorg.0.log with full debug output
Ah, jumped to a conclusion as the kernel log seemed familiar. This should fix it: commit 83c0f034454ef0f474126a3398e5e790ac5ef842 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Wed Jun 18 16:51:46 2014 +0100 sna: Pass desired CRTC viewport for completing single CRTC flips We cannot simply compare against the crtc->shadow_bo for all our needs, so pass in exactly the setup we want and apply that. In particular this is required when flipping away from the single CRTC setup on secondary pipes. Fixes TearFree multi-monitor regression from commit 3932e97057fca16615adaefbc1eb25a0d51a1d8b [2.99.912] Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Mon Jun 9 08:58:15 2014 +0100 sna/dri2: Allow TearFree flipping to individual CRTC Reported-by: Leo Wolf <jclw@ymail.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=80191
Yes, that works. Thank you!
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.