Bug 97551 - [BDW] Blank screen and/or screen flickering when leaving screen powersave or after login prompt (LightDM)
Summary: [BDW] Blank screen and/or screen flickering when leaving screen powersave or ...
Status: CLOSED INVALID
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
: 93192 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-08-31 16:30 UTC by Walid Moghrabi
Modified: 2017-07-20 22:36 UTC (History)
3 users (show)

See Also:
i915 platform: BDW
i915 features: display/atomic


Attachments
Full dmesg (147.91 KB, text/plain)
2016-08-31 16:30 UTC, Walid Moghrabi
no flags Details
dmidecode (26.42 KB, text/plain)
2016-08-31 16:30 UTC, Walid Moghrabi
no flags Details
vbios dump (64.00 KB, application/octet-stream)
2016-08-31 16:31 UTC, Walid Moghrabi
no flags Details
Xorg.0.log (32.45 KB, text/x-log)
2016-08-31 16:31 UTC, Walid Moghrabi
no flags Details
dmesg before suspend (suspend/resume test) (147.91 KB, text/plain)
2016-08-31 16:39 UTC, Walid Moghrabi
no flags Details
dmesg after suspend (suspend/resume test) (156.65 KB, text/plain)
2016-08-31 16:39 UTC, Walid Moghrabi
no flags Details
XrandR in normal situation (no flickering) (12.15 KB, text/plain)
2016-08-31 16:49 UTC, Walid Moghrabi
no flags Details
XrandR in faulty situation (second screen flickering) (12.12 KB, text/plain)
2016-08-31 16:50 UTC, Walid Moghrabi
no flags Details

Description Walid Moghrabi 2016-08-31 16:30:09 UTC
Created attachment 126135 [details]
Full dmesg

Detailed system information:
============================
-- system architecture: x86_64
-- kernel version: 4.4.0-36-generic
-- Linux distribution: Ubuntu 16.04LTS Desktop
-- Machine or mother board model: Dell Latitude E7250 (BIOS: A13)
-- Display connector: DVI on E Series Dock Station, laptop screen off but I tried in many different configurations with different connections (DVI+VGA on station, external screen connected with HDMI directly on the laptop, dual DP on station, ... same situation in every situation. No problem on the laptop screen in mono display situation)
-- Intel driver version : xserver-xorg-video-intel 2.99.917+git1608291931.74e4c1~gd~x (amd64)


I'm running my Dell E7250 laptop with Ubuntu 16.04LTS (but had the same problem with Ubuntu 15.10) in a multiple head setup (2 external screens in 1080p connected with DVI on a Dell E Series docking station, laptop screen is off so using only the 2 external displays).

I have a very annoying problem with multiple displays and the Intel driver under Linux, there are 2 situations with same behaviour :

At first, when LightDM prompt for my login, only one screen is switched on in low resolution (probably 640x480)

After login in from LightDM prompt, if I'm too quick (that say, if I don't wait a few seconds before the second screen is correctly detected), then once logged sometimes my secondary display is flickering or even sometimes not detected (and thus blank) at all.


Second situation, when the screen goes blank when iddled (when I leave my laptop a few minutes for example), when getting back, at the login prompt (this time in the correct resolution), if I don't wait for the secondary screen to light up (and it lights up a lot slower than the primary one), then I encounter the same behaviour which means flickering screen (most of the times) or even, black screen. 

This never happens to the primary display, only the secondary.

In both situation, as a workaround, I found that moving to a console TTY (with Ctrl+Alt+F5 for example) then getting back to the graphical display (with Ctrl+Alt+F7) tends to recover a normal situation.
This works 90% of the times, sometimes not and I just do this again and then it works.

I would alsao add that in rare situations, the Xorg server simply crashes and the whole session with opened application is lost.

Least to say that it is extremely annoying and this last for a long time now since I have this setup for more than a year now and tried many kernel releases and intel driver version.
Currently running the latest Ubuntu 16.04LTS kernel and intel nightly driver thanks to oibaf's PPA but still, the problem persists.
Comment 1 Walid Moghrabi 2016-08-31 16:30:36 UTC
Created attachment 126136 [details]
dmidecode
Comment 2 Walid Moghrabi 2016-08-31 16:31:04 UTC
Created attachment 126137 [details]
vbios dump
Comment 3 Walid Moghrabi 2016-08-31 16:31:32 UTC
Created attachment 126138 [details]
Xorg.0.log
Comment 4 yann 2016-08-31 16:36:33 UTC
from dmesg we can note following trace:

