Sddm login only shows on the (closed) laptop screen

I have a problem on my Dell 5430 2-in-1, connected to two external screens through a Dell Thunderbolt 4 dock. The sddm login screen only shows on the laptop screen after boot, which is inconvenient since I typically keep the laptop lid closed.

This started when I updated from 20240427 Tumbleweed snapshot to 20240503 (and now updating to20240517 didn’t change anything) . If I rollback to 20240427, everything works again.

When I boot, I get the pre-grub screens on external displays (I’ve set external screens to be primary in bios). I get grub on external displays. I get the boot console messages on external displays. It’s only when sddm starts that it shows the login screen only on the (closed) laptop screen. If I use ctrl-alt-f1 to switch to console login, it shows on external screens (and switching back to sddm shuts them down). After I login, I get all screens.
But this I find most interesting: When I login (to Wayland, but X11 seemed to work the same) and then logout, then suddenly sddm shows the login on external screens also!

Hi,
can you show your /var/log/Xorg.0.log (paste it to https://paste.opensuse.org/ and share the link here) and your
inxi -Faz
with connected screens
?

I am not sure I will be able to help you with that, but whoever is knowledgeble will need this information I think.

Here are the files. I included two Xorg.0.logs. The first Xorg.0.log is from right after boot (after sddm is only on the (closed) laptop screen, I switched to console to get the log file).
The second Xorg.0.log-logout is right after I logout, and now sddm is visible on external screens also. Making a diff between those two shows this interesting difference (after cutting out timestamps from beginning of lines):

diff Xorg.0.log-cut.txt Xorg.0.log-logout-cut.txt
...
119a120,122
>  (II) modeset(0): Output DP-1-1 has no monitor section
>  (II) modeset(0): Output DP-1-2 has no monitor section
>  (II) modeset(0): Output DP-1-3 has no monitor section
240a244,424
>  (II) modeset(0): EDID for output DP-1-1
>  (II) modeset(0): Manufacturer: LEN  Model: 61a8  Serial#: 16843009
>  (II) modeset(0): Year: 2019  Week: 38
>  (II) modeset(0): EDID Version: 1.4
>  (II) modeset(0): Digital Display Input
...
>  (II) modeset(0): Output DP-1-1 connected
>  (II) modeset(0): Output DP-1-2 connected
>  (II) modeset(0): Output DP-1-3 disconnected

So after the login/logout, “new” outputs “DP-1-x” are found, and the first two are the external screens connected to the docking station.

Xorg.0.log
Xorg.0.log-logout
inxi -Faz

Here’s one more log, this is after I boot into the last snapshot where sddm used external screens right after boot. In this one, the “DP-1-x” outputs are there right from the beginning.

Xorg.0.log-old

One more thing I noticed: When I boot the machine and external screens are off for sddm, if I wait for ~30 secs and restart the X server with ctlr-alt-backspace, then the external screens start working. Combined with the logs I included earlier, maybe this is a timing problem? Something seems to be delaying the detection of the docking station outputs, which is kind of weird since the ctrl-alt-f1 console still works all the time on external screens.

[    12.883] (II) modeset(0): Output eDP-1 connected
[    12.883] (II) modeset(0): Output HDMI-1 disconnected
[    12.883] (II) modeset(0): Output DP-1 disconnected
[    12.883] (II) modeset(0): Output DP-2 disconnected
[    12.883] (II) modeset(0): Using exact sizes for initial modes
[    12.883] (II) modeset(0): Output eDP-1 using initial mode 1920x1080 +0+0
[   197.702] (II) modeset(0): Output eDP-1 connected
[   197.702] (II) modeset(0): Output HDMI-1 disconnected
[   197.702] (II) modeset(0): Output DP-1 disconnected
[   197.702] (II) modeset(0): Output DP-2 disconnected
[   197.702] (II) modeset(0): Output DP-1-1 connected
[   197.703] (II) modeset(0): Output DP-1-2 connected
[   197.703] (II) modeset(0): Output DP-1-3 disconnected
[   197.703] (II) modeset(0): Using spanning desktop for initial modes
[   197.703] (II) modeset(0): Output eDP-1 using initial mode 1920x1080 +0+0
[   197.703] (II) modeset(0): Output DP-1-1 using initial mode 2560x1440 +1920+0
[   197.703] (II) modeset(0): Output DP-1-2 using initial mode 2560x1440 +4480+0
[    11.656] (II) modeset(0): Output eDP-1 connected
[    11.656] (II) modeset(0): Output HDMI-1 disconnected
[    11.656] (II) modeset(0): Output DP-1 disconnected
[    11.656] (II) modeset(0): Output DP-2 disconnected
[    11.656] (II) modeset(0): Output DP-1-1 connected
[    11.656] (II) modeset(0): Output DP-1-2 connected
[    11.656] (II) modeset(0): Output DP-1-3 disconnected
[    11.656] (II) modeset(0): Using spanning desktop for initial modes
[    11.656] (II) modeset(0): Output eDP-1 using initial mode 1920x1080 +0+0
[    11.656] (II) modeset(0): Output DP-1-1 using initial mode 2560x1440 +1920+0
[    11.656] (II) modeset(0): Output DP-1-2 using initial mode 2560x1440 +4480+0

May be kernel log combined with Xorg.log (for both good and bad cases) could shade some light.

Yes, I noticed the same.

Ok, here are Xorg.0.log and dmesg after booting to current 6.9.1-1 and the snapshot 6.8.7-1 where external screens were still working in sddm right after boot:

(It seems that there are differences at least in i915 messages.)

Xorg.0.log, 6.8.7-1
dmesg, 6.8.7-1
Xorg.0.log, 6.9.1-1
dmesg, 6.9.1-1

[    11.068] (II) modeset(0): Output eDP-1 connected
[    11.068] (II) modeset(0): Output HDMI-1 disconnected
[    11.068] (II) modeset(0): Output DP-1 disconnected
[    11.068] (II) modeset(0): Output DP-2 disconnected
[    11.068] (II) modeset(0): Output DP-1-1 connected
[    11.068] (II) modeset(0): Output DP-1-2 connected
[    11.068] (II) modeset(0): Output DP-1-3 disconnected
[    11.068] (II) modeset(0): Using spanning desktop for initial modes
[    11.068] (II) modeset(0): Output eDP-1 using initial mode 1920x1080 +0+0
[    11.068] (II) modeset(0): Output DP-1-1 using initial mode 2560x1440 +1920+0
[    11.068] (II) modeset(0): Output DP-1-2 using initial mode 2560x1440 +4480+0
[    11.068] (==) modeset(0): Using gamma correction (1.0, 1.0, 1.0)
[    11.068] (==) modeset(0): DPI set to (96, 96)

Here we see a typical result of using a dock. The video ports get two hyphen names normally seen whenever DisplayPort MST is employed, using a single connection from a computer to connect to one or more external displays.

[    12.137] (II) modeset(0): Output eDP-1 connected
[    12.137] (II) modeset(0): Output HDMI-1 disconnected
[    12.137] (II) modeset(0): Output DP-1 disconnected
[    12.137] (II) modeset(0): Output DP-2 disconnected
[    12.137] (II) modeset(0): Using exact sizes for initial modes
[    12.137] (II) modeset(0): Output eDP-1 using initial mode 1920x1080 +0+0
[    12.137] (==) modeset(0): Using gamma correction (1.0, 1.0, 1.0)
[    12.137] (==) modeset(0): DPI set to (96, 96)

Here, MST is absent - the dock, and thus the external displays, have disappeared. I don’t see anything to explain why.

Is behavior different if you only connect one display to the dock?

With just one display connected the problem remains the same, unfortunately.

I now managed to do a little more detective work, and I found an old snapshot that had both 6.8.7-1 and 6.8.8-1 kernels installed (thanks snapper!), so I could boot into the same filesystem snapshot with two kernels, where 6.8.7 didn’t have the problem and 6.8.8 already did. And sure enough, if I booted to 6.8.7, external displays stayed awake when sddm login started, but with 6.8.8 they went to powersave (after displaying the initial boot messages before sddm). And with 6.8.8 a single login/logout was enough to keep the displays on when sddm came back on.

I’ve again attached both dmesgs and Xorg.0.logs for those boots. With my limited knowledge and time, the only difference I noticed was that with 6.8.8 the dmesg seems to indicate that thunderbolt was detected 4 seconds later than in 6.8.7

dmesg 6.8.7-1
dmesg 6.8.8-1
Xorg.0.log 6.8.7-1
Xorg.0.log 6.8.8-1

If when externals are black, and you Ctrl-Alt-F4 (or 3 or 5 or 6), then strike whichever Alt-F (1?, 2?, 7?) is needed to return to your login screen, does it wake up the externals?

Does power cycling the dock help?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.