Created attachment 130651 [details]
The apitrace file that can reproduce the flicker
Opening some website in chrome/chromium can cause screen flicker on my kaby lake laptop. The screen will flash violently and display some garbled content on a black background. It's gone as soon as I close the offending tab with keyboard shortcut.
I tried to make screenshot during the flicker, the screenshot image looks all right, so that might be a display issue rather than rendering one. I captured the rendering commands using apitrace, and found replaying the trace will also cause the flicker. The trace is also attached here. I don't think I have found anything helpful in kernel or xorg logs. This occurs with both xf86-video-intel and modesetting driver in xorg.
Machine: Acer Aspire VX5-591G-72LY
Graphics: VGA compatible controller: Intel Corporation Device 591b (rev 04)
X server: 1.19.3
Tested with kernel 4.9.20, no flickering happens with the trace or browser. So it seems like a regression in 4.10 series
Please try with latest drm-tip if seen there too.
(In reply to Jani Saarinen from comment #2)
> Please try with latest drm-tip if seen there too.
Just built drm-tip. Even X won't start. So is there any other more stable branch that I might try? drm-next?
(EE) 0: /usr/lib/xorg-server/Xorg (OsLookupColor+0x139) [0x59c209]
(EE) 1: /usr/lib/libpthread.so.0 (__restore_rt+0x0) [0x7f26830c8fdf]
(EE) 2: /usr/lib/libc.so.6 (__strcmp_sse2_unaligned+0x1e) [0x7f2682da3cde]
(EE) 3: /usr/lib/xorg/modules/drivers/modesetting_drv.so (_init+0x59c9) [0x7f267f800fe9]
(EE) 4: /usr/lib/xorg-server/Xorg (RRChangeOutputProperty+0x1c7) [0x4feef7]
(EE) 5: /usr/lib/xorg/modules/drivers/modesetting_drv.so (_init+0x5e95) [0x7f267f801645]
(EE) 6: /usr/lib/xorg-server/Xorg (xf86RandR12Init+0x3a4) [0x4b8c14]
(EE) 7: /usr/lib/xorg-server/Xorg (xf86CrtcScreenInit+0x46) [0x4ac1e6]
(EE) 8: /usr/lib/xorg/modules/drivers/modesetting_drv.so (_init+0x393c) [0x7f267f7fcc0c]
(EE) 9: /usr/lib/xorg-server/Xorg (AddScreen+0xd7) [0x436bf7]
(EE) 10: /usr/lib/xorg-server/Xorg (InitOutput+0x430) [0x47caa0]
(EE) 11: /usr/lib/xorg-server/Xorg (InitFonts+0x216) [0x43a796]
(EE) 12: /usr/lib/libc.so.6 (__libc_start_main+0xf1) [0x7f2682d33511]
(EE) 13: /usr/lib/xorg-server/Xorg (_start+0x2a) [0x42464a]
(EE) 14: ? (?+0x2a) [0x2a]
(EE) Segmentation fault at address 0x0
Fatal server error:
(EE) Caught signal 11 (Segmentation fault). Server aborting
Please consult the The X.Org Foundation support
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE) Server terminated with error (1). Closing log file.
Unable to run X server
Updated kernel to 4.10.10, everything seems fine for now. Flicker is no longer seen from Chrome or apitrace replay.
No, it's still happening on 4.10.10. Although not as frequent.
I'm not able to reproduce it locally with the nightly kernel.
Is there anything in dmesg when you hit this issue? Seems like it might be a mesa issue rather than kernel.
Now it has become subtle indeed.
With the same version of mesa, 4.9 series kernel works all right, 4.10.6 can
steadily reproduce with the trace. With 4.10.10, it cannot be reproduced with the attached trace but still happens sometime, and I haven't found a stable reproducer.
I don't have a lot of time to compile and test kernels, but I might try drm-next these days in my spare time.
Created attachment 130939 [details]
Another trace of google chrome that caused flicker on 4.10.10
I just built a drm-next kernel and tested. It seems this bug is not happening any more. Marking this bug as closed for now.