[   11.335346] WARNING: CPU: 1 PID: 3374 at /build/linux-a2WvEb/linux-4.4.0/drivers/gpu/drm/i915/intel_ddi.c:780 intel_ddi_get_crtc_new_encoder+0x8d/0xa0 [i915]()
[   11.335348] 2 encoders on crtc for pipe A
[   11.335348] Modules linked in: xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject_ipv4 xt_tcpudp rfcomm bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables bnep binfmt_misc dell_wmi sparse_keymap dell_laptop dcdbas dell_smm_hwmon intel_rapl x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul arc4 aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iwlmvm mac80211 joydev serio_raw uvcvideo snd_hda_codec_hdmi iwlwifi videobuf2_vmalloc snd_usb_audio videobuf2_memops videobuf2_v4l2 snd_usbmidi_lib btusb videobuf2_core btrtl v4l2_common input_leds btbcm videodev cfg80211
[   11.335375]  qcserial btintel usb_wwan cdc_mbim usbserial bluetooth media cdc_wdm cdc_ncm usbnet mii dell_led snd_hda_codec_realtek snd_hda_codec_generic lpc_ich shpchp snd_hda_intel snd_soc_rt5640 snd_soc_ssm4567 snd_soc_rl6231 snd_hda_codec mei_me mei snd_soc_core snd_hda_core snd_hwdep snd_compress ac97_bus snd_pcm_dmaengine snd_pcm snd_seq_midi snd_seq_midi_event snd_rawmidi int3403_thermal 8250_fintek snd_seq snd_seq_device snd_timer snd elan_i2c soundcore dw_dmac 8250_dw int3402_thermal snd_soc_sst_acpi i2c_designware_platform spi_pxa2xx_platform processor_thermal_device i2c_designware_core dw_dmac_core dell_rbtn intel_smartconnect int340x_thermal_zone intel_soc_dts_iosf int3400_thermal acpi_thermal_rel mac_hid acpi_als acpi_pad kfifo_buf industrialio parport_pc ppdev lp parport autofs4 hid_generic
[   11.335400]  usbhid mmc_block psmouse i915 sdhci_pci i2c_algo_bit drm_kms_helper e1000e ahci syscopyarea sysfillrect libahci sysimgblt fb_sys_fops ptp pps_core drm wmi video fjes i2c_hid hid sdhci_acpi sdhci
[   11.335409] CPU: 1 PID: 3374 Comm: Xorg Not tainted 4.4.0-36-generic #55-Ubuntu
[   11.335410] Hardware name: Dell Inc. Latitude E7250/0TVD2T, BIOS A13 06/23/2016
[   11.335411]  0000000000000286 000000009cf1c994 ffff8804060339a8 ffffffff813f13b3
[   11.335413]  ffff8804060339f0 ffffffffc0298c98 ffff8804060339e0 ffffffff810810f2
[   11.335415]  ffff88040564b800 ffff8803edcb0000 ffff88040564b800 ffff88040556d400
[   11.335416] Call Trace:
[   11.335420]  [<ffffffff813f13b3>] dump_stack+0x63/0x90
[   11.335423]  [<ffffffff810810f2>] warn_slowpath_common+0x82/0xc0
[   11.335424]  [<ffffffff8108118c>] warn_slowpath_fmt+0x5c/0x80
[   11.335440]  [<ffffffffc024be2d>] intel_ddi_get_crtc_new_encoder+0x8d/0xa0 [i915]
[   11.335454]  [<ffffffffc024c4b1>] intel_ddi_pll_select+0x41/0x1360 [i915]
[   11.335464]  [<ffffffffc0087548>] ? drm_crtc_get_hv_timing+0x48/0x80 [drm]
[   11.335481]  [<ffffffffc024f866>] ? intel_dp_source_rates+0x46/0x70 [i915]
[   11.335496]  [<ffffffffc0235bed>] ? intel_plane_atomic_calc_changes+0x4d/0x6c0 [i915]
[   11.335501]  [<ffffffffc016e3bb>] ? drm_plane_helper_check_update+0xdb/0x190 [drm_kms_helper]
[   11.335504]  [<ffffffff811ef574>] ? __kmalloc_track_caller+0x1b4/0x250
[   11.335520]  [<ffffffffc021ea62>] haswell_crtc_compute_clock+0x12/0x30 [i915]
[   11.335535]  [<ffffffffc022de96>] intel_crtc_atomic_check+0x146/0x1e0 [i915]
[   11.335540]  [<ffffffffc0175ebb>] drm_atomic_helper_check_planes+0x14b/0x1c0 [drm_kms_helper]
[   11.335556]  [<ffffffffc0230610>] intel_atomic_check+0x190/0x6b0 [i915]
[   11.335567]  [<ffffffffc0099b8e>] drm_atomic_check_only+0x18e/0x590 [drm]
[   11.335577]  [<ffffffffc0098fbf>] ? drm_atomic_set_crtc_for_connector+0x6f/0xe0 [drm]
[   11.335587]  [<ffffffffc0099fa7>] drm_atomic_commit+0x17/0x60 [drm]
[   11.335592]  [<ffffffffc0177d86>] drm_atomic_helper_set_config+0x76/0xb0 [drm_kms_helper]
[   11.335600]  [<ffffffffc0088e32>] drm_mode_set_config_internal+0x62/0x100 [drm]
[   11.335609]  [<ffffffffc008d48c>] drm_mode_setcrtc+0x3cc/0x4f0 [drm]
[   11.335616]  [<ffffffffc007e742>] drm_ioctl+0x152/0x540 [drm]
[   11.335625]  [<ffffffffc008d0c0>] ? drm_mode_setplane+0x1b0/0x1b0 [drm]
[   11.335627]  [<ffffffff8122db94>] ? mntput+0x24/0x40
[   11.335629]  [<ffffffff8120f040>] ? __fput+0x190/0x220
[   11.335631]  [<ffffffff81220c1f>] do_vfs_ioctl+0x29f/0x490
[   11.335633]  [<ffffffff8120f10e>] ? ____fput+0xe/0x10
[   11.335636]  [<ffffffff8109ec26>] ? task_work_run+0x86/0xa0
[   11.335637]  [<ffffffff81220e89>] SyS_ioctl+0x79/0x90
[   11.335640]  [<ffffffff8182dfb2>] entry_SYSCALL_64_fastpath+0x16/0x71
[   11.335641] ---[ end trace 21642c63d6b54fef ]---
[   11.724281] ------------[ cut here ]------------
[   11.724309] WARNING: CPU: 1 PID: 3374 at /build/linux-a2WvEb/linux-4.4.0/drivers/gpu/drm/i915/intel_display.c:6442 intel_modeset_check_state+0x127/0x8a0 [i915]()
[   11.724310] attached crtc is active, but connector isn't
[   11.724311] Modules linked in: xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject_ipv4 xt_tcpudp rfcomm bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables bnep binfmt_misc dell_wmi sparse_keymap dell_laptop dcdbas dell_smm_hwmon intel_rapl x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul arc4 aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iwlmvm mac80211 joydev serio_raw uvcvideo snd_hda_codec_hdmi iwlwifi videobuf2_vmalloc snd_usb_audio videobuf2_memops videobuf2_v4l2 snd_usbmidi_lib btusb videobuf2_core btrtl v4l2_common input_leds btbcm videodev cfg80211
[   11.724341]  qcserial btintel usb_wwan cdc_mbim usbserial bluetooth media cdc_wdm cdc_ncm usbnet mii dell_led snd_hda_codec_realtek snd_hda_codec_generic lpc_ich shpchp snd_hda_intel snd_soc_rt5640 snd_soc_ssm4567 snd_soc_rl6231 snd_hda_codec mei_me mei snd_soc_core snd_hda_core snd_hwdep snd_compress ac97_bus snd_pcm_dmaengine snd_pcm snd_seq_midi snd_seq_midi_event snd_rawmidi int3403_thermal 8250_fintek snd_seq snd_seq_device snd_timer snd elan_i2c soundcore dw_dmac 8250_dw int3402_thermal snd_soc_sst_acpi i2c_designware_platform spi_pxa2xx_platform processor_thermal_device i2c_designware_core dw_dmac_core dell_rbtn intel_smartconnect int340x_thermal_zone intel_soc_dts_iosf int3400_thermal acpi_thermal_rel mac_hid acpi_als acpi_pad kfifo_buf industrialio parport_pc ppdev lp parport autofs4 hid_generic
[   11.724369]  usbhid mmc_block psmouse i915 sdhci_pci i2c_algo_bit drm_kms_helper e1000e ahci syscopyarea sysfillrect libahci sysimgblt fb_sys_fops ptp pps_core drm wmi video fjes i2c_hid hid sdhci_acpi sdhci
[   11.724380] CPU: 1 PID: 3374 Comm: Xorg Tainted: G        W       4.4.0-36-generic #55-Ubuntu
[   11.724381] Hardware name: Dell Inc. Latitude E7250/0TVD2T, BIOS A13 06/23/2016
[   11.724383]  0000000000000286 000000009cf1c994 ffff880406033b08 ffffffff813f13b3
[   11.724385]  ffff880406033b50 ffffffffc0292ad8 ffff880406033b40 ffffffff810810f2
[   11.724387]  ffff8804052d1000 0000000000000006 ffff880406626da0 ffff8800359f6000
[   11.724388] Call Trace:
[   11.724393]  [<ffffffff813f13b3>] dump_stack+0x63/0x90
[   11.724396]  [<ffffffff810810f2>] warn_slowpath_common+0x82/0xc0
[   11.724398]  [<ffffffff8108118c>] warn_slowpath_fmt+0x5c/0x80
[   11.724416]  [<ffffffffc02231f7>] intel_modeset_check_state+0x127/0x8a0 [i915]
[   11.724433]  [<ffffffffc02364fe>] ? intel_cleanup_plane_fb+0x4e/0x70 [i915]
[   11.724449]  [<ffffffffc022eddb>] intel_atomic_commit+0x4bb/0x6f0 [i915]
[   11.724466]  [<ffffffffc0099fc7>] drm_atomic_commit+0x37/0x60 [drm]
[   11.724473]  [<ffffffffc0177d86>] drm_atomic_helper_set_config+0x76/0xb0 [drm_kms_helper]
[   11.724483]  [<ffffffffc0088e32>] drm_mode_set_config_internal+0x62/0x100 [drm]
[   11.724493]  [<ffffffffc008d48c>] drm_mode_setcrtc+0x3cc/0x4f0 [drm]
[   11.724501]  [<ffffffffc007e742>] drm_ioctl+0x152/0x540 [drm]
[   11.724510]  [<ffffffffc008d0c0>] ? drm_mode_setplane+0x1b0/0x1b0 [drm]
[   11.724513]  [<ffffffff8122db94>] ? mntput+0x24/0x40
[   11.724516]  [<ffffffff8120f040>] ? __fput+0x190/0x220
[   11.724517]  [<ffffffff81220c1f>] do_vfs_ioctl+0x29f/0x490
[   11.724519]  [<ffffffff8120f10e>] ? ____fput+0xe/0x10
[   11.724522]  [<ffffffff8109ec26>] ? task_work_run+0x86/0xa0
[   11.724523]  [<ffffffff81220e89>] SyS_ioctl+0x79/0x90
[   11.724526]  [<ffffffff8182dfb2>] entry_SYSCALL_64_fastpath+0x16/0x71
[   11.724527] ---[ end trace 21642c63d6b54ff0 ]---
[   13.217023] e1000e: eno1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[   13.217051] IPv6: ADDRCONF(NETDEV_CHANGE): eno1: link becomes ready
[   14.184727] wlp2s0: authenticate with 08:5b:0e:0d:6c:26
[   14.190606] wlp2s0: send auth to 08:5b:0e:0d:6c:26 (try 1/3)
[   14.296645] wlp2s0: send auth to 08:5b:0e:0d:6c:26 (try 2/3)
[   14.298558] wlp2s0: authenticated
[   14.299200] wlp2s0: associate with 08:5b:0e:0d:6c:26 (try 1/3)
[   14.303664] wlp2s0: RX AssocResp from 08:5b:0e:0d:6c:26 (capab=0x431 status=0 aid=9)
[   14.312873] wlp2s0: associated
[   14.312903] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready
[   39.904453] audit_printk_skb: 54 callbacks suppressed
[   39.904456] audit: type=1400 audit(1472627194.923:30): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/bin/lxc-start" pid=4473 comm="apparmor_parser"
[   39.911357] audit: type=1400 audit(1472627194.931:31): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="lxc-container-default" pid=4479 comm="apparmor_parser"
[   39.911366] audit: type=1400 audit(1472627194.931:32): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="lxc-container-default-cgns" pid=4479 comm="apparmor_parser"
[   39.911371] audit: type=1400 audit(1472627194.931:33): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="lxc-container-default-with-mounting" pid=4479 comm="apparmor_parser"
[   39.911376] audit: type=1400 audit(1472627194.931:34): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="lxc-container-default-with-nesting" pid=4479 comm="apparmor_parser"
[   39.920030] Guest personality initialized and is inactive
[   39.920330] VMCI host device registered (name=vmci, major=10, minor=54)
[   39.920332] Initialized host personality
[   39.944382] NET: Registered protocol family 40
[  120.374512] ------------[ cut here ]------------
Comment 5 Walid Moghrabi 2016-08-31 16:39:30 UTC
Created attachment 126139 [details]
dmesg before suspend (suspend/resume test)
Comment 6 Walid Moghrabi 2016-08-31 16:39:53 UTC
Created attachment 126140 [details]
dmesg after suspend (suspend/resume test)
Comment 7 Walid Moghrabi 2016-08-31 16:49:43 UTC
Created attachment 126141 [details]
XrandR in normal situation (no flickering)
Comment 8 Walid Moghrabi 2016-08-31 16:50:36 UTC
Created attachment 126142 [details]
XrandR in faulty situation (second screen flickering)
Comment 9 Jari Tahvanainen 2016-12-09 12:50:53 UTC
*** Bug 93192 has been marked as a duplicate of this bug. ***
Comment 10 Jani Saarinen 2017-03-08 07:45:37 UTC
Walid, with latest changes on atomic/watermark can you test with latest drm-tip?
Comment 11 Walid Moghrabi 2017-03-08 09:59:43 UTC
I installed these releases today :

