Bug 1874782 - Fails to resume external monitor
Summary: Fails to resume external monitor
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 32
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-09-02 08:26 UTC by Marko Bevc
Modified: 2020-11-25 20:07 UTC (History)
22 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-11-25 20:07:58 UTC
Type: Bug


Attachments (Terms of Use)

Description Marko Bevc 2020-09-02 08:26:32 UTC
1. Please describe the problem:
OS is failing to resume secondary monitor after going from idle state.

2. What is the Version-Release number of the kernel:
5.8.4-200.fc32

3. Did it work previously in Fedora? If so, what kernel version did the issue
   *first* appear?  Old kernels are available for download at
   https://koji.fedoraproject.org/koji/packageinfo?packageID=8 :
Yes, worked for 5.7 kernels and older.

4. Can you reproduce this issue? If so, please provide the steps to reproduce
   the issue below:
Boot 5.8 kernel, wait for idle and monitor shuts off. Try to resume and only internal monitor is working. External (docking, HDMI via USB-c) is trying to resume but stays black.

5. Does this problem occur with the latest Rawhide kernel? To install the
   Rawhide kernel, run ``sudo dnf install fedora-repos-rawhide`` followed by
   ``sudo dnf update --enablerepo=rawhide kernel``:
Yes.

6. Are you running any modules that not shipped with directly Fedora's kernel?:
No.

Comment 1 Marko Bevc 2020-09-08 09:27:48 UTC
Same happens on kernle-.5.8.6-201. But I did notice it only happens when using X11 and not on Wayland.

Comment 2 Marko Bevc 2020-09-13 19:03:31 UTC
Still present with 5.8.8-fc32.

Also perhaps related to: https://bugzilla.redhat.com/show_bug.cgi?id=1840021

Comment 3 Marko Bevc 2020-09-14 19:36:32 UTC
After some testing, seems either detecting monitor is too slow and with laptop closed doesn't detect external monitor quickly enough and goes back to sleep. (it tries as monitor blinks, but shuts down)

Comment 4 Marko Bevc 2020-09-14 19:51:57 UTC
Not sure if related, but disabling sleep on external power eventually wakes up monitor, but dmesg has some errors:
[  387.747807] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 0000000062584252 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  388.320018] i915 0000:00:02.0: [drm] *ERROR* failed to allocate vcpi
[  391.320907] [drm:drm_dp_check_act_status [drm_kms_helper]] *ERROR* Failed to get ACT after 3000ms, last status: 00
[  391.679251] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000b3d8c323 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  395.113002] [drm:drm_dp_check_act_status [drm_kms_helper]] *ERROR* Failed to get ACT after 3000ms, last status: 00
[  396.150476] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 0000000062584252 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  396.348115] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 0000000062584252 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  396.929159] i915 0000:00:02.0: [drm] *ERROR* failed to allocate vcpi
[  399.930097] [drm:drm_dp_check_act_status [drm_kms_helper]] *ERROR* Failed to get ACT after 3000ms, last status: 00
[  400.280769] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  400.479025] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.389379] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.446100] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.532722] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.560854] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.648229] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.676011] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.704252] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.791898] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.820663] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.849035] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.936254] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.964002] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  406.991702] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  407.077868] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  407.106096] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  407.193253] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  413.386076] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
[  413.442356] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000a11bbb4e port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed

Comment 5 Marko Bevc 2020-09-22 08:25:53 UTC
Seems it's gotten worse in 5.8.10 as doesn't wake up monitor at at when docked and lid is closed.

Comment 6 Stephen John Smoogen 2020-11-21 18:39:32 UTC
Started seeing this after upgrade to [root@localhost etc]# uname -a
Linux localhost.localdomain 5.9.8-100.fc32.x86_64 #1 SMP Tue Nov 10 22:39:06 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

The system is

localhost.localdomain       
    description: Notebook
    product: 20QUS10L0L (LENOVO_MT_20QU_BU_Think_FM_ThinkPad P1 Gen 2)
    vendor: LENOVO
    version: ThinkPad P1 Gen 2

       *-display
             description: VGA compatible controller
             product: UHD Graphics 630 (Mobile)
             vendor: Intel Corporation
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 02
             width: 64 bits
             clock: 33MHz
             capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
             configuration: driver=i915 latency=0
             resources: irq:151 memory:e9000000-e9ffffff memory:c0000000-cfffffff ioport:3000(size=64) memory:c0000-dffff


System would cycle both laptop and external monitor every couple of seconds 


Nov 21 13:25:46 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000eaf65adb port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:25:46 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000eaf65adb port 2: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:04 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000ec88e6a5 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:05 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000ec88e6a5 port 2: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:05 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000ec88e6a5 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:11 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000ec88e6a5 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:17 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 000000001aca06ed port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:17 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 000000001aca06ed port 2: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:17 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 000000001aca06ed port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:23 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 000000001aca06ed port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:28 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000f9e73992 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:29 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000f9e73992 port 2: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:29 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000f9e73992 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:35 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000f9e73992 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:40 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000cd243aa1 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:46 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000da1fdc79 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:46 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000da1fdc79 port 2: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:46 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000da1fdc79 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:52 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000da1fdc79 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:57 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000b081cd46 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:58 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000b081cd46 port 2: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:26:58 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000b081cd46 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed
Nov 21 13:27:04 localhost kernel: [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 00000000b081cd46 port 1: DPCD read on addr 0x4b0 for 1 bytes NAKed

Then needed to be powered off for 30 seconds. After that it booted up and the messages did occur 1 to 2 times in dmesg but system 'stabilized'.

Comment 7 Marko Bevc 2020-11-25 20:07:58 UTC
Seems it has been solved with 5.9 kernel on Fedora33. Closing.


Note You need to log in before you can comment on or make changes to this bug.