i915-bpo crashes on external hdmi input

Bug #1580272 reported by Chris J Arges
46
This bug affects 6 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Critical
Unassigned
Xenial
Fix Released
Undecided
Unassigned

Bug Description

This issue happens when plugging in an external HDMI projector in mirrored mode.

To reproduce this issue:
1) Plug in external HDMI monitor
2) Set mirrored displays
3) Unplug HDMI
4) check dmesg for warnings

--

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: linux-image-4.4.0-22-generic 4.4.0-22.39
ProcVersionSignature: Ubuntu 4.4.0-22.39-generic 4.4.8
Uname: Linux 4.4.0-22-generic x86_64
NonfreeKernelModules: zfs zunicode zcommon znvpair zavl
ApportVersion: 2.20.1-0ubuntu2
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: mark 4296 F.... pulseaudio
Date: Tue May 10 10:25:07 2016
InstallationDate: Installed on 2016-05-02 (8 days ago)
InstallationMedia: Ubuntu 16.04 LTS "Xenial Xerus" - Release amd64 (20160420.1)
Lsusb:
 Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
 Bus 001 Device 003: ID 04f3:21d4 Elan Microelectronics Corp.
 Bus 001 Device 002: ID 0a5c:6410 Broadcom Corp.
 Bus 001 Device 004: ID 0c45:6713 Microdia
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
MachineType: Dell Inc. XPS 15 9550
ProcEnviron:
 LANGUAGE=en_GB:en
 TERM=linux
 PATH=(custom, no user)
 LANG=en_GB.UTF-8
 SHELL=/bin/bash
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.4.0-22-generic.efi.signed root=UUID=3643ef37-7cee-41b3-9387-2faa819c44db ro quiet splash vt.handoff=7
PulseList:
 Error: command ['pacmd', 'list'] failed with exit code 1: Home directory not accessible: Permission denied
 No PulseAudio daemon running, or not running as session daemon.
RelatedPackageVersions:
 linux-restricted-modules-4.4.0-22-generic N/A
 linux-backports-modules-4.4.0-22-generic N/A
 linux-firmware 1.157
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/07/2016
dmi.bios.vendor: Dell Inc.
dmi.bios.version: 01.02.00
dmi.board.name: 0N7TVV
dmi.board.vendor: Dell Inc.
dmi.board.version: A00
dmi.chassis.type: 9
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvr01.02.00:bd04/07/2016:svnDellInc.:pnXPS159550:pvr:rvnDellInc.:rn0N7TVV:rvrA00:cvnDellInc.:ct9:cvr:
dmi.product.name: XPS 15 9550
dmi.sys.vendor: Dell Inc.

CVE References

Revision history for this message
Chris J Arges (arges) wrote :
Revision history for this message
Brad Figg (brad-figg) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Robert Hooker (sarvatt) wrote :
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

If you mean the dmesg spam then yes 89055 is your bug.

Revision history for this message
Chris J Arges (arges) wrote :
Changed in linux (Ubuntu):
importance: Undecided → Medium
tags: added: kernel-da-key
Chris J Arges (arges)
Changed in linux (Ubuntu):
importance: Medium → Critical
description: updated
Revision history for this message
Chris J Arges (arges) wrote :
Download full text (4.0 KiB)

I've also tested this on 4.4.0-22 with i915 patches here:
http://koti.kapsi.fi/~tjaalton/skl/mst/
And the problem persists.

In addition I've tested a 4.6 mainline from 5/8 and the problem persists there as well.