libdrm-intel1:amd64        2.4.75+git1702281830.5ee9cb~gd~x
libdrm-intel1:i386         2.4.75+git1702281830.5ee9cb~gd~x 
xserver-xorg-video-intel   2:2.99.917+git1703010733.78d7a0~gd~x

Thanks to the oibaf PPA on ubuntu 16.04.

Still no changes ... still issues with screens connected to my Dell E-Series dock.
Screens are very long to light up sometimes (generaly, one is up and running pretty fast but the second can take 10+ seconds to light up after the first one is up).
Going out from blanked screen (when leaving my computer idle for a while for example), one screen is ok but the second one flicker once in a while and it takes much longer to light up, sometimes it gets back to power save before returning live again.

Still same solution when it's doing this : I go to a TTY with ctrl+alt+F5 then I return to my X session with ctrl+alt+F7 ... most of the times, it fixes the issue, sometimes I have to do this 2-3 times.

It is not blocking since there is this workaround but it is very annoying.
Comment 12 Maarten Lankhorst 2017-05-24 07:26:18 UTC
The 4.4 kernel is very old and there have been a lot of changes to modesetting, especially for DP-MST.

What you could try is force CRTC assignments:
xrandr --output eDP1 --crtc 0 --output DP-1-1 --crtc 1 --output DP-1-2 --crtc 2

Could you try the above and test what happens?
Comment 13 Ricardo 2017-07-20 22:36:21 UTC
based on the lack of activity this bug will be closed... please if the problem is reproducible with latest configuration open a new bug including logs.


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.