Bug 1809681 - kernel-5.6-rc#: Only 1 of 2 monitors lights up on DP-MST docks
Summary: kernel-5.6-rc#: Only 1 of 2 monitors lights up on DP-MST docks
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 32
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: AcceptedFreezeException
Depends On:
Blocks: F32BetaFreezeException
TreeView+ depends on / blocked
 
Reported: 2020-03-03 16:45 UTC by Lukas Ruzicka
Modified: 2020-05-05 07:09 UTC (History)
29 users (show)

Fixed In Version: kernel-5.6.0-0.rc5.git0.2.fc32
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-03-12 18:57:20 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
The journalctl logs from the affected system. (1.15 MB, text/plain)
2020-03-03 16:45 UTC, Lukas Ruzicka
no flags Details
Three screens active on a screenshot. (2.79 MB, image/png)
2020-03-03 16:48 UTC, Lukas Ruzicka
no flags Details
Only two real monitors active with the three monitor setup. (602.82 KB, image/jpeg)
2020-03-03 16:52 UTC, Lukas Ruzicka
no flags Details
Another screenshot, showing the same situation as the phone picture. (2.66 MB, image/png)
2020-03-03 16:54 UTC, Lukas Ruzicka
no flags Details
journal output (9.86 KB, text/plain)
2020-03-04 13:56 UTC, František Zatloukal
no flags Details


Links
System ID Private Priority Status Summary Last Updated
GNOME Gitlab GNOME/gnome-session/issues/50 0 None None None 2020-03-04 12:50:05 UTC

Description Lukas Ruzicka 2020-03-03 16:45:35 UTC
Created attachment 1667241 [details]
The journalctl logs from the affected system.

Description of problem:

On Fedora 31 with latest updates, I was able to run a three monitor setup both on Wayland and Xorg without using the built-in display, after upgrade to Fedora 32, this functionality is broken.

I am using a T580 Lenovo laptop with the Thunderbolt docking station and three external monitors connected to it (one over a VGA, two over an HDMI). At work, I was using the following setup - the built-in display is switched off and the three external displays are on, with the middle one being the Primary display. After the upgrade, I cannot use this setting any more.

I can either use two external monitors and the built-in one, or any combination with two displays, but the third display (the last to bring into the set-up) stays black. It can be a different display, just the last one made active. 

What is also more interesting is that the Display settings do not complain about anything and shows that all displays are correctly used. Also, a screenshotting application takes a shot with all three screens active, it only does not show on the real device.

Attaching some pictures and a journal output.

Version-Release number of selected component (if applicable):
gnome-shell-3.35.91-1.fc32.x86_64

How reproducible:

Always

Steps to Reproduce:
1. Go to Settings.
2. Go to Displays.
3. Add an external display and make it primary.
4. Switch off the built-in display.
5. Add one more external display and hit Apply (two external displays are correctly used)
6. Add one more external display and hit Apply -> it seems that all displays are correctly used, but the real device stays black.

Actual results:

Cannot use the three screen set-up.

Expected results:

Three screens should be possible to use with the built-in display switched off.

Additional info:

See pictures and journal output.

Comment 1 Lukas Ruzicka 2020-03-03 16:48:03 UTC
Created attachment 1667245 [details]
Three screens active on a screenshot.

Comment 2 Lukas Ruzicka 2020-03-03 16:52:49 UTC
Created attachment 1667263 [details]
Only two real monitors active with the three monitor setup.

Comment 3 Lukas Ruzicka 2020-03-03 16:54:22 UTC
Created attachment 1667264 [details]
Another screenshot, showing the same situation as the phone picture.

Comment 4 Kamil Páral 2020-03-03 17:25:41 UTC
Mar 03 17:23:04 elefant gnome-control-c[6270]: Config not applicable: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: Logical monitors not adjacent
...
Mar 03 17:23:11 elefant gnome-shell[5450]: Failed to post KMS update: Failed to set mode 1920x1080 on CRTC 93: No space left on device
Mar 03 17:23:11 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available
Mar 03 17:23:11 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available
Mar 03 17:23:12 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available
Mar 03 17:23:12 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available
Mar 03 17:23:17 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available
Mar 03 17:23:18 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available
Mar 03 17:23:18 elefant gnome-shell[5450]: Failed to post KMS update: Page flip of 93 failed, and no mode set available

