drm/i915/dp_mst - System would hang during the boot up.

Bug #1902469 reported by koba
40
This bug affects 8 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
Focal
Invalid
Undecided
koba
Groovy
Fix Released
Undecided
koba
linux-oem-5.6 (Ubuntu)
Invalid
Undecided
Unassigned
Focal
Fix Released
Undecided
koba

Bug Description

[Impact]
The machine connect with the external monitor on dock(Thunderbolt),
Then system would hang during the boot-up.

[Fix]
The atomic check hooks must look up the encoder to be used with a
connector from the connector's atomic state, and not assume that it's
the connector's current attached encoder. The latter one can change
under the atomic check func, or can be unset yet as in the case of MST
connectors.

[test]
With the patch, The machine connect with the external monitor on dock(Thunderbolt),
Then system boot up successfully.

[Regression Potential]
Low. This patch is also verified by others and is archived in the drmtip.

CVE References

koba (kobako)
no longer affects: focal (Ubuntu)
summary: - If the machine connect with the external monitor on dock(Thunderbolt)
- System would hang during the boot up.
+ drm/i915/dp_mst - System would hang during the boot up.
koba (kobako)
no longer affects: hwe-next/groovy
description: updated
koba (kobako)
tags: added: originate-from-1890077
koba (kobako)
affects: hwe-next → ubuntu
no longer affects: hwe-next/focal
no longer affects: hwe-next/groovy
koba (kobako)
Changed in linux (Ubuntu Focal):
status: New → In Progress
Changed in linux (Ubuntu Groovy):
status: New → In Progress
no longer affects: ubuntu
no longer affects: Ubuntu Focal
no longer affects: Ubuntu Groovy
Changed in linux (Ubuntu Focal):
assignee: nobody → koba (kobako)
Changed in linux (Ubuntu Groovy):
assignee: nobody → koba (kobako)
Changed in linux-oem-5.6 (Ubuntu Focal):
status: New → In Progress
Changed in linux-oem-5.6 (Ubuntu Groovy):
status: New → In Progress
assignee: nobody → koba (kobako)
Changed in linux-oem-5.6 (Ubuntu Focal):
assignee: nobody → koba (kobako)
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1902469

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: somerville
Changed in linux-oem-5.6 (Ubuntu):
status: New → Invalid
no longer affects: linux-oem-5.6 (Ubuntu Groovy)
Ian May (ian-may)
Changed in linux (Ubuntu Groovy):
status: In Progress → Fix Committed
Timo Aaltonen (tjaalton)
Changed in linux-oem-5.6 (Ubuntu Focal):
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) 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-groovy' to 'verification-done-groovy'. If the problem still exists, change the tag 'verification-needed-groovy' to 'verification-failed-groovy'.

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-groovy
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) 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-focal' to 'verification-done-focal'. If the problem still exists, change the tag 'verification-needed-focal' to 'verification-failed-focal'.

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-focal
koba (kobako)
Changed in linux (Ubuntu Focal):
status: In Progress → Invalid
tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
Ian May (ian-may) wrote :

@Koba could you confirm this is resolved in -proposed Groovy?

Thanks,
Ian

Revision history for this message
Alex Murray (alexmurray) wrote :

I can confirm the kernel in groovy-proposed fixes this issue:

# enable proposed
cat <<EOF >/etc/apt/sources.list.d/ubuntu-$(lsb_release -cs)-proposed.list
# Enable Ubuntu proposed archive
deb http://archive.ubuntu.com/ubuntu/ $(lsb_release -cs)-proposed restricted main multiverse universe
EOF

# pin so packages are not automatically upgraded from -proposed
cat <<EOF >/etc/apt/preferences.d/proposed-updates
# Configure apt to allow selective installs of packages from proposed
Package: *
Pin: release a=$(lsb_release -cs)-proposed
Pin-Priority: 400
EOF

# install kernel from proposed
apt install linux-generic-hwe-20.04/groovy-proposed linux-headers-generic-hwe-20.04/groovy-proposed

# ensure "quiet splash" is still set in /etc/default/grub
grep quiet\ splash /etc/default/grub

reboot

