KDE daemon crashes after tablet driver update

I updated my Wacom tablet driver through zypper in an attempt to fix a glitch (it kept forgetting the display it’s mapped to). The update went fine, seemed to fix the issue, but upon reboot it seems some fundamental package was broken by the update, possibly qt. I’m not well versed in Linux yet to be sure.

Now the daemon crashes upon start. I’m using auto login. I get a black screen, no taskbar or anything, and an error:

We’re sorry, kded6 closed unexpectedly.

We cannot report this error, because kded6 does not provide a bug reporting address.

Crash information:

Application: kded6 (kded6), signal: Segmentation fault


This GDB supports auto-downloading debuginfo from the following URLs:
  <https://debuginfod.opensuse.org/>
Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal]
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.

warning: Can't open file /memfd:/.nvidia_drv.XXXXXX (deleted) during file-backed mapping note processing
[New LWP 2037]
[New LWP 2051]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/kded6'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f61f389a25c in __pthread_kill_implementation () from /lib64/libc.so.6
[Current thread is 1 (Thread 0x7f61f3022940 (LWP 2037))]
python sentry-sdk not installed :(
Cannot QML trace cores :(
[Current thread is 1 (Thread 0x7f61f3022940 (LWP 2037))]

Thread 2 (Thread 0x7f61f1c006c0 (LWP 2051)):
#0  0x00007f61f390ebcf in poll () at /lib64/libc.so.6
#1  0x00007f61f35b38aa in ??? () at /lib64/libxcb.so.1
#2  0x00007f61f35b541c in xcb_wait_for_event () at /lib64/libxcb.so.1
#3  0x00007f61f278a378 in ??? () at /usr/lib64/qt6/plugins/platforms/../../../libQt6XcbQpa.so.6
#4  0x00007f61f431f597 in ??? () at /lib64/libQt6Core.so.6
#5  0x00007f61f38983b2 in start_thread () at /lib64/libc.so.6
#6  0x00007f61f391d5fc in __clone3 () at /lib64/libc.so.6

Thread 1 (Thread 0x7f61f3022940 (LWP 2037)):
[KCrash Handler]
#4  0x00007f61f4975714 in ??? () at /lib64/libQt6Gui.so.6
#5  0x00007f61f4a2a7ab in QInputDevice::~QInputDevice() () at /lib64/libQt6Gui.so.6
#6  0x00007f61f278f6a7 in ??? () at /usr/lib64/qt6/plugins/platforms/../../../libQt6XcbQpa.so.6
#7  0x00007f61f41f4e9e in QObject::event(QEvent*) () at /lib64/libQt6Core.so.6
#8  0x00007f61f55dee35 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt6Widgets.so.6
#9  0x00007f61f41ada30 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt6Core.so.6
#10 0x00007f61f41b3a20 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt6Core.so.6
#11 0x00007f61f446beb4 in ??? () at /lib64/libQt6Core.so.6
#12 0x00007f61f431f0b5 in ??? () at /lib64/libQt6Core.so.6
#13 0x00007f61f3843961 in __cxa_finalize () at /lib64/libc.so.6
#14 0x00007f61f412e9e7 in ??? () at /lib64/libQt6Core.so.6
#15 0x00007f61f5c409f0 in ??? ()
#16 0x00007f61f5c8c102 in _dl_call_fini () at /lib64/ld-linux-x86-64.so.2
#17 0x00007f61f5c8f4ce in _dl_fini () at /lib64/ld-linux-x86-64.so.2
#18 0x00007f61f3843f31 in __run_exit_handlers () at /lib64/libc.so.6
#19 0x00007f61f3844000 in exit () at /lib64/libc.so.6
#20 0x00007f61f5c57ad3 in KDBusService::KDBusService(QFlags<KDBusService::StartupOption>, QObject*) () at /lib64/libKF6DBusAddons.so.6
#21 0x000055cfb66b53f3 in ??? ()
#22 0x00007f61f382a2ae in __libc_start_call_main () at /lib64/libc.so.6
#23 0x00007f61f382a379 in __libc_start_main_impl () at /lib64/libc.so.6
#24 0x000055cfb66b58d5 in ??? ()

I do have access to the web browser and password manager, they open on startup and work fine. :joy:

My plan is to get to reach terminal and run a proper zypper dup.

I was hoping to start the terminal from Dolphin, but shortcuts to open Dolphin don’t work and trying to open it from the Downloads tab in the web browser does nothing. I can browse files from the web browser though, so yay?

I can’t run zypper or most things from the Emergency Mode, it’s not mounting sysroot I think (I forgot to write this down. sorry). Rescue doesn’t load. I’ll try to create a live pendrive tomorrow, but what else can I try?

I’m using ext4 because the power grid was very unstable last year, so no snapper for me.

Solved the issue using a patchwork of slightly out of date advice from all over the internet. Some of it might not be sound but it’s all I had at hand, and I’m sharing it here in case that’s also the only option someone with a similar issue has to try.

So, no matter how creative I got trying to reach the terminal in the booted system was a no go.

Mounting /sysroot in emergency mode worked, but I still had no access to most commands, including zypper, and no knowledge of how kickstart them after mounting.

That left the Live USB option. Upgrading was no go, it didn’t recognize the linux version. After booting into it, connecting to the internet and selecting the right keyboard layout I opened a terminal and:

  1. sudo mount -t ext4 /dev/sda4 /mnt, with sda4 being my system partition.
  2. chroot /mnt
    I didn’t mount proc or anything, more on that later.
  3. zypper dup --force-resolution --no-recommends -l -y
    Plain zypper dup didn’t work. There was a conflict with different package versions being from openSUSE and packman repos, I couldn’t select a solution as the dup failed immediately with “Cannot read input: bad stream or EOF” after prompting for a solution, and disabling packman didn’t solve it. But ensuring I didn’t have to type anything with -l -y to accept all licenses and questions, --force-resolution to make it pick the repo it thought more appropriate (openSUSE), and ignoring recommends to decrease the chance of conflicts, this did work.

After a very long distro update it failed, however, to build a functional initrd. I could no longer boot at all, it got stuck at the loading animation, and pressing Esc showed it hung at “A start job is running for /dev/disk/by-uuid/(uuid of system partition)”.

I backed up the initrd files just in case, having 3 now, the past kernel before the one that was current yesterday (I didn’t mention it but it doesn’t load either), the one that was current, and the new from today’s dup.

Then, back to the live CD:

  1. Terminal again, su -
  2. Mount the system again mount -t ext4 /dev/sda4 /mnt
  3. mount -t proc none /mnt/proc
    mount --bind /dev /mnt/dev
    mount --bind /sys /mnt/sys
    I had seen the advice to bind before, but it was slightly different and mounting proc failed, so I ignored it. Pretty sure it’s what caused the initrd failure. Then I found these and they worked.
  4. chroot /mnt /bin/bash
  5. dracut -f --regenerate-all to fix it.

And finally, a system that boots with a working daemon and everything in its proper place. Or almost.

The good news is that it boots and the tablet seems to be working correctly now.

The bad news is that my displays aren’t being properly recognized. Only the main turns on and appears in the settings, as “None”, the second doesn’t at all. I can force it to turn on by powering off and on again the main one, to which the second is daisy chained, but it’ll still not be listed and will have wrong settings and resolution.

My GPU seem to be working fine. hwinfo --monitor lists both displays correctly when using the previous kernel, crashes plasmashell on the current, but the current is the one having issues with sleep and displays and stuff, so…

This worked for me too. Thank you !

1 Like

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