Here is the warning from the mainline kernel:
[ 44.871672] ------------[ cut here ]------------
[ 44.871687] WARNING: CPU: 1 PID: 871 at /home/kernel/COD/linux/drivers/gpu/drm/i915/intel_pm.c:3586 skl_update_other_pipe_wm+0x16c/0x180 [i915]
[ 44.871688] WARN_ON(!wm_changed)
[ 44.871688] Modules linked in:
[ 44.871689] rfcomm bnep snd_hda_codec_hdmi dell_led brcmfmac snd_hda_codec_realtek intel_rapl snd_hda_codec_generic x86_pkg_temp_thermal intel_powerclamp brcmutil coretemp uvcvideo cfg80211 i2c_designware_platform i2c_designware_core kvm_intel videobuf2_vmalloc kvm snd_hda_intel videobuf2_memops snd_hda_codec videobuf2_v4l2 dell_wmi dell_laptop videobuf2_core dell_smbios snd_hda_core videodev dcdbas rtsx_pci_ms irqbypass snd_hwdep media memstick snd_pcm hid_multitouch crct10dif_pclmul snd_seq_midi crc32_pclmul btusb btrtl ghash_clmulni_intel snd_seq_midi_event snd_rawmidi aesni_intel snd_seq snd_seq_device aes_x86_64 lrw snd_timer gf128mul glue_helper snd ablk_helper cryptd soundcore hci_uart btbcm btqca idma64 joydev input_leds shpchp btintel virt_dma mei_me serio_raw bluetooth mei processor_thermal_device
[ 44.871711] intel_lpss_pci intel_soc_dts_iosf acpi_als kfifo_buf industrialio intel_lpss_acpi intel_hid dell_smo8800 int3403_thermal int3400_thermal int3402_thermal intel_lpss acpi_pad sparse_keymap int340x_thermal_zone acpi_thermal_rel mac_hid parport_pc ppdev lp parport autofs4 usbhid rtsx_pci_sdmmc nouveau i915 mxm_wmi ttm i2c_algo_bit drm_kms_helper psmouse syscopyarea sysfillrect sysimgblt nvme fb_sys_fops uas nvme_core ahci drm usb_storage rtsx_pci libahci i2c_hid hid wmi pinctrl_sunrisepoint video pinctrl_intel fjes
[ 44.871727] CPU: 1 PID: 871 Comm: Xorg Not tainted 4.6.0-999-generic #201605082200
[ 44.871728] Hardware name: Dell Inc. XPS 15 9550/0N7TVV, BIOS 01.02.00 04/07/2016
[ 44.871729] 0000000000000286 0000000052e51aba ffff8808985bf918 ffffffff813f2ea3
[ 44.871731] ffff8808985bf968 0000000000000000 ffff8808985bf958 ffffffff8108294b
[ 44.871732] 00000e0200000000 ffff880891b41000 ffff8800219d9da4 ffff880891b42000
[ 44.871733] Call Trace:
[ 44.871736] [<ffffffff813f2ea3>] dump_stack+0x63/0x90
[ 44.871739] [<ffffffff8108294b>] __warn+0xcb/0xf0
[ 44.871740] [<ffffffff810829cf>] warn_slowpath_fmt+0x5f/0x80
[ 44.871749] [<ffffffffc022c6ac>] skl_update_other_pipe_wm+0x16c/0x180 [i915]
[ 44.871758] [<ffffffffc022c845>] skl_update_wm+0x185/0x640 [i915]
[ 44.871769] [<ffffffffc027a455>] ? gen9_write32+0x235/0x370 [i915]
[ 44.871782] [<ffffffffc02b88af>] ? intel_ddi_enable_transcoder_func+0x17f/0x260 [i915]
[ 44.871790] [<ffffffffc023060e>] intel_update_watermarks+0x1e/0x30 [i915]
[ 44.871802] [<ffffffffc029c821>] haswell_crtc_enable+0x321/0x8c0 [i915]
[ 44.871813] [<ffffffffc02991bb>] intel_atomic_commit+0x5fb/0xdd0 [i915]
[ 44.871825] [<ffffffffc00d9c31>] ? drm_atomic_check_only+0x181/0x600 [drm]
[ 44.871832] [<ffffffffc00da0e7>] drm_atomic_commit+0x37/0x60 [...

Read more...

description: updated
Chris J Arges (arges)
description: updated
Revision history for this message
Jerry Kao (jerry.kao) wrote :

Can not reproduced this issue on Precision 5510.

All display modes (internal, external, extended, mirror) with HDMI work. Unplug HDMI does not cause crash/hang. But internal display is laggy sometimes on mirror mode and has error message in dmesg when plugin HDMI.

[ 489.340228] [drm:intel_cpu_fifo_underrun_irq_handler [i915_bpo]] *ERROR* CPU pipe A FIFO underrun
[ 666.746115] [drm:intel_cpu_fifo_underrun_irq_handler [i915_bpo]] *ERROR* CPU pipe A FIFO underrun
[ 709.818465] [drm:intel_cpu_fifo_underrun_irq_handler [i915_bpo]] *ERROR* CPU pipe A FIFO underrun

Revision history for this message
Jerry Kao (jerry.kao) wrote :

In comment#7, I tested with 16.04 kernel 4.4.0-21 and 4.4.0-22

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

On #1581249 you mentioned mainline 4.6 worked, does it work here too? If yes, then you might want to test xenial master-next which has newer i915_bpo

tags: added: kernel-key
Revision history for this message
Dave Chiluk (chiluk) wrote :
Download full text (4.5 KiB)

Running 4.4.0-23-generic, I see the same errors as https://bugs.freedesktop.org/show_bug.cgi?id=89055

I see
[ 1248.953987] PM: early resume of devices complete after 6.795 msecs
[ 1248.956059] rtc_cmos 00:02: System wakeup disabled by ACPI
[ 1249.227488] usb 1-8: reset high-speed USB device number 3 using xhci_hcd
[ 1249.393400] ------------[ cut here ]------------
[ 1249.393456] WARNING: CPU: 2 PID: 5122 at /build/linux-L7iE5S/linux-4.4.0/ubuntu/i915/intel_pm.c:3586 skl_update_other_pipe_wm+0x16c/0x180 [i915_bpo]()
[ 1249.393458] WARN_ON(!wm_changed)
[ 1249.393514] Modules linked in: drbg ansi_cprng ctr ccm 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 bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables overlay bnep snd_hda_codec_hdmi snd_hda_codec_conexant snd_hda_codec_generic joydev binfmt_misc arc4 acer_wmi sparse_keymap nls_iso8859_1 intel_rapl snd_soc_skl x86_pkg_temp_thermal uvcvideo intel_powerclamp coretemp videobuf2_vmalloc snd_soc_skl_ipc videobuf2_memops crct10dif_pclmul videobuf2_v4l2 snd_hda_ext_core crc32_pclmul videobuf2_core snd_soc_sst_ipc v4l2_common snd_soc_sst_dsp videodev aesni_intel snd_soc_core media snd_compress ac97_bus snd_pcm_dmaengine
[ 1249.393565] dw_dmac_core aes_x86_64 lrw gf128mul snd_hda_intel glue_helper ablk_helper cryptd snd_hda_codec snd_hda_core snd_hwdep iwlmvm snd_pcm input_leds mac80211 serio_raw btusb thinkpad_acpi btrtl btbcm btintel nvram bluetooth iwlwifi snd_seq_midi snd_seq_midi_event cfg80211 snd_rawmidi mei_me mei snd_seq shpchp snd_seq_device snd_timer snd soundcore mac_hid tpm_crb kvm_intel kvm irqbypass parport_pc ppdev sunrpc lp parport autofs4 i915_bpo intel_ips i2c_algo_bit drm_kms_helper syscopyarea sysfillrect psmouse sysimgblt fb_sys_fops drm nvme wmi video fjes
[ 1249.393570] CPU: 2 PID: 5122 Comm: kworker/u16:12 Tainted: G U W 4.4.0-23-generic #41-Ubuntu
[ 1249.393572] Hardware name: LENOVO 20FBCTO1WW/20FBCTO1WW, BIOS N1FET40W (1.14 ) 04/18/2016
[ 1249.393581] Workqueue: events_unbound async_run_entry_fn
[ 1249.393587] 0000000000000286 00000000280ea446 ffff88040bb6f900 ffffffff813eaa03
[ 1249.393590] ffff88040bb6f948 ffffffffc0224c98 ffff88040bb6f938 ffffffff810810d2
[ 1249.393594] ffff8804093ff000 ffff8804086f9d9c ffff8804093f9000 ffff88040e53eb78
[ 1249.393595] Call Trace:
[ 1249.393605] [<ffffffff813eaa03>] dump_stack+0x63/0x90
[ 1249.393611] [<ffffffff810810d2>] warn_slowpath_common+0x82/0xc0
[ 1249.393615] [<ffffffff8108116c>] warn_slowpath_fmt+0x5c/0x80
[ 1249.393656] [<ffffffffc015667c>] skl_update_other_pipe_wm+0x16c/0x180 [i915_bpo]
[ 1249.393693] [<ffffffffc0156816>] skl_update_wm+0x186/0x5f0 [i915_bpo]
[ 1249.393749] [<ffffffffc01e248f>] ? intel_ddi_enable_transcoder_func+0x17f/0x260 [i915_bpo]
[ 1249.393786] [<ffffffffc015a53e>] intel_update_watermarks+0x1e/0x30 [i915_bpo]
[ 1249.393841] [<ffffffffc01c6521>] haswell_crtc_enable+0x321/0x8c0 [i915_bpo]
[ 1249.393893] [<ffffffffc01b2b9e>] ? intel_finish_crtc_commit+0xe/0x10 [i915_bpo]
[ 1249.393911] [<ffff...

Read more...

Revision history for this message
Nara Huang (narahuang) wrote :
Download full text (4.7 KiB)

Using kernel 4.4.0-24.43, had same error with #10:

Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899763] ------------[ cut here ]------------
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899808] WARNING: CPU: 6 PID: 959 at /build/linux-oXTOqc/linux-4.4.0/ubuntu/i915/intel_pm.c:3586 skl_update_other_pipe_wm+0x16c/0x180 [i915_bpo]()
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899812] WARN_ON(!wm_changed)
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899814] Modules linked in: rfcomm bnep snd_hda_codec_hdmi dell_led snd_hda_codec_realtek snd_hda_codec_generic snd_hda_intel snd_hda_codec snd_hda_core snd_hwdep snd_pcm intel_rapl x86_pkg_temp_thermal intel_powerclamp i2c_designware_platform coretemp dell_wmi i2c_designware_core snd_seq_midi sparse_keymap nls_iso8859_1 snd_seq_midi_event kvm_intel dell_laptop kvm dcdbas irqbypass crct10dif_pclmul crc32_pclmul snd_rawmidi aesni_intel uvcvideo aes_x86_64 videobuf2_vmalloc lrw videobuf2_memops gf128mul glue_helper videobuf2_v4l2 ablk_helper videobuf2_core cryptd v4l2_common snd_seq videodev brcmfmac btusb btrtl joydev snd_seq_device media brcmutil input_leds snd_timer hid_multitouch cfg80211 serio_raw snd soundcore rtsx_pci_ms memstick mei_me mei idma64 virt_dma processor_thermal_device intel_lpss_pci intel_soc_dts_iosf shpchp hci_uart btbcm btqca btintel bluetooth int3402_thermal int3403_thermal int340x_thermal_zone dell_smo8800 intel_lpss_acpi intel_lpss acpi_als int3400_thermal mac_hid acpi_thermal_rel kfifo_buf acpi_pad industrialio parport_pc ppdev lp parport autofs4 usbhid rtsx_pci_sdmmc nouveau i915_bpo mxm_wmi intel_ips ttm i2c_algo_bit drm_kms_helper syscopyarea psmouse sysfillrect sysimgblt fb_sys_fops drm nvme rtsx_pci ahci libahci i2c_hid hid wmi pinctrl_sunrisepoint video pinctrl_intel fjes
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899941] CPU: 6 PID: 959 Comm: Xorg Tainted: G W 4.4.0-24-generic #43-Ubuntu
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899944] Hardware name: Dell Inc. XPS 15 9550/0N7TVV, BIOS 01.02.00 04/07/2016
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899947] 0000000000000286 000000006ac654bb ffff8804a418f9a8 ffffffff813eab23
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899953] ffff8804a418f9f0 ffffffffc02d4c98 ffff8804a418f9e0 ffffffff810810d2
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899957] ffff8804a4401000 ffff8804a3b19d9c ffff8804a4400000 ffff8804a4b76378
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899962] Call Trace:
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899972] [<ffffffff813eab23>] dump_stack+0x63/0x90
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899979] [<ffffffff810810d2>] warn_slowpath_common+0x82/0xc0
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.899984] [<ffffffff8108116c>] warn_slowpath_fmt+0x5c/0x80
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.900017] [<ffffffffc020667c>] skl_update_other_pipe_wm+0x16c/0x180 [i915_bpo]
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.900049] [<ffffffffc0206816>] skl_update_wm+0x186/0x5f0 [i915_bpo]
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.900080] [<ffffffffc020a53e>] intel_update_watermarks+0x1e/0x30 [i915_bpo]
Jun 13 03:00:02 u-XPS-15-9550 kernel: [ 143.900128] [<ffffffffc0272d65>] in...

