kded5 segfaulting on startup

As the title says: Each time I boot up my laptop (ASUS N61jv, Tumbleweed) the kded5 crashes. I cannot automatically report this crash since no address has been registered for this program that would allow this (used to work in plasma 4). Is this a known issue? How can I get rid of this?

Cheers

Well, there have been a few similar threads.

How can I get rid of this?

Find out why it is crashing and fix it… :wink:

The most likely problems I know of:

  • libKF5Activities5 trying to communicate with KDE4’s kactivities4. Check whether you have kactivities4 installed and remove it.
  • kded5 tries to load a KDE4 plugin. Likely candidates judging from the previous posts are:
    [LIST]
  • KDE4’s plasma-nm, make sure that you have plasma-nm5 installed instead, and the plasma-nm5 plugins (i.e. no plasma-nm-xxx packages)
  • kde4-print-manager, uninstall it if it is installed and install kde-print-manager instead which is the Plasma5 version

[/LIST]
Those problems were caused by incorrect package dependencies that should be fixed meanwhile.

If that doesn’t help, please post the backtrace, or run kded5 manually in a terminal window and post the output.

Thx for the hints: I do not have my laptop with me atm. I will check this evening.

Just note that I did a clean install of Tumbleweed after plasma5 became the official KDE desktop of tumbleweed. So there should be not packages in my installation coming from a previous install.

Cheers

I have the following installed (in particular none of the packages you mentioned seems to be installed):

<prompt> zypper search kde4 | grep --color "i\ |\ "
**i | **flash-player-kde4 | Adobe Flash Plugin and Standalone Player Settings | Paket
**i | **kde4-filesystem | Grundlegende-Verzeichnisstruktur von KDE | Paket
**i | **kde4-kgreeter-plugins | The KDE Greeter Plugin Components | Paket
**i | **kde4-l10n-devel | KDE SDK Package | Paket
**i | **libkde4 | KDE-Basisbibliotheken | Paket
**i | **libkde4-devel | KDE Base Libraries: Build Environment | Paket
**i | **libproxy1-config-kde4 | Libproxy module for KDE configuration | Paket
**i | **libreoffice-kde4 | KDE4 Extensions for LibreOffice | Paket
**i | **mozilla-kde4-integration | Mozilla KDE-Integration | Paket

   &lt;prompt&gt; zypper search plasma | grep --color "i\ |\ "     

**i | **kde_plasma | Plasma 5 Desktop | Schema
**i | **patterns-openSUSE-kde_plasma | Plasma 5 Desktop | Paket
**i | **plasma-framework | Plasma library and runtime components based upon KF5 and Qt5 | Paket
**i | **plasma-framework-components | Plasma QML components | Paket
**i | **plasma-framework-devel | Plasma library and runtime components | Paket
**i | **plasma-framework-private | Plasma private library and runtime components | Paket
**i | **plasma-nm5 | Plasma applet written in QML for managing network connections | Paket
**i | **plasma-nm5-openconnect | OpenConnect support for plasma-nm5 | Paket
**i | **plasma-nm5-openvpn | OpenVPN support for plasma-nm5 | Paket
**i | **plasma-nm5-pptp | PPTP support for plasma-nm5 | Paket
**i | **plasma-nm5-vpnc | Vpnc support for plasma-nm5 | Paket
**i | **plasma5-addons | Additional Plasma5 Widgets | Paket
**i | **plasma5-addons-kimpanel | A generic input method panel for Oriental languages | Paket
**i | **plasma5-desktop | The KDE Plasma Workspace Components | Paket
**i | **plasma5-desktop-branding-openSUSE | openSUSE KDE Extension | Paket
**i | **plasma5-session | The KDE Session | Paket
**i | **plasma5-workspace | The KDE Plasma Workspace Components | Paket
**i | **plasma5-workspace-branding-openSUSE | The KDE Runtime Components | Paket
**i | **plasma5-workspace-devel | The KDE Plasma Workspace Components | Paket
**i | **plasma5-workspace-libs | The KDE Plasma Workspace Components | Paket

I forgot: Also no kactivities4:

   &lt;prompt&gt; zypper search kactivities | grep --color "i\ |\ "       

**i | **kactivities5 | KDE Plasma Activities support | Paket
**i | **kactivities5-devel | KDE Plasma Activities support | Paket
**i | **kactivities5-imports | KDE Plasma Activities support | Paket
**i | **libkactivities6 | Development files and headers for kactivities | Paket

The stacktrace:

Application: kded5 (kded5), signal: Segmentation fault
Using host libthread_db library “/lib64/libthread_db.so.1”.
[Current thread is 1 (Thread 0x7f573ed92780 (LWP 1762))]

