With normal compile, Xorg starts up but mouse and keyboard are unresponsive. With enable-debug=full compile, Xorg fails to start up: [ 1632.814] (EE) 0: /usr/bin/X (xorg_backtrace+0x56) [0x55faada9ad46] [ 1632.814] (EE) 1: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fe7834a2000+0xafd96) [0x7fe783551d96] [ 1632.814] (EE) 2: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fe7834a2000+0xaffe4) [0x7fe783551fe4] [ 1632.814] (EE) 3: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fe7834a2000+0xc9940) [0x7fe78356b940] [ 1632.814] (EE) 4: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fe7834a2000+0xc826e) [0x7fe78356a26e] [ 1632.814] (EE) 5: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fe7834a2000+0xcb2c6) [0x7fe78356d2c6] [ 1632.814] (EE) 6: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fe7834a2000+0xce47c) [0x7fe78357047c] [ 1632.814] (EE) 7: /usr/bin/X (WakeupHandler+0xaa) [0x55faad94011a] [ 1632.815] (EE) 8: /usr/bin/X (WaitForSomething+0x1c3) [0x55faada97ff3] [ 1632.815] (EE) 9: /usr/bin/X (0x55faad8e4000+0x57211) [0x55faad93b211] [ 1632.815] (EE) 10: /usr/bin/X (0x55faad8e4000+0x5b596) [0x55faad93f596] [ 1632.815] (EE) 11: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf5) [0x7fe787226b45] [ 1632.815] (EE) 12: /usr/bin/X (0x55faad8e4000+0x4590e) [0x55faad92990e] [ 1632.815] (EE) [ 1632.815] (EE) Fatal server error: [ 1632.815] (EE) assert_scanout:531 assertion 'width == info.width && height == info.height' failed 46caee86db0fb32b16213893c79d9c1a21ed0883 is the first bad commit commit 46caee86db0fb32b16213893c79d9c1a21ed0883 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Wed Apr 20 21:37:35 2016 +0100 sna: Fix reporting of errno after setcrtc failure As we now do more syscalls after the setcrtc, we cannot rely on errno storing the pertinent error code. Instead we have to save it immediately after the drmIoctl() and propagate that back. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Created attachment 123747 [details] xorg-log-debugfull
btw looks like there is another issue after this one - I can't confirm it is completely independent until this issue is resolved but after reverting 46caee there are glitches which bisect to: 34bc024bf2c721f27cf17acbf8c46783d62f8d08 sna: Do not force ping-pong migration for TearFree + NoAccel I will attach a log anyway, though it seems more likely it is a different issue.
Created attachment 123750 [details] xorg-log-glitches Log from current git with 46caee reverted, problems with 34bc02
I think I see the cause for the assertion failure, when switching from full-screen to single-crtc flipping - it ended up keeping the common untransformed TearFree buffer to reuse for the local transformed CRTC rendering. That should be fixed now.. The glitches I presume might be bug 95638?
Created attachment 123784 [details] xorg-log-34f63f28c8f3 > That should be fixed now.. The assert still occurs with latest git (34f63f28c8f3). Log attached. > The glitches I presume might be bug 95638? Bug #95638 - Invalid bug number?
Created attachment 123795 [details] [review] sna-Fix-assert_scanout-regression.patch The issue looks like a bug in the bisected commit (the "== 0" at end of drmIoctl line was missed), this patch reverts to the previous behaviour.
With patch applied to latest git glitches still occur. Reverting "sna: Do not force ping-pong migration for TearFree + NoAccel" fixes it.
(In reply to Chris Bainbridge from comment #6) > Created attachment 123795 [details] [review] [review] > sna-Fix-assert_scanout-regression.patch > > The issue looks like a bug in the bisected commit (the "== 0" at end of > drmIoctl line was missed), this patch reverts to the previous behaviour. I didn't even spot it when looking at the commit :( Thanks! The result would be that we didn't notice the modeset and used the old flip buffer (as the flips are reported after the change is in effect). commit ab3ab412a459a95e94707a4e39a18790ee04e6e3 Author: Chris Bainbridge <chris.bainbridge@gmail.com> Date: Tue May 17 07:26:10 2016 +0100 sna: Fix increment of modeset serial after applying CRTC We track how many mode sets have been made in order to detect stale flips (i.e. a sequence that crosses a mode change). This was broken by the logic inversion in setcrc in 46caee86db0f ("sna: Fix reporting of errno after setcrtc failure") References: https://bugs.freedesktop.org/show_bug.cgi?id=95401 Signed-off-by: Chris Bainbridge <chris.bainbridge@gmail.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
I meant bug 95368, but not this was a different issue. Please try: commit a508b11bde9f3119b49b3e0f652587efb9e037af Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue May 17 07:55:03 2016 +0100 sna: Don't skip migration-to-GPU for TearFree In 46caee86db0f ("sna: Fix reporting of errno after setcrtc failure"), the intention was to avoid reporting a fail to migrate whilst wedged for a simple copy from the frontbuffer to TearFree's shadow buffer. However, by skipping the migration, we never flushed any dirt from the CPU buffer prior to doing the TearFree flip. References: https://bugs.freedesktop.org/show_bug.cgi?id=95401#c7 References: https://bugs.freedesktop.org/show_bug.cgi?id=95414#c4 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Both issues now fixed. Thanks.
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.