Bug 385533 - kactivitymanagerd: Crash when logging out of Plasma
Summary: kactivitymanagerd: Crash when logging out of Plasma
Status: RESOLVED FIXED
Alias: None
Product: kactivitymanagerd
Classification: Plasma
Component: general (show other bugs)
Version: 5.10.95
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Ivan Čukić
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-09 19:06 UTC by Rainer Finke
Modified: 2018-01-22 07:53 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rainer Finke 2017-10-09 19:06:56 UTC
When I loggout of Plasma 5.11 beta (5.10.95) on X11 and I have a applicatiob like Konsole open, there is always a crash of kactivitymagerd.

Crash log:
Okt 09 20:54:35 pc sddm-helper[6687]: [PAM] Closing session
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc sddm-helper[6687]: pam_unix(sddm:session): session closed for user username
Okt 09 20:54:35 pc dbus-daemon[1082]: Activating service name='org.kde.kglobalaccel'
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc sddm-helper[6687]: pam_kwallet5(sddm:session): pam_kwallet5: pam_sm_close_session
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc sddm-helper[6687]: pam_kwallet5(sddm:setcred): pam_kwallet5: pam_sm_setcred
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc kdeinit5[6732]: bluedevil: Destroyed
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc sddm-helper[6687]: [PAM] Ended.
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc sddm[1689]: Auth: sddm-helper exited successfully
Okt 09 20:54:35 pc sddm[1689]: Socket server stopping...
Okt 09 20:54:35 pc sddm[1689]: Socket server stopped.
Okt 09 20:54:35 pc sddm[1689]: Display server stopping...
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc kglobalaccel5[6749]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kactivitymanagerd[6835]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kactivitymanagerd[6835]: QThread: Destroyed while thread is still running
Okt 09 20:54:35 pc kactivitymanagerd[6839]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kiod5[7280]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kscreen_backend_launcher[6762]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kuiserver5[7084]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kiod5[7280]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc kdeinit5[6732]: QDBusAbstractAdaptor: Cannot relay signal KDEDModule::moduleDeleted(KDEDModule*): Pointers are not supported: KDEDModule*
Okt 09 20:54:35 pc systemd-logind[502]: Removed session c20.
Okt 09 20:54:35 pc kdeconnectd[7334]: The X11 connection broke (error 1). Did the X11 server die?
Okt 09 20:54:35 pc kdeinit5[6732]: The X11 connection broke: I/O error (code 1)
Okt 09 20:54:35 pc systemd[1]: Started Process Core Dump (PID 7349/UID 0).
Okt 09 20:54:35 pc org_kde_powerdevil[1115]: powerdevil: ACTIVE SESSION PATH CHANGED: "/"
Okt 09 20:54:35 pc org_kde_powerdevil[1115]: powerdevil: Switched to inactive session - leaving unchanged
Okt 09 20:54:36 pc systemd-coredump[7352]: Process 6835 (kactivitymanage) of user 1000 dumped core.
                                                        
                                                        Stack trace of thread 6835:
                                                        #0  0x00007f914bbd08a0 raise (libc.so.6)
                                                        #1  0x00007f914bbd1f09 abort (libc.so.6)
                                                        #2  0x00007f914c370858 _ZNK14QMessageLogger5fatalEPKcz (libQt5Core.so.5)
                                                        #3  0x00007f914c38016e _ZN7QThreadD2Ev (libQt5Core.so.5)
                                                        #4  0x00007f9123bdea5c n/a (kactivitymanagerd_plugin_sqlite.so)
                                                        #5  0x00007f914bbd3488 __run_exit_handlers (libc.so.6)
                                                        #6  0x00007f914bbd34da exit (libc.so.6)
                                                        #7  0x00007f914435ae18 _ZN14QXcbConnection16processXcbEventsEv (libQt5XcbQpa.so.5)
                                                        #8  0x00007f914c59a662 _ZN7QObject5eventEP6QEvent (libQt5Core.so.5)
                                                        #9  0x00007f914d2a1f2c _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt5Widgets.so.5)
                                                        #10 0x00007f914d2a9a06 _ZN12QApplication6notifyEP7QObjectP6QEvent (libQt5Widgets.so.5)
                                                        #11 0x00007f914c56a060 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt5Core.so.5)
                                                        #12 0x00007f914c56c8b6 _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt5Core.so.5)
                                                        #13 0x00007f914c5c56e4 n/a (libQt5Core.so.5)
                                                        #14 0x00007f9148aec270 g_main_context_dispatch (libglib-2.0.so.0)
                                                        #15 0x00007f9148aedf69 n/a (libglib-2.0.so.0)
                                                        #16 0x00007f9148aedfae g_main_context_iteration (libglib-2.0.so.0)
                                                        #17 0x00007f914c5c4cd1 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #18 0x00007f914c56848b _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #19 0x00007f914c5714d8 _ZN16QCoreApplication4execEv (libQt5Core.so.5)
                                                        #20 0x000056143db00f6f n/a (kactivitymanagerd)
                                                        #21 0x00007f914bbbcf6a __libc_start_main (libc.so.6)
                                                        #22 0x000056143db011ca _start (kactivitymanagerd)
                                                        
                                                        Stack trace of thread 7328:
                                                        #0  0x00007f914bc60190 __nanosleep (libc.so.6)
                                                        #1  0x00007f914c5c463f n/a (libQt5Core.so.5)
                                                        #2  0x00007f9123bde32c n/a (kactivitymanagerd_plugin_sqlite.so)
                                                        #3  0x00007f914c385fcb n/a (libQt5Core.so.5)
                                                        #4  0x00007f914a8a608a start_thread (libpthread.so.0)
                                                        #5  0x00007f914bc921bf __clone (libc.so.6)
                                                        
                                                        Stack trace of thread 6903:
                                                        #0  0x00007f914bc87cbb __poll (libc.so.6)
                                                        #1  0x00007f9148aeded3 n/a (libglib-2.0.so.0)
                                                        #2  0x00007f9148aedfae g_main_context_iteration (libglib-2.0.so.0)
                                                        #3  0x00007f914c5c4cd1 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #4  0x00007f914c56848b _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #5  0x00007f914c38127e _ZN7QThread4execEv (libQt5Core.so.5)
                                                        #6  0x000056143db034bb n/a (kactivitymanagerd)
                                                        #7  0x00007f914c385fcb n/a (libQt5Core.so.5)
                                                        #8  0x00007f914a8a608a start_thread (libpthread.so.0)
                                                        #9  0x00007f914bc921bf __clone (libc.so.6)
                                                        
                                                        Stack trace of thread 6902:
                                                        #0  0x00007f914bc87cbb __poll (libc.so.6)
                                                        #1  0x00007f9148aeded3 n/a (libglib-2.0.so.0)
                                                        #2  0x00007f9148aedfae g_main_context_iteration (libglib-2.0.so.0)
                                                        #3  0x00007f914c5c4cd1 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #4  0x00007f914c56848b _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #5  0x00007f914c38127e _ZN7QThread4execEv (libQt5Core.so.5)
                                                        #6  0x000056143db0348b n/a (kactivitymanagerd)
                                                        #7  0x00007f914c385fcb n/a (libQt5Core.so.5)
                                                        #8  0x00007f914a8a608a start_thread (libpthread.so.0)
                                                        #9  0x00007f914bc921bf __clone (libc.so.6)
                                                        
                                                        Stack trace of thread 6853:
                                                        #0  0x00007f914bc87cbb __poll (libc.so.6)
                                                        #1  0x00007f9148aeded3 n/a (libglib-2.0.so.0)
                                                        #2  0x00007f9148aedfae g_main_context_iteration (libglib-2.0.so.0)
                                                        #3  0x00007f914c5c4cd1 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #4  0x00007f914c56848b _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #5  0x00007f914c38127e _ZN7QThread4execEv (libQt5Core.so.5)
                                                        #6  0x000056143db0345b n/a (kactivitymanagerd)
                                                        #7  0x00007f914c385fcb n/a (libQt5Core.so.5)
                                                        #8  0x00007f914a8a608a start_thread (libpthread.so.0)
                                                        #9  0x00007f914bc921bf __clone (libc.so.6)
                                                        
                                                        Stack trace of thread 6849:
                                                        #0  0x00007f914bc87cbb __poll (libc.so.6)
                                                        #1  0x00007f9148aeded3 n/a (libglib-2.0.so.0)
                                                        #2  0x00007f9148aedfae g_main_context_iteration (libglib-2.0.so.0)
                                                        #3  0x00007f914c5c4cd1 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #4  0x00007f914c56848b _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5)
                                                        #5  0x00007f914c38127e _ZN7QThread4execEv (libQt5Core.so.5)
                                                        #6  0x00007f914cee0376 n/a (libQt5DBus.so.5)
                                                        #7  0x00007f914c385fcb n/a (libQt5Core.so.5)
                                                        #8  0x00007f914a8a608a start_thread (libpthread.so.0)
                                                        #9  0x00007f914bc921bf __clone (libc.so.6)