Thread 2 (Thread 0x7f5731d5f700 (LWP 1763)):
#0 0x00007f573e6ed4cd in poll () at /lib64/libc.so.6
#1 0x00007f573877a322 in () at /usr/lib64/libxcb.so.1
#2 0x00007f573877bdef in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3 0x00007f57342b2c69 in () at /usr/lib64/qt5/plugins/platforms/libqxcb.so
#4 0x00007f573c27f9ef in () at /usr/lib64/libQt5Core.so.5
#5 0x00007f573bc40484 in start_thread () at /lib64/libpthread.so.0
#6 0x00007f573e6f5a4d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f573ed92780 (LWP 1762)):
[KCrash Handler]
#5 0x00007f57253fd790 in ()
#6 0x00007f573c269dc3 in QInternal::activateCallbacks(QInternal::Callback, void**) () at /usr/lib64/libQt5Core.so.5
#7 0x00007f573c459fa2 in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#8 0x00007f573c49196e in QObjectPrivate::setParent_helper(QObject*) () at /usr/lib64/libQt5Core.so.5
#9 0x00007f573c491f10 in QObject::~QObject() () at /usr/lib64/libQt5Core.so.5
#10 0x00007f573c496679 in QSocketNotifier::~QSocketNotifier() () at /usr/lib64/libQt5Core.so.5
#11 0x00007f573cd9ead7 in () at /usr/lib64/libQt5DBus.so.5
#12 0x00007f5739eb2013 in () at /lib64/libdbus-1.so.3
#13 0x00007f5739eb074e in () at /lib64/libdbus-1.so.3
#14 0x00007f5739eb07c9 in () at /lib64/libdbus-1.so.3
#15 0x00007f5739eafc57 in () at /lib64/libdbus-1.so.3
#16 0x00007f5739e9baa2 in () at /lib64/libdbus-1.so.3
#17 0x00007f573cd99ba2 in () at /usr/lib64/libQt5DBus.so.5
#18 0x00007f573cd90e92 in () at /usr/lib64/libQt5DBus.so.5
#19 0x00007f573cd90f19 in () at /usr/lib64/libQt5DBus.so.5
#20 0x00007f573e644c39 in __run_exit_handlers () at /lib64/libc.so.6
#21 0x00007f573e644c85 in () at /lib64/libc.so.6
#22 0x00007f573d927c10 in KDBusService::KDBusService(QFlags<KDBusService::StartupOption>, QObject*) () at /usr/lib64/libKF5DBusAddons.so.5
#23 0x00007f573e9bc244 in kdemain(int, char**) (argc=1, argv=0x7fff28c2de08) at /usr/src/debug/kded-5.10.0/src/kded.cpp:799
#24 0x00007f573e62f8c5 in __libc_start_main () at /lib64/libc.so.6
#25 0x00000000004007f9 in _start () at …/sysdeps/x86_64/start.S:118

Hm, it crashes somewhere in Qt5.

Your backtrace looks exactly like the one here:
https://forums.opensuse.org/showthread.php/499610-how-to-install-kde-5-step-by-step?p=2664342#post2664342
where the crash apparently was caused by an incompatible mix of packages.

So please post your repo list:

zypper lr -d

Does YaST run? Or does it crash as well?

yast works without any issues.

<prompt> zypper lr -d

| Alias | Name | Aktiviert | GPG-Überprüfung | Aktualisieren | Priorität | T

yp | URI | Dienst
–±---------------------------------±---------------------------------±----------±----------------±--------------±----------±-
--------±------------------------------------------------------------------------------±------
1 | LokaleRPMs | LokaleRPMs | Ja | ( p) Ja | Ja | 99 | p
laindir | dir:///home/benjamin/LokaleRPMs |
2 | Packman-openSUSE_Tumbleweed | Packman-openSUSE_Tumbleweed | Ja | (r ) Ja | Ja | 99 | r
pm-md | http://packman.inode.at/suse/openSUSE_Tumbleweed/ |
3 | download.opensuse.org-non-oss | openSUSE_Tumbleweed-NonOSS | Ja | ( p) Ja | Ja | 99 | y
ast2 | http://download.opensuse.org/tumbleweed/repo/non-oss/ |
4 | download.opensuse.org-oss | openSUSE_Tumbleweed-OSS(Debug) | Ja | (r ) Ja | Ja | 99 | y
ast2 | http://download.opensuse.org/debug/tumbleweed/repo/oss/ |
5 | download.opensuse.org-oss_1 | openSUSE_Tumbleweed-OSS(Sources) | Ja | (r ) Ja | Ja | 99 | y
ast2 | http://download.opensuse.org/source/tumbleweed/repo/oss/ |
6 | download.opensuse.org-oss_2 | openSUSE_Tumbleweed-OSS | Ja | (r ) Ja | Ja | 99 | y
ast2 | http://download.opensuse.org/tumbleweed/repo/oss/ |
7 | download.opensuse.org-tumbleweed | openSUSE_Tumbleweed-OSS_Update | Ja | ( p) Ja | Ja | 99 | r
pm-md | http://download.opensuse.org/update/tumbleweed/ |
8 | openSUSE_Tumbleweed-OBS:Java | openSUSE_Tumbleweed-OBS:Java | Ja | (r ) Ja | Ja | 99 | r
pm-md | http://download.opensuse.org/repositories/Java:/packages/openSUSE_Tumbleweed/ |
9 | openSUSE_Tumbleweed-Science | openSUSE_Tumbleweed-Science | Ja | (r ) Ja | Ja | 99 | r
pm-md | http://download.opensuse.org/repositories/science/openSUSE_Tumbleweed/ |