The last message then repeats several times per second, continuously.

Lukas, you should report this bug upstream, and link it here, if you want to have a higher chance of getting it fixed.

Comment 5 Lukas Ruzicka 2020-03-04 11:41:28 UTC
(In reply to Kamil Páral from comment #4)

> Lukas, you should report this bug upstream, and link it here, if you want to
> have a higher chance of getting it fixed.

Good idea, thanks.

Comment 6 Lukas Ruzicka 2020-03-04 11:56:09 UTC
Also reported upstream: https://gitlab.gnome.org/GNOME/gnome-session/issues/50

Comment 7 Kamil Páral 2020-03-04 12:50:06 UTC
You can link it like this. But I think this might rather be a gnome-shell issue, according to those errors.

Comment 8 Jonas Ådahl 2020-03-04 13:15:55 UTC
Did everything work in 3.35.90?

Comment 9 František Zatloukal 2020-03-04 13:55:44 UTC
I am experiencing the same issue since upgrade to F32. Third screen is off and cannot be turned on through Gnome Control Center.

Mar 04 14:50:23 fanys-laptop /usr/libexec/gdm-x-session[2082]: (EE) modeset(0): failed to set mode: No space left on device
Mar 04 14:50:23 fanys-laptop /usr/libexec/gdm-x-session[2082]: (II) modeset(0): EDID vendor "NEC", prod id 26603
Mar 04 14:50:23 fanys-laptop /usr/libexec/gdm-x-session[2082]: (II) modeset(0): Using hsync ranges from config file
Mar 04 14:50:23 fanys-laptop /usr/libexec/gdm-x-session[2082]: (II) modeset(0): Using vrefresh ranges from config file
...

Comment 10 František Zatloukal 2020-03-04 13:56:31 UTC
Created attachment 1667499 [details]
journal output

Comment 11 František Zatloukal 2020-03-04 14:13:08 UTC
Issue is happening on 3.35.92 packages too:
mutter-3.35.92-2.fc32.x86_64
gnome-shell-3.35.92-1.fc32.x86_64

Will test 3.35.90 in a moment.

Comment 12 František Zatloukal 2020-03-04 14:26:14 UTC
Okay, the same issue is happening with 3.35.90:

gnome-shell-3.35.90-2.fc32.x86_64
mutter-3.35.90-1.fc32.x86_64

Comment 13 František Zatloukal 2020-03-04 14:29:39 UTC
Okay, it works (no matter the gnome-shell and mutter versions) with kernel-5.5.5, but it's broken with 5.6.0-rc3.

Another bug caused by kernel 5.6 and not present in 5.5 is: https://bugzilla.redhat.com/show_bug.cgi?id=1810070

Comment 14 František Zatloukal 2020-03-04 14:31:42 UTC
Just noting... the kernel 5.5.5 was from Fedora 31 with dracut/initramfs used from Fedora 31. Culprit could be somewhere else than in kernel itself.

Comment 15 Kamil Páral 2020-03-05 14:46:42 UTC
This is not just about three external displays, it also affects two. I have two external displays with Thinkpad T480s's internal screen disabled, and only one of the displays work, the other is always off. And I see the same message:
Mar 05 15:44:57 phoenix /usr/libexec/gdm-x-session[1707]: (EE) modeset(0): failed to set mode: No space left on device

Comment 16 Lukas Ruzicka 2020-03-05 15:50:55 UTC
Does the lower kernel solve the issue for you, Kamil? If so, we could move this into the kernel space.

Comment 17 František Zatloukal 2020-03-05 16:05:08 UTC
Kamil, I'd say the it doesn't matter you have laptop screen turned off, it's still connected and at least some kernel codepaths would behave like it is a three display setup.

Kernel bug report with proposed patch is here: https://gitlab.freedesktop.org/drm/amd/issues/1052

Comment 18 Hans de Goede 2020-03-05 16:39:39 UTC
This is not a GNOME problem at all, this is a known issue with the 5.6-rc# kernels when using a DP-MST dock with more then one monitor connected to the dock. In this case only 1 monitor will light up. Also see:
https://gitlab.freedesktop.org/drm/amd/issues/1052

The upstream kernel folks are working on a fix for this. In the mean time if you are affected by this it is probably best to stick with a 5.5.x kernel for now.

Comment 19 Lukas Ruzicka 2020-03-06 06:31:51 UTC
(In reply to Hans de Goede from comment #18)
> This is not a GNOME problem at all, this is a known issue with the 5.6-rc#
> kernels when using a DP-MST dock with more then one monitor connected to the
> dock. In this case only 1 monitor will light up. Also see:
> https://gitlab.freedesktop.org/drm/amd/issues/1052
> 
> The upstream kernel folks are working on a fix for this. In the mean time if
> you are affected by this it is probably best to stick with a 5.5.x kernel
> for now.

Thanks. I am now sticking with the 5.5.x version which does the trick. I will monitor the situation and handle this bug accordingly.

Comment 20 František Zatloukal 2020-03-06 07:24:20 UTC
Here is kernel with proposed patch to fix: https://koji.fedoraproject.org/koji/taskinfo?taskID=42240475 (still building at the moment)

I'll try it later today.

Comment 21 Hans de Goede 2020-03-06 08:32:13 UTC
(In reply to František Zatloukal from comment #20)
> Here is kernel with proposed patch to fix:
> https://koji.fedoraproject.org/koji/taskinfo?taskID=42240475 (still building
> at the moment)
> 
> I'll try it later today.

Which fix is that? Can you post a link to the patch (series) you added to that scratch build?

Comment 22 František Zatloukal 2020-03-06 08:46:24 UTC
(In reply to Hans de Goede from comment #21)
> (In reply to František Zatloukal from comment #20)
> > Here is kernel with proposed patch to fix:
> > https://koji.fedoraproject.org/koji/taskinfo?taskID=42240475 (still building
> > at the moment)
> > 
> > I'll try it later today.
> 
> Which fix is that? Can you post a link to the patch (series) you added to
> that scratch build?

Yes, sorry, it's this one: https://patchwork.freedesktop.org/series/74295/

Comment 23 František Zatloukal 2020-03-06 12:49:27 UTC
The patch didn't help (tried both legacy and thunderbolt docks).

Comment 24 Hans de Goede 2020-03-07 17:06:45 UTC
(In reply to František Zatloukal from comment #22)
> Yes, sorry, it's this one: https://patchwork.freedesktop.org/series/74295/

Right, I had already tested with version 1 of that series and reported back to Lyude that it does not fix things.

But, good news, for me this is fixed by version 2 of this patch series:
https://patchwork.freedesktop.org/series/74295/

Which should show up in an upstream 5.6-rc# release soon.

Comment 25 Lukas Ruzicka 2020-03-09 14:11:51 UTC
I can confirm that the patch version 2 fixes the problem. In case anybody wanted, I have made a scratch build of the kernel, patch 2 here: https://koji.fedoraproject.org/koji/taskinfo?taskID=42340619

Comment 26 Adam Williamson 2020-03-09 15:57:58 UTC
Proposing as a Beta freeze exception issue, per discussion in https://bugzilla.redhat.com/show_bug.cgi?id=1810070 it would be very good to have all displays light up in situations like this.

Comment 27 Hans de Goede 2020-03-09 16:05:46 UTC
(In reply to Adam Williamson from comment #26)
> Proposing as a Beta freeze exception issue, per discussion in
> https://bugzilla.redhat.com/show_bug.cgi?id=1810070 it would be very good to
> have all displays light up in situations like this.

Note I'm doing a local test-build of an update with the fixes in as we speak. Once that has succeeded I'll push the changes to dist-git. Kicking of an official build of this will have to be done by someone from the Fedora kernel team because of signing.

Comment 28 Hans de Goede 2020-03-09 16:57:05 UTC
I've pushed the changes fixing this to dist-git, to be picked up by the next official build.

For people who want to give the fixes a try before the official build is done, I've started a scratch build here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=42351547

This should be finished in about 2 hours. See here for some generic instructions on installing a kernel directly from koji:
https://fedorapeople.org/~jwrdegoede/kernel-test-instructions.txt

Comment 29 Adam Williamson 2020-03-09 16:58:28 UTC
We are running the blocker/FE review meeting in #fedora-blocker-review right now, and just gave the Plymouth bug FE status. We will vote on FE status for this bug shortly. If it is accepted, it would be great to have an official kernel build with the fix soon, kernel folks, so we can pull it into Beta composes ASAP.

Comment 30 Adam Williamson 2020-03-10 01:00:26 UTC
Discussed during the 2020-03-09 freeze exception review meeting: [0]

Accepted as a freeze exception issue as a significant issue that cannot be fully fixed with an update on affected systems, especially if encryption is enabled. Note we will exercise discretion and may not pull in a kernel build late to fix this if it comes with a lot of unrelated change.

[0] https://meetbot.fedoraproject.org/fedora-blocker-review/2020-03-09/f32-blocker-review.2020-03-09-16.01.txt

Comment 31 Fedora Update System 2020-03-11 16:45:24 UTC
FEDORA-2020-55b2b79091 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-55b2b79091

Comment 32 Fedora Update System 2020-03-12 18:57:20 UTC
kernel-5.6.0-0.rc5.git0.2.fc32, kernel-headers-5.6.0-0.rc5.git0.1.fc32 has been pushed to the Fedora 32 stable repository. If problems still persist, please make note of it in this bug report.

Comment 33 Fedora Update System 2020-03-26 09:25:19 UTC
FEDORA-2020-164659331d has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-164659331d

Comment 34 Fedora Update System 2020-03-27 19:12:07 UTC
FEDORA-2020-164659331d has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-164659331d`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-164659331d

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 35 Fedora Update System 2020-04-05 03:03:23 UTC
FEDORA-2020-164659331d has been pushed to the Fedora 31 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 36 Alex Grönholm 2020-04-29 08:09:21 UTC
I have a similar problem, except with an Optimus laptop (Intel + NVidia). It started well before kernel 5.6 and was always present on my new Dell XPS 7590 laptop. If I try to adjust the resolution on my second screen beyond 1920x1080, the screens freeze until the 20 seconds have passed and the previous setup is applied again. The system log then contains the message "Failed to post KMS update: Failed to set mode 2560x1440 on CRTC 93: No space left on device". This happens regardless of whether the displays are hooked into my thunderbolt dock or directly to the laptop. Can somebody shed some light into what this error means and why it happens? This setup worked perfectly on my previous Dell XPS 15 (9560) laptop.

Comment 37 jtougne 2020-05-05 07:09:26 UTC
(In reply to Hans de Goede from comment #18)
> This is not a GNOME problem at all, this is a known issue with the 5.6-rc#
> kernels when using a DP-MST dock with more then one monitor connected to the
> dock. In this case only 1 monitor will light up. Also see:
> https://gitlab.freedesktop.org/drm/amd/issues/1052
> 
> The upstream kernel folks are working on a fix for this. In the mean time if
> you are affected by this it is probably best to stick with a 5.5.x kernel
> for now.

Hi,
I have the same issue and it was already not working in 5.5x. Now I have 5.6.8-300.fc32.x86_64, the issue remains: 2 screens over 3, when using MST.

There are errors in journalctl:
gnome-shell[4016]: Failed to post KMS update: Failed to set mode 1920x1080 on CRTC 93: No space left on device
gnome-shell[4016]: Failed to post KMS update: Page flip of 93 failed, and no mode set available

00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (rev 07)

T480s (with latest thunderbolt controller fw), Lenovo Thunderbolt docking 3 (with latest FW), 3 external U2419H dell screens.

I tried Windows to go on the same setup using an external nvme m.2 ssd, I get the 3 screens.


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