SSDM starting on VT1, on login Plasma Wayland starting, freezes, runs on other VT

System (minimized)

knurpht@Lenovo-P16:~> fastfetch -l none
knurpht@Lenovo-P16
------------------
OS: openSUSE Tumbleweed x86_64
Host: 21K9CTO1WW (ThinkPad P16s Gen 2)
Kernel: Linux 6.18.9-1-default
Display (LEN41B7): 1920x1200 in 16", 60 Hz [Built-in]
DE: KDE Plasma 6.5.5
WM: KWin (Wayland)
CPU: AMD Ryzen 7 PRO 7840U (16) @ 5.13 GHz
GPU: AMD Radeon 780M Graphics [Integrated]
Memory: 6.56 GiB / 54.61 GiB (12%)
knurpht@Lenovo-P16:~> 

Expected behaviour

  • Boot system
  • SDDM login screen appears
  • Login
  • Plasma DE appears
    This used to work fine

The Issue

  • After system boot, SDDM login screen appears
  • User ( also a fresh new user ) logs in
  • Plasma DE starts loading, then freezing cursor and keyboard entry
  • After ~10 secs, keyboard is fully unresponsive, touchpad ditto, only a system reset possible

What I already tried

  • Update the system. This resulted in “weird plans from zypper”, I suspected a borked rpmdb so rebuilt that, dup went fine after that, but may have played a role (???). No solution
  • Create a new user, login as that user. No solution.
  • Move back from sddm.service to display-manager-legacy.sevice. No solution.
  • Search the journal, but could not see / find anything. No solution

Workaround found

  • In the SDDM login screen hit Ctrl+Alt+F2
  • Login as your user
  • check VTs with who -aH, check the PIDs with ps -ea | grep <PID>
  • Hit Ctrl+Alt+F1 to SDDM login screen
  • Try to login, the freeze happens, but a quick Ctrl+Alt+F2 brings back the tty of the logged in user
  • check VTs with who -aH, check the PIDs with ps -ea | grep <PID>, see that SDDM is now running on a different tty, the display did not switch to that one, Ctrl+Alt+F1 shows the SDDM login screen again, Ctrl+Alt+F(3,4,5,6 …replace by tty# found) brings back a fully working DE.

Questions

  • How could this be explained? Keep in mind the rebuild of the rpmdb.
  • What output would you need to find the culprit?
  • Is there a config / env entry that I should fix?

https://bugzilla.opensuse.org/show_bug.cgi?id=1257873

Maybe?

Yes, seems similar to that described here recently…

1 Like

Same problem here, but in my humble opinion, it’s not systemd, but the latest update from ddcutil.

...
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-2 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-3 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-4 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-5 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-6 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-7 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-8 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-9 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-10 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-11 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-12 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-13 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-14 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-15 lacks R/W permissions
Feb 14 19:46:09 t14g5a org_kde_powerdevil[2369]: [  2506] Device /dev/i2c-16 lacks R/W permissions
...
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: Failed to find connector name for /dev/i2c-10, set_connector_for_businfo_using_edid at line 1376 in file i2c_bus_core.c.
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2506] Adding connected display with bus 10
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2506] Emitting DDCA_Display_Status_Event[ 49.538:  DDCA_EVENT_DISPLAY_CONNECTED, , dref: DDCA_Display_Ref[4], io_path:/dev/i2c-10, ddc working: false]
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2506] Starting 1 callback threads
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2506] libddcutil callback thread 0x7fe7980134b0 started
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2506] Started 1 event callback thread(s)
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2505] recheck thread terminating because watch thread terminated
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2505] Flushing request queue entry for Display_Ref[3:bus /dev/i2c-2 @0x7fe798028100]
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  3293] Invoking callback function 0x7fe7c5cb0110 for event DDCA_Display_Status_Event[ 49.538:  DDCA_EVENT_DISPLAY_CONNECTED, , dref: DDCA_Display_Ref[4], io_p>
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  3293] Callback function 0x7fe7c5cb0110 for event DDCA_Display_Status_Event[ 49.538:  DDCA_EVENT_DISPLAY_CONNECTED, , dref: DDCA_Display_Ref[4], io_path:/dev/>
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2369] Watch thread terminated.
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: Failed to find connector name for /dev/i2c-10, set_connector_for_businfo_using_edid at line 1376 in file i2c_bus_core.c.
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: Failed to find connector name for /dev/i2c-10, set_connector_for_businfo_using_edid at line 1376 in file i2c_bus_core.c.
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: EDID readable from /sys but not using I2C. Display change detection unreliable.
Feb 14 19:46:45 t14g5a org_kde_powerdevil[2369]: [  2369] EDID readable from /sys but not using I2C. Display change detection unreliable.
...

I manually rolled back the two ddcutil packages to the Versions from 20260209
(https://download.opensuse.org/history/20260209/)

  • libddcutil5-2.2.1-1.1.x86_64.rpm
  • ddcutil-i2c-udev-rules-2.2.1-1.1.noarch.rpm

Since then, I have been able to log in again and there are no errors visible in the log.

3 Likes

@ v.filip, thanks a lot, this brings back normal behaviour. I’ll add to the bug report

2 Likes

Oh, by the way: Welcome to these forums.

1 Like

Interesting, so we have 2 udev updates.
Each on its own is fine, mix them together and we have an issue.
Ddcutil makes the most sense since it only starts after ssdm for me, doesn’t seem to happen in gnome and maybe explains why x11 wasn’t affected.

I knew I had forgotten something. My case was also on X11.

I just tested this.

went to

libddcutil5-2.2.1-1.1.x86_64.rpm
ddcutil-i2c-udev-rules-2.2.1-1.1.noarch.rpm

rebooted, all fine.
removed the lock on the udev systemd
updated, rebooted
no mouse of keyboard under wayland, works fine under X11 (as I am typing there)

so I continue this in my own thread I guess as it seems different.

If you did not lock these two, and updated afterwards after unlocking the udev systemd, then the two above would also be updated again. Just wondering.

Sorry, yes did lock

I’m running openSUSE Tumbleweed with KDE Plasma on a notebook with AMD Ryzen AI 9 HX 370 and ran into this issue, too. It was running fine until I updated it two days ago: as soon as I tried to login, the whole computer would freeze when trying to load the desktop.

I can confirm that the problem is caused by the ddcutil/libddcutil5/ddcutil-i2c-udev-rules 2.2.5 package updates. The ddcutil maintainer is aware of the issue and has released a hotfix by reverting a certain commit:

I hope the Tumbleweed maintainers will pick that up, soon. In the meantime, pinning those packages to version 2.2.1, so that they won’t be updated, solves the immediate issue, but I wonder if having this forums entry here is enough to raise attention to this issue. Would it make sense to also raise a bug in the openSUSE Bugzilla?

1 Like

Refer to the bugzilla link earlier in this topic.

That’s not the same issue, though.

I’ve just built a patched ddcutil, if folks can please test it and let me know, if it solves your issue, I’ll get it pushed to Factory

https://bugzilla.opensuse.org/show_bug.cgi?id=1257873#c18

Ok, let me revise, I’ve NOW pushed a patched version to that repo. It always helps when you remember to actually upload the patch to the OBS repo.

So, I went ahead with a not-yet-patched version from your repo, and now there is one?

Maybe? The version on the patched version should be 2.2.5-48

Thanks, I have replied to you in https://bugzilla.opensuse.org/show_bug.cgi?id=1257873, the patch works for me.

Tested that -48 ones too, issue still the same, rolling back to the ones mentioned does.