# then I notice boot does not hang anymore with thunderbolt dock connected - \o/

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

This bug was fixed in the package linux-oem-5.6 - 5.6.0-1035.37

---------------
linux-oem-5.6 (5.6.0-1035.37) focal; urgency=medium

  * focal/linux-oem-5.6: 5.6.0-1035.37 -proposed tracker (LP: #1903149)

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * drm/i915/dp_mst - wait longer during the clock recovery for Display port
    (LP: #1902861)
    - SAUCE: drm/i915/dp_mst: wait longer during the clock recovery

  * Remove NVMe suspend-to-idle workaround (LP: #1897227)
    - Revert "UBUTU: SAUCE: pci: prevent Intel NVMe SSDPEKKF from entering D3"
    - Revert "UBUNTU: SAUCE: pci: prevent sk hynix nvme from entering D3"

  * Tiger Lake PMC core driver fixes (LP: #1899883)
    - x86/devicetable: Move x86 specific macro out of generic code
    - x86/cpu: Add consistent CPU match macros
    - platform/x86: Convert to new CPU match macros
    - platform/x86: intel_pmc_core: Add Atom based Jasper Lake (JSL) platform
      support
    - platform/x86: intel_pmc_core: Add debugfs entry to access sub-state
      residencies
    - platform/x86: intel_pmc_core: Add debugfs entry for low power mode status
      registers
    - platform/x86: intel_pmc_core: Refactor the driver by removing redundant code
    - platform/x86: intel_pmc_core: Remove slp_s0 attributes from tgl_reg_map
    - platform/x86: intel_pmc_core: Add an additional parameter to
      pmc_core_lpm_display()
    - platform/x86: intel_pmc_core: Dump low power status registers on an S0ix.y
      failure
    - platform/x86: intel_pmc_core: Add debugfs support to access live status
      registers
    - platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of
      CONFIG_DEBUG_FS
    - platform/x86: intel_pmc_core: Remove duplicate 'if' to create debugfs entry
    - platform/x86: intel_pmc_core: Add slp_s0_offset attribute back to
      tgl_reg_map
    - platform/x86: intel_pmc_core: Make pmc_core_lpm_display() generic for
      platforms that support sub-states
    - platform/x86: intel_pmc_core: Make pmc_core_substate_res_show() generic
    - platform/x86: intel_pmc_core: Change Jasper Lake S0ix debug reg map back to
      ICL
    - platform/x86: intel_pmc_core: avoid unused-function warnings
    - platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name
    - platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show()
    - platform/x86: pmc_core: Use descriptive names for LPM registers
    - platform/x86: intel_pmc_core: Fix TigerLake power gating status map
    - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value

  * [SRU][OEM-5.6]Fix no video out from some monitors on amdgpu (LP: #1901135)
    - drm/amd/display: Retry AUX write when fail occurs

  * drm/i915/dp_mst - only read the base capability in DPCD. (LP: #1902613)
    - Revert "UBUNTU: SAUCE: drm/dp_mst: Retrieve extended DPCD caps for topology
      manager"

  * TGL system automatically resumes from s2idle when connecting to a docking
    station with a monitor (LP: #1902577)
    - SAUCE: ACPI: avoid auto-wakeup with an _OSI string

  * Fix non-working NVMe after S3 (LP: #1895718)
    - SAUCE: PCI: Enable ACS quirk on all CML root ports

  * drm...

Read more...

Changed in linux-oem-5.6 (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (50.5 KiB)

This bug was fixed in the package linux - 5.8.0-31.33

---------------
linux (5.8.0-31.33) groovy; urgency=medium

  * groovy/linux: 5.8.0-31.33 -proposed tracker (LP: #1905299)

  * Groovy 5.8 kernel hangs on boot on CPUs with eLLC (LP: #1903397)
    - drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup
      during fbdev init

  * CVE-2020-4788
    - selftests/powerpc: rfi_flush: disable entry flush if present
    - powerpc/64s: flush L1D on kernel entry
    - powerpc/64s: flush L1D after user accesses
    - selftests/powerpc: entry flush test

linux (5.8.0-30.32) groovy; urgency=medium

  * groovy/linux: 5.8.0-30.32 -proposed tracker (LP: #1903194)

  * Update kernel packaging to support forward porting kernels (LP: #1902957)
    - [Debian] Update for leader included in BACKPORT_SUFFIX

  * Avoid double newline when running insertchanges (LP: #1903293)
    - [Packaging] insertchanges: avoid double newline

  * EFI: Fails when BootCurrent entry does not exist (LP: #1899993)
    - efivarfs: Replace invalid slashes with exclamation marks in dentries.

  * raid10: Block discard is very slow, causing severe delays for mkfs and
    fstrim operations (LP: #1896578)
    - md: add md_submit_discard_bio() for submitting discard bio
    - md/raid10: extend r10bio devs to raid disks
    - md/raid10: pull codes that wait for blocked dev into one function
    - md/raid10: improve raid10 discard request
    - md/raid10: improve discard request for far layout
    - dm raid: fix discard limits for raid1 and raid10
    - dm raid: remove unnecessary discard limits for raid10

  * Bionic: btrfs: kernel BUG at /build/linux-
    eTBZpZ/linux-4.15.0/fs/btrfs/ctree.c:3233! (LP: #1902254)
    - btrfs: extent_io: do extra check for extent buffer read write functions
    - btrfs: extent-tree: kill BUG_ON() in __btrfs_free_extent()
    - btrfs: extent-tree: kill the BUG_ON() in insert_inline_extent_backref()
    - btrfs: ctree: check key order before merging tree blocks

  * Tiger Lake PMC core driver fixes (LP: #1899883)
    - platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name
    - platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show()
    - platform/x86: pmc_core: Use descriptive names for LPM registers
    - platform/x86: intel_pmc_core: Fix TigerLake power gating status map
    - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value

  * drm/i915/dp_mst - System would hang during the boot up. (LP: #1902469)
    - Revert "UBUNTU: SAUCE: drm/i915/display: Fix null deref in
      intel_psr_atomic_check()"
    - drm/i915: Fix encoder lookup during PSR atomic check

  * Undetected Data corruption in MPI workloads that use VSX for reductions on
    POWER9 DD2.1 systems (LP: #1902694)
    - powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation
    - selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load
      workaround

  * [20.04 FEAT] Support/enhancement of NVMe IPL (LP: #1902179)
    - s390/ipl: support NVMe IPL kernel parameters

  * uvcvideo: add mapping for HEVC payloads (LP: #1895803)
    - media: uvcvideo: Add mapping for HEVC payloads

  * risc-v 5.8 ...

Changed in linux (Ubuntu Groovy):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 5.8.0-36.40+21.04.1

---------------
linux (5.8.0-36.40+21.04.1) hirsute; urgency=medium

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  [ Ubuntu: 5.8.0-36.40 ]

  * debian/scripts/file-downloader does not handle positive failures correctly
    (LP: #1878897)
    - [Packaging] file-downloader not handling positive failures correctly

  [ Ubuntu: 5.8.0-35.39 ]

  * Packaging resync (LP: #1786013)
    - update dkms package versions
  * CVE-2021-1052 // CVE-2021-1053
    - [Packaging] NVIDIA -- Add the NVIDIA 460 driver

 -- Kleber Sacilotto de Souza <email address hidden> Thu, 07 Jan 2021 11:57:30 +0100

Changed in linux (Ubuntu):
status: Incomplete → Fix Released
Revision history for this message
David Droddy (macbuoy) wrote :

This is the closest match I could find to the problem I'm experiencing. Every Kernel update above 5.4.0-59-generic on Ubuntu 20.04.1 LTS on this Thinkpad T580 docked on the Thinkpad Ultra Docking Station causes the computer to freeze up either just before the login screen, on the login screen or shortly after successful login. If I take the machine off of the docking station, everything works fine. Docking and removing external monitor connections does not make it any better.

Sorry if I'm not in compliance with this forum's practices. I'll go read-up on that and get in line ASAP.

Revision history for this message
David Droddy (macbuoy) wrote :

yeah...nevermind. I will look for support where I'm supposed to. :-)

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

David, please try some newer kernel like "linux-oem-20.04b" in focal-proposed.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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