Read more...

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Mikko Rytkönen (mikko-fractilegames) wrote :

Perhaps a stupid question, but where exactly is the "fix released"?

I'm on Xubuntu 16.04 with kernel 4.4.0-31 and I still see a similar crash when disconnecting the monitor in HDMI output. Same thing happens also when I turn off the external monitor.

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

This is properly fixed since v4.8.6, but the i915_bpo backport in xenial just needs the warning silenced as requested.

Changed in linux (Ubuntu Xenial):
status: New → In Progress
Changed in linux (Ubuntu Xenial):
status: In Progress → Fix Committed
Revision history for this message
Thadeu Lima de Souza Cascardo (cascardo) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-xenial' to 'verification-done-xenial'. If the problem still exists, change the tag 'verification-needed-xenial' to 'verification-failed-xenial'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-xenial
Revision history for this message
Kleber Sacilotto de Souza (kleber-souza) wrote :

Could you please test if the Xenial kernel (4.4.0-79.100) which is currently in -updates fixes the issue?

Thank you.

tags: added: verification-done-xenial
removed: verification-needed-xenial
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (9.7 KiB)

This bug was fixed in the package linux - 4.4.0-79.100

---------------
linux (4.4.0-79.100) xenial; urgency=low

  * linux: 4.4.0-79.100 -proposed tracker (LP: #1691180)

  * linux-aws/linux-gke incorrectly producing and using linux-*-tools-
    common/linux-*-cloud-tools-common (LP: #1688579)
    - [Config] make linux-tools-common and linux-cloud-tools-common provide linux-
      gke versions
    - [Config] make linux-tools-common and linux-cloud-tools-common provide linux-
      aws versions
    - [Packaging] prevent linux-*-tools-common from being produced from non linux
      packages

  * CVE-2017-0605
    - tracing: Use strlcpy() instead of strcpy() in __trace_find_cmdline()

  * i915-bpo crashes on external hdmi input (LP: #1580272)
    - SAUCE: i915_bpo: Silence the warning about watermark entries not changing

  * Kernel panics on Xenial when using cgroups and strict CFS limits
    (LP: #1687512)
    - sched/fair: Initialize throttle_count for new task-groups lazily
    - sched/fair: Do not announce throttled next buddy in dequeue_task_fair()

  * bonding - mlx5 - speed changed to 0 after changing ring size (LP: #1687877)
    - bonding: allow notifications for bond_set_slave_link_state

  * Xenial update to 4.4.67 stable release (LP: #1689296)
    - timerfd: Protect the might cancel mechanism proper
    - Handle mismatched open calls
    - ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
    - ALSA: ppc/awacs: shut up maybe-uninitialized warning
    - drbd: avoid redefinition of BITS_PER_PAGE
    - mtd: avoid stack overflow in MTD CFI code
    - net: tg3: avoid uninitialized variable warning
    - netlink: Allow direct reclaim for fallback allocation
    - IB/qib: rename BITS_PER_PAGE to RVT_BITS_PER_PAGE
    - IB/ehca: fix maybe-uninitialized warnings
    - ext4: require encryption feature for EXT4_IOC_SET_ENCRYPTION_POLICY
    - ext4 crypto: revalidate dentry after adding or removing the key
    - ext4 crypto: use dget_parent() in ext4_d_revalidate()
    - ext4/fscrypto: avoid RCU lookup in d_revalidate
    - nfsd4: minor NFSv2/v3 write decoding cleanup
    - nfsd: stricter decoding of write-like NFSv2/v3 ops
    - dm ioctl: prevent stack leak in dm ioctl call
    - Linux 4.4.67

  * Precision Rack failed to resume from S4 (LP: #1686061)
    - x86 / hibernate: Use hlt_play_dead() when resuming from hibernation
    - x86/boot: Split out kernel_ident_mapping_init()
    - x86/power/64: Always create temporary identity mapping correctly

  * Xenial update to 4.4.66 stable release (LP: #1688505)
    - f2fs: do more integrity verification for superblock
    - xc2028: unlock on error in xc2028_set_config()
    - ARM: OMAP2+: timer: add probe for clocksources
    - clk: sunxi: Add apb0 gates for H3
    - crypto: testmgr - fix out of bound read in __test_aead()
    - drm/amdgpu: fix array out of bounds
    - ext4: check if in-inode xattr is corrupted in ext4_expand_extra_isize_ea()
    - md:raid1: fix a dead loop when read from a WriteMostly disk
    - MIPS: Fix crash registers on non-crashing CPUs
    - net: cavium: liquidio: Avoid dma_unmap_single on uninitialized ndata
    - net_sched: close another race condition in tcf_mirre...

Read more...

Changed in linux (Ubuntu Xenial):
status: Fix Committed → Fix Released
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.