Okt 09 20:54:36 pc kglobalaccel5[7351]: qt.qpa.screen: QXcbConnection: Could not connect to display :0
Okt 09 20:54:36 pc kglobalaccel5[7351]: Could not connect to any X display.
Okt 09 20:54:36 pc dbus-daemon[1082]: Activated service 'org.kde.kglobalaccel' failed: Process org.kde.kglobalaccel exited with status 1
Okt 09 20:54:37 pc sddm[1689]: Display server stopped.
Okt 09 20:54:37 pc sddm[1689]: Running display stop script  "/usr/share/sddm/scripts/Xstop"
Comment 1 Christoph Feck 2017-10-17 20:17:41 UTC
This should have been fixed with Qt 5.8, see bug 348194.
Comment 2 Rainer Finke 2017-10-18 07:55:51 UTC
Ok, strange this was Qt 5.9 or maybe 5.10 beta already. I will test again and tell you if it is still an issue in Qt 5.10 beta and Plasma 5.11.1.
Comment 3 Fabian Vogt 2018-01-20 19:19:56 UTC
This is definitely still an issue.

Using Qt 5.10.0, Plasma 5.12 beta and KDE Frameworks 5.42 here, 100% reproducible.

It crashes with a fatal message, which is not visible in the log, but from the backtrace likely to be qFatal("QThread: Destroyed while thread is still running");
Comment 4 Fabian Vogt 2018-01-22 07:53:54 UTC
Git commit ed092b96f7af1701808c2c76e15f3ae68f150a4c by Fabian Vogt.
Committed on 22/01/2018 at 07:53.
Pushed by fvogt into branch 'Plasma/5.12'.

Actually quit threads nicely

Summary:
27c0245b1715044cf4d401f1c9d7e7a915a4f3c5 ("[resources] Nicely quit threads")
has no effect as the threads are not running an event loop.
Instead use the QThread::requestInterruption() mechanism.

Test Plan:
kactivitymanagerd left a coredump on each logout if kate was opened
before logging out. Now it doesn't do that anymore.

Reviewers: #plasma, ivan, anthonyfieroni

Reviewed By: #plasma, ivan

Subscribers: lbeltrame, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D9998

M  +3    -2    src/service/Resources.cpp
M  +3    -2    src/service/plugins/sqlite/ResourceScoreMaintainer.cpp

https://commits.kde.org/kactivitymanagerd/ed092b96f7af1701808c2c76e15f3ae68f150a4c