[Bug 94822] New: System hangs when some video output is disabled/enabled on Skylake platform in double/triple display configuration

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Apr 4 16:32:08 UTC 2016


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

            Bug ID: 94822
           Summary: System hangs when some video output is
                    disabled/enabled on Skylake platform in double/triple
                    display configuration
           Product: DRI
           Version: unspecified
          Hardware: x86-64 (AMD64)
                OS: Linux (All)
            Status: NEW
          Severity: normal
          Priority: medium
         Component: DRM/Intel
          Assignee: intel-gfx-bugs at lists.freedesktop.org
          Reporter: echerkasov at dev.rtsoft.ru
        QA Contact: intel-gfx-bugs at lists.freedesktop.org
                CC: intel-gfx-bugs at lists.freedesktop.org
     i915 platform: SKL

Created attachment 122705
  --> https://bugs.freedesktop.org/attachment.cgi?id=122705&action=edit
Dmesg log, xrandr and intel_reg_dump output

==Reproduce steps==
-------------------------------

How to reproduce:
1. Connect at least two displays to Intel Skylake platform;
2. Boot some decent Linux on it;
3. If system successfully boots up, try to manually disable/enable some video
output, e.g. via xrandr:
    xrandr --output eDP1 --off
    xrandr --outout eDP1 --auto
Please note that several attempts may be required.
4. If it does not hang, try to enable/disable different video outputs:
    xrandr --output HDMI1 --off
    xrandr --output HDMI1 --auto
    or
    xrandr --output DP1 --off
    xrandr --output DP1 --auto
5. After these actions, our system hangs in 100% cases.

==Bug detailed description==
-----------------------------------------

We have some Skylake platform(a prototype board from some vendor) with three
video outputs:
- 2xDDIx4(DVI/HDMI/DP);
- 1xLVDS(PTN3460 is used to convert eDPx2 to LVDS).

The problem is that Linux(latest Yocto and Ubuntu) sometimes hangs during boot.
When we tried to investigate this issue we had discovered that the problem is
related to video subsystem and:
- it can be reproduced only when two or three displays are connected to the
board;
- is can be reproduced manually(several dozen attempts may be required) by
switching on/off some video output via xrandr;
- it's more likely that the system will hang during turning on/off the eDP
channel than DDI;
- the system locks up completely so it is not possible to debug the issue
further;
- the system hangs when the connected display is physically turned on/off (and
not at the moment when xrandr is issued in console);
- when system does not hang, the following calltrace can be observed in dmesg
after issuing xrandr command:

[  456.516554] WARNING: CPU: 2 PID: 695 at
/home/kernel/COD/linux/drivers/gpu/drm/i915/intel_pm.c:3633 
skl_update_other_pipe_wm+0x16c/0x180 [i915]
[  456.516559] WARN_ON(!wm_changed)
[  456.516564] Modules linked in:
[  456.516569]  bnep nls_iso8859_1 snd_soc_skl intel_rapl 
snd_soc_skl_ipc x86_pkg_temp_thermal intel_powerclamp snd_soc_sst_ipc 
coretemp snd_soc_sst_dsp snd_hda_codec_hdmi kvm_intel snd_hda_ext_core 
snd_hda_codec_realtek snd_soc_sst_match kvm snd_hda_codec_generic 
snd_soc_core snd_compress ac97_bus snd_pcm_dmaengine joydev input_leds 
dw_dmac_core irqbypass snd_hda_intel snd_hda_codec snd_hda_core 
crct10dif_pclmul snd_hwdep snd_pcm 8250_dw i2c_designware_platform 
i2c_designware_core snd_seq_midi hci_uart crc32_pclmul 
ghash_clmulni_intel aesni_intel btbcm aes_x86_64 snd_seq_midi_event 
btqca btintel lrw snd_rawmidi gf128mul bluetooth glue_helper snd_seq 
snd_seq_device ablk_helper snd_timer cryptd idma64 virt_dma snd 
intel_lpss_pci intel_lpss_acpi intel_lpss mei_me soundcore mei acpi_pad 
mac_hid intel_pch_thermal
[  456.516675]  acpi_als kfifo_buf industrialio parport_pc ppdev lp 
parport autofs4 hid_generic usbhid i915 e1000e i2c_algo_bit ptp 
drm_kms_helper pps_core syscopyarea sysfillrect sysimgblt fb_sys_fops 
sdhci_pci ahci sdhci drm libahci wmi i2c_hid hid video 
pinctrl_sunrisepoint pinctrl_intel fjes
[  456.516734] CPU: 2 PID: 695 Comm: Xorg Tainted: G W  4.6.0-994-generic
#201603312200
[  456.516745] Hardware name: Default string Default string/SKYBAY, BIOS 
5.11 12/07/2015
[  456.516751]  0000000000000286 0000000002f3854e ffff88026166f988
ffffffff813ee8c3
[  456.516762]  ffff88026166f9d8 0000000000000000 ffff88026166f9c8
ffffffff8108275b
[  456.516771]  00000e3101b60400 ffff880263aff000 ffff88025dc49fa8
ffff88025ead7000
[  456.516780] Call Trace:
[  456.516799]  [<ffffffff813ee8c3>] dump_stack+0x63/0x90
[  456.516811]  [<ffffffff8108275b>] __warn+0xcb/0xf0
[  456.516821]  [<ffffffff810827df>] warn_slowpath_fmt+0x5f/0x80
[  456.516891]  [<ffffffffc01e17fc>] skl_update_other_pipe_wm+0x16c/0x180
[i915]
[  456.516956]  [<ffffffffc01e1995>] skl_update_wm+0x185/0x670 [i915]
[  456.517019]  [<ffffffffc01e578e>] intel_update_watermarks+0x1e/0x30 [i915]
[  456.517112]  [<ffffffffc024f8c1>] intel_atomic_commit+0x471/0xdf0 [i915]
[  456.517163]  [<ffffffffc008b2ac>] ? drm_ut_debug_printk+0x6c/0x90 [drm]
[  456.517226]  [<ffffffffc00a2df7>] drm_atomic_commit+0x37/0x60 [drm]
[  456.517256]  [<ffffffffc0157f2a>] drm_atomic_helper_set_config+0x7a/0xb0
[drm_kms_helper]
[  456.517310]  [<ffffffffc0092862>] drm_mode_set_config_internal+0x62/0x100
[drm]
[  456.517363]  [<ffffffffc00967b0>] drm_mode_setcrtc+0x3e0/0x500 [drm]
[  456.517402]  [<ffffffffc0087ab2>] drm_ioctl+0x152/0x540 [drm]
[  456.517448]  [<ffffffffc00963d0>] ? drm_mode_setplane+0x1b0/0x1b0 [drm]
[  456.517459]  [<ffffffff81233501>] do_vfs_ioctl+0xa1/0x5b0
[  456.517470]  [<ffffffff8122158e>] ? ____fput+0xe/0x10
[  456.517479]  [<ffffffff810a1258>] ? task_work_run+0x78/0x90
[  456.517486]  [<ffffffff81233a89>] SyS_ioctl+0x79/0x90
[  456.517499]  [<ffffffff81839fb6>] entry_SYSCALL_64_fastpath+0x1e/0xa8

Similar errors/issues can be found on bugzilla, but we are not sure that they
are related to our problem:
https://bugs.freedesktop.org/show_bug.cgi?id=94122  (this one can be reproduced
on our side too)
https://bugs.freedesktop.org/show_bug.cgi?id=93578
https://bugs.freedesktop.org/show_bug.cgi?id=92181
https://bugs.freedesktop.org/show_bug.cgi?id=89055

We have also tried the latest versions of i915 driver from git - no luck.

Please tell if any additional information/testing are needed. Due to lock-up of
the system, we have managed to collect only logs below.

==Environment info==
--------------------

$ uname -m
x86_64

$ uname -r
4.6.0-994-generic

$ lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu Xenial Xerus (development branch)
Release:    16.04
Codename:    xenial

$ dpkg -s libdrm2 | grep 'Version'
Version: 2.4.67+git1603290630.ea78c1~gd~x

$ dpkg -s libdrm-intel1 | grep 'Version'
Version: 2.4.67+git1603290630.ea78c1~gd~x

Graphics adapter:
00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated
Graphics (rev 07) (prog-if 00 [VGA controller])
    DeviceName:  Onboard IGD
    Subsystem: Intel Corporation Skylake Integrated Graphics
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx+
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR- INTx-
    Latency: 0
    Interrupt: pin A routed to IRQ 277
    Region 0: Memory at de000000 (64-bit, non-prefetchable) [size=16M]
    Region 2: Memory at c0000000 (64-bit, prefetchable) [size=256M]
    Region 4: I/O ports at f000 [size=64]
    [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
    Capabilities: [40] Vendor Specific Information: Len=0c <?>
    Capabilities: [70] Express (v2) Root Complex Integrated Endpoint, MSI 00
        DevCap:    MaxPayload 128 bytes, PhantFunc 0
            ExtTag- RBE+
        DevCtl:    Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
            RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
            MaxPayload 128 bytes, MaxReadReq 128 bytes
        DevSta:    CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
        DevCap2: Completion Timeout: Not Supported, TimeoutDis-, LTR-, OBFF Not
Supported
        DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF
Disabled
    Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Address: fee00018  Data: 0000
    Capabilities: [d0] Power Management version 2
        Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
        Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capabilities: [100 v1] #1b
    Capabilities: [200 v1] Address Translation Service (ATS)
        ATSCap:    Invalidate Queue Depth: 00
        ATSCtl:    Enable-, Smallest Translation Unit: 00
    Capabilities: [300 v1] #13
    Kernel driver in use: i915
    Kernel modules: i915

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20160404/82bb259a/attachment.html>


More information about the intel-gfx-bugs mailing list