Well, true: The crash comes from somewhere in a Qt lib. It originates however from KDBusService constructor…

Could there be some locks missing?

I guess you already knew (assumed it) but kded5 seems to be running after the start (pointing to an initialization issue):

   root@Rechensklave:[Prozesse: 0] ~] pgrep -a kde 

45 kdevtmpfs
1574 /bin/sh /usr/bin/startkde
1751 /usr/lib64/libexec/kf5/start_kdeinit --kded +kcminit_startup
1752 kdeinit5: Running…
1756 kded5 [kdeinit5]
1850 /usr/lib64/libexec/polkit-kde-authentication-agent-1
1930 kdeinit4: kdeinit4 Running…
1945 kdeinit4: kded4 [kdeinit]

What is quite unexpected is kdeinit4. Isn’t that supposed to be replaced?

And kded5’s kdemain() before that.
Of course it has to originate there as it is kded5 that’s crashing…

Could there be some locks missing?

What locks do you mean?

I don’t think such a crash should happen if all your packages are up to date.
So try to run “sudo zypper dup --from 6” to see whether that fixes it.
If you get a conflict, please ask.

Btw, have you tried a fresh user account already?

What does that mean exactly?
It runs if you run it a second time?

What is quite unexpected is kdeinit4. Isn’t that supposed to be replaced?

No. That’s part of kdelibs4, which you need for running any KDE4 application.

But you probably shouldn’t have polkit-kde-authentication-agent-1 (that’s the KDE4 version). Uninstall that and install polkit-kde-authentication-agent-5 instead.
The crash could be caused by some kded module (powerdevil e.g.) requesting polkit privileges.

I meant (speculation): If the QObject in the stacktrace is in a valid state, then the issue could come from Thread 1 and Thread 2 accessing a shared resource via the callback at the end of the stacktrace. In that case that access would be lacking a mutex lock resp. a std::lock_guard.

But your hint regarding the polkit agent sounds like a good idea. I’ll try that. But it is strange that it is even on the system as this has been a install from the plasma5 switch snapshot of TW and I certainly did not install it by hand…

Before I break anything. What from the following should I uninstall?

   @Rechensklave:[Prozesse: 0] ~] zypper search polkit | grep --color "i\ |\ " 

**i | **gconf-polkit | GNOME Konfigurations-Datenbanksystem | Paket
**i | **libpolkit-qt-1-1 | PolicyKit Library Qt Bindings | Paket
**i | **libpolkit-qt5-1-1 | PolicyKit Library Qt Bindings | Paket
**i | **libpolkit-qt5-1-devel | PolicyKit Library Qt Bindings | Paket
**i | **libpolkit0 | PolicyKit Authorization Framework – Libraries | Paket
**i | **polkit | PolicyKit Authorization Framework | Paket
**i | **polkit-default-privs | SUSE PolicyKit default permissions | Paket
**i | **polkit-devel | Development files for PolicyKit | Paket
**i | **polkit-gnome | PolicyKit integration for the GNOME desktop | Paket
**i | **polkit-kde-agent-5 | PolicyKit-Legitimationsdienst für KDE | Paket
**i | **typelib-1_0-Polkit-1_0 | PolicyKit Authorization Framework – Introspection bindings | Paket

Nothing.
You actually do have polkit-kde-authorication-agent-5 installed. The path of the command is /usr/lib64/libexec, which is the KF5 version (the KDE4 version is installed to /usr/lib64/kde4/libexec). Sorry I haven’t looked good enough…

And on second thought it should not matter at all. Even the KDE4 version should work fine with Plasma5, I had that setup for months…

kded4 or kdeinit4 running should not cause any problem either. Although it should probably not be running right after login, especially if it is a clean session.

I have to say that I have no further idea at the moment other than the “zypper dup”.

Let me try to ring another bell:

You suggested that I try to create a whole new account and check if it works. Just that you know: I recycled the /home/<user> directory. Could that cause the problem (with old config files lying around)?

Normally it shouldn’t. But you never know.

Plasma5 uses different locations for the config files than KDE4 did, and the desktop doesn’t migrate any (well, most at least) settings either. Applications should, but I don’t think kded5 does.

Anyway, trying with a fresh user account is always a good (and easy) test to see whether the problem is related to user-specific files or is rather a system-wide problem.

Ok, creating a new account “solved” the problem.It did not occur there. When I logged in to my normal user account the crash resurfaced.

Interesting aside: Susegreeter wanted to introduce me to KDE4…

Ok.
So at least it is a user-specific problem.
Since it is kded5 that’s crashing, I would start with removing ~/.config/kded5rc, and wiping out ~/.cache/ should not cause any harm either. That contains KF5’s system cache of installed .desktop files and plugins, including kded modules.

Interesting aside: Susegreeter wanted to introduce me to KDE4…

Yeah. The text has not been changed yet in KF5’s SuSEgreeter.

Ok, I removed that kded5rc and wiped ~/.cache/. The problem is still there.