Created attachment 171958 [details] gdb stack trace from the core file Just noticed lots of core files from kwalletd5 after upgrading to openSUSE 15.6. Still using plasma5. Stack trace from one of the core files is attached (could not do it inline - your bug wizard thinks the comment is spam ...) $ file core_kwalletd5_1000.* core_kwalletd5_1000.16142: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from '/usr/bin/kwalletd5 --pam-login 13 14', real uid: 1000, effective uid: 1000, real gid: 100, effective gid: 100, execfn: '/usr/bin/kwalletd5', platform: 'x86_64' core_kwalletd5_1000.17532: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from '/usr/bin/kwalletd5 --pam-login 13 14', real uid: 1000, effective uid: 1000, real gid: 100, effective gid: 100, execfn: '/usr/bin/kwalletd5', platform: 'x86_64' core_kwalletd5_1000.3237: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from '/usr/bin/kwalletd5 --pam-login 13 14', real uid: 1000, effective uid: 1000, real gid: 100, effective gid: 100, execfn: '/usr/bin/kwalletd5', platform: 'x86_64' core_kwalletd5_1000.3258: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from '/usr/bin/kwalletd5 --pam-login 13 14', real uid: 1000, effective uid: 1000, real gid: 100, effective gid: 100, execfn: '/usr/bin/kwalletd5', platform: 'x86_64' core_kwalletd5_1000.9293: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from '/usr/bin/kwalletd5 --pam-login 13 14', real uid: 1000, effective uid: 1000, real gid: 100, effective gid: 100, execfn: '/usr/bin/kwalletd5', platform: 'x86_64' $ gdb /usr/bin/kwalletd5 core_kwalletd5_1000.16142 (see attached file)
#0 0x00007fd9ee9ef0a7 in QCA::Botan::MemoryRegion<unsigned char>::deallocate(unsigned char*, unsigned int) const (this=0x562bf2619a60, n=17, p=0x562bf26054d0 "") at /usr/src/debug/qca-qt5-2.3.9-lp156.33.1.x86_64/src/botantools/botan/botan/secmem.h:188 #1 QCA::Botan::MemoryRegion<unsigned char>::~MemoryRegion() (this=0x562bf2619a60, __in_chrg=<optimized out>) at /usr/src/debug/qca-qt5-2.3.9-lp156.33.1.x86_64/src/botantools/botan/botan/secmem.h:157 #2 QCA::Botan::SecureVector<unsigned char>::~SecureVector() (this=0x562bf2619a60, __in_chrg=<optimized out>) at /usr/src/debug/qca-qt5-2.3.9-lp156.33.1.x86_64/src/botantools/botan/botan/secmem.h:299 #3 QCA::ai_delete(QCA::alloc_info*) (ai=<optimized out>) at /usr/src/debug/qca-qt5-2.3.9-lp156.33.1.x86_64/src/qca_tools.cpp:335 #4 0x00007fd9ee9f1bf0 in QCA::MemoryRegion::Private::~Private() (this=0x562bf2619a20, __in_chrg=<optimized out>) at /usr/src/debug/qca-qt5-2.3.9-lp156.33.1.x86_64/src/qca_tools.cpp:370 #5 QSharedDataPointer<QCA::MemoryRegion::Private>::~QSharedDataPointer() (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/qt5/QtCore/qshareddata.h:93 #6 0x0000562bf2202308 in QCA::SymmetricKey::~SymmetricKey() (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/qt5/Qca-qt5/QtCrypto/qca_core.h:1263 #7 KWalletFreedesktopSessionAlgorithmDhAes::~KWalletFreedesktopSessionAlgorithmDhAes() (this=0x562bf26198e0, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletfreedesktopsession.h:79 #8 KWalletFreedesktopSessionAlgorithmDhAes::~KWalletFreedesktopSessionAlgorithmDhAes() (this=0x562bf26198e0, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletfreedesktopsession.h:79 #9 0x0000562bf2202261 in std::default_delete<KWalletFreedesktopSessionAlgorithm>::operator()(KWalletFreedesktopSessionAlgorithm*) const (this=<optimized out>, __ptr=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:78 #10 std::unique_ptr<KWalletFreedesktopSessionAlgorithm, std::default_delete<KWalletFreedesktopSessionAlgorithm> >::~unique_ptr() (this=0x562bf26053c0, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:263 #11 KWalletFreedesktopSession::~KWalletFreedesktopSession() (this=0x562bf26053a0, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletfreedesktopsession.h:29 #12 KWalletFreedesktopSession::~KWalletFreedesktopSession() (this=0x562bf26053a0, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletfreedesktopsession.h:29 #13 0x0000562bf21fd8b8 in std::default_delete<KWalletFreedesktopSession>::operator()(KWalletFreedesktopSession*) const (this=<optimized out>, __ptr=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:78 #14 std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> >::~unique_ptr() (this=0x562bf2616c58, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:263 #15 std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >::~pair() (this=0x562bf2616c50, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/stl_pair.h:208 #16 __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::destroy<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >(std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >*) (this=<optimized out>, __p=<optimized out>) at /usr/include/c++/7/ext/new_allocator.h:140 #17 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > > >::destroy<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >(std::allocator<std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >&, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >*) (__a=<optimized out>, __p=<optimized out>) at /usr/include/c++/7/bits/alloc_traits.h:487 #18 std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) (this=0x562bf29db4c8, __p=0x562bf2616c30) at /usr/include/c++/7/bits/stl_tree.h:650 #19 std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) (this=0x562bf29db4c8, __p=0x562bf2616c30) at /usr/include/c++/7/bits/stl_tree.h:658 #20 std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_erase(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) (this=this@entry=0x562bf29db4c8, __x=0x562bf2616c30) at /usr/include/c++/7/bits/stl_tree.h:1858 #21 0x0000562bf21fd8a5 in std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_erase(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) (this=this@entry=0x562bf29db4c8, __x=0x562bf2615c80) at /usr/include/c++/7/bits/stl_tree.h:1856 #22 0x0000562bf21f9b64 in std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::~_Rb_tree() (this=0x562bf29db4c8, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/stl_tree.h:949 #23 std::map<QString, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::~map() (this=0x562bf29db4c8, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/stl_map.h:294 #24 KWalletFreedesktopService::~KWalletFreedesktopService() (this=0x562bf29db4b0, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletfreedesktopservice.h:110 #25 0x0000562bf21f9b89 in KWalletFreedesktopService::~KWalletFreedesktopService() (this=0x562bf29db4b0, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletfreedesktopservice.h:110 #26 0x0000562bf21e40c3 in std::default_delete<KWalletFreedesktopService>::operator()(KWalletFreedesktopService*) const (this=<optimized out>, __ptr=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:78 #27 std::unique_ptr<KWalletFreedesktopService, std::default_delete<KWalletFreedesktopService> >::~unique_ptr() (this=0x7ffcff8f0248, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:263 #28 KWalletD::~KWalletD() (this=0x7ffcff8f0190, __in_chrg=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/kwalletd.cpp:195 #29 0x0000562bf21dbaf4 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kwallet-5.116.0-lp156.312.2.x86_64/src/runtime/kwalletd/main.cpp:205
Same crash reports in Fedora: https://retrace.fedoraproject.org/faf/problems/bthash/?bth=19fef71e8c7536c2afc2a7a346e9c4073d3a4d0c&bth=e4e046471f98a56a466939bcbde256eaf7967c00&bth=5fb0f2972f8b94813d7ee6339ca6f2e1bdb9ede1&bth=cf0e92a6612055e6ad879070f9efd8a67c872d13&bth=3c5ed0baf3c99bdb8f1676f5b70b2dd00aaa7905&bth=3fd88b1e066224796dd6af87ec9bd8bb319f44af&bth=8e51a31e724aca51ad808c09e442504f5afddebe&bth=b140066ceb41d9250ead313b522526b45d466504
Is anyone still experiencing crashes in Plasma 6 / KWallet 24.12.3 ?
Yes
(In reply to Vadym Krevs from comment #4) > Yes Can we ask you to please attach a new backtrace? Thanks.
$ gdb /usr/bin/kwalletd6 /tmp/core_kwalletd6_1000.19471 GNU gdb (GDB; SUSE Linux Enterprise 15) 14.2 .. Reading symbols from /usr/bin/kwalletd6... Reading symbols from /home/data/usr/lib/debug/usr/bin/kwalletd6-6.12.0-kf.32.1.x86_64.debug... warning: Can't open file /run/nscd/dbc9T4Fd (deleted) during file-backed mapping note processing [New LWP 19471] [New LWP 19473] Missing separate debuginfo for /usr/lib64/libicuuc.so.73. The debuginfo package for this file is probably broken. Missing separate debuginfo for /usr/lib64/libicudata.so.73. The debuginfo package for this file is probably broken. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Core was generated by `/usr/bin/kwalletd6'. Program terminated with signal SIGABRT, Aborted. #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 44 return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0; [Current thread is 1 (Thread 0x7f176f40c980 (LWP 19471))] (gdb) thread apply all bt Thread 2 (Thread 0x7f176b3ff6c0 (LWP 19473)): #0 0x00007f17707204df in __GI___poll (fds=0x5617a25ee2b0, nfds=2, timeout=24739) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007f1770116b61 in g_main_context_poll_unlocked (priority=<optimized out>, n_fds=2, fds=0x5617a25ee2b0, timeout=<optimized out>, context=0x7f1764000c80) at ../glib/gmain.c:4653 #2 g_main_context_iterate_unlocked (context=context@entry=0x7f1764000c80, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4344 #3 0x00007f17701171cc in g_main_context_iteration (context=0x7f1764000c80, may_block=1) at ../glib/gmain.c:4414 #4 0x00007f17711ce090 in QEventDispatcherGlib::processEvents (this=0x7f1764000b70, flags=...) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:399 #5 0x00007f1770fa29db in QEventLoop::exec (this=0x7f176b3feb90, flags=...) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/global/qflags.h:34 #6 0x00007f1771081c66 in QThread::exec (this=this@entry=0x7f17715feb20 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/global/qflags.h:74 #7 0x00007f17715791be in QDBusConnectionManager::run (this=0x7f17715feb20 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/dbus/qdbusconnectionmanager.cpp:144 #8 0x00007f17710f82bd in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/thread/qthread_unix.cpp:375 #9 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=...) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/thread/qthread_unix.cpp:311 #10 QThreadPrivate::start (arg=0x7f17715feb20 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/thread/qthread_unix.cpp:339 #11 0x00007f17706a758c in start_thread (arg=<optimized out>) at pthread_create.c:444 #12 0x00007f177072ea28 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 Thread 1 (Thread 0x7f176f40c980 (LWP 19471)): #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007f17706a949f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78 #2 0x00007f1770657842 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007f177063f5cf in __GI_abort () at abort.c:79 #4 0x00007f1770ee538b in qAbort () at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/global/qassert.cpp:49 #5 qt_message_fatal<QString&> (message=..., context=...) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/global/qlogging.cpp:2130 #6 qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, context=..., msg=msg@entry=0x7f1771d6648d "%s", ap=ap@entry=0x7ffca5bbdd78) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/global/qlogging.cpp:382 #7 0x00007f1770ee61c0 in QMessageLogger::fatal (this=this@entry=0x7ffca5bbe280, msg=msg@entry=0x7f1771d6648d "%s") at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/global/qlogging.cpp:884 #8 0x00007f177175ea6b in init_platform (argv=<optimized out>, argc=@0x7ffca5bbe5dc: 1, platformThemeName=..., platformPluginPath=..., pluginNamesWithArguments=...) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/gui/kernel/qguiapplication.cpp:1327 #9 QGuiApplicationPrivate::createPlatformIntegration (this=0x5617a25c3170) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/gui/kernel/qguiapplication.cpp:1580 #10 0x00007f17717f7068 in QGuiApplicationPrivate::createEventDispatcher (this=<optimized out>) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/gui/kernel/qguiapplication.cpp:1599 #11 0x00007f1770f9bf7e in QCoreApplicationPrivate::init (this=this@entry=0x5617a25c3170) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/corelib/kernel/qcoreapplication.cpp:931 #12 0x00007f17717f70f0 in QGuiApplicationPrivate::init (this=this@entry=0x5617a25c3170) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/gui/kernel/qguiapplication.cpp:1627 #13 0x00007f17721c170d in QApplicationPrivate::init (this=0x5617a25c3170) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/widgets/kernel/qapplication.cpp:474 #14 0x00007f17721c180e in QApplication::QApplication (this=<optimized out>, argc=<optimized out>, argv=<optimized out>, this=<optimized out>, argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/qt6-base-6.8.2-lp156.149.1.x86_64/src/widgets/kernel/qapplication.cpp:462 #15 0x00005617a160923f in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kf6-kwallet-6.12.0-kf.32.1.x86_64/src/runtime/kwalletd/main.cpp:160 (gdb)
journalctl contains: Mar 31 20:24:32 hulk dbus-daemon[8842]: [session uid=1000 pid=8842] Activated service 'org.kde.kwalletd6' failed: Process org.kde.kwalletd6 received signal 6 Mar 31 20:24:32 hulk kwalletd6[19471]: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Mar 31 20:24:32 hulk kwalletd6[19471]: qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. Mar 31 20:24:32 hulk kwalletd6[19471]: qt.qpa.plugin: From 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin. Mar 31 20:24:32 hulk kwalletd6[19471]: qt.qpa.xcb: could not connect to display :0 Mar 31 20:24:32 hulk kwalletd6[19471]: kf.wallet.kwalletd: Lacking a socket, pipe: 0 env: 0
*** Bug 504251 has been marked as a duplicate of this bug. ***
*** Bug 505013 has been marked as a duplicate of this bug. ***
*** Bug 505256 has been marked as a duplicate of this bug. ***
(In reply to Vadym Krevs from comment #6) I must note that the new trace in comment 6 is very different from the original trace in comment 1. This is not the same crash. The traces in bug 504251 and bug 505013 look a lot more similar to comment 1, and are for the latest version (KWallet 6.14).
(In reply to michaelk83 from comment #11) > (In reply to Vadym Krevs from comment #6) > > I must note that the new trace in comment 6 is very different from the > original trace in comment 1. This is not the same crash. > The traces in bug 504251 and bug 505013 look a lot more similar to comment > 1, and are for the latest version (KWallet 6.14). It does because it was reported against Plasma 5 which is what openSUSE 15.6 shipped with. The new trace in comment 6 is 8 months later, after upgrade to Plasma 6. The end user "experience" is the same, sadly.
(In reply to Vadym Krevs from comment #12) > It does because it was reported against Plasma 5 which is what openSUSE 15.6 > shipped with. The new trace in comment 6 is 8 months later, after upgrade to > Plasma 6. The end user "experience" is the same, sadly. The traces in bug 504251 and bug 505013 are also from Plasma 6 (its latest version, even), and they are much more similar to the original report here. From a user point of view, a crash is a crash, but the one you reported in comment 6 looks like a completely different part of the code.
*** Bug 505753 has been marked as a duplicate of this bug. ***
Would additional backtrace add value to debugging effort or simply be a noise? Because I see this is still happening with kwallet 6.15.0. Please kindly advise.
(In reply to Hyun Hwang from comment #15) > Would additional backtrace add value to debugging effort or simply be a > noise? Because I see this is still happening with kwallet 6.15.0. Please > kindly advise. We have backtraces from 6.14 in the linked duplicate issues. The code did not change much from 6.14 to 6.15, so I don't think another trace is needed.
*** Bug 507778 has been marked as a duplicate of this bug. ***
Changing to CONFIRMED due to multiple duplicate reports. Bug 507778 adds some limited reproduction info.
*** Bug 508585 has been marked as a duplicate of this bug. ***
*** Bug 504539 has been marked as a duplicate of this bug. ***
https://bugzilla.opensuse.org/show_bug.cgi?id=1249972
Created attachment 185833 [details] with dbgsym on boot, every time, debian testing
Same here in debian testing
In Debian testing, after installing libpam-kwallet5, the problem disappeared. With libpam-kwallet5, ksecretd runs like /usr/bin/ksecretd --pam-login 14 12
*** Bug 514201 has been marked as a duplicate of this bug. ***
*** Bug 514326 has been marked as a duplicate of this bug. ***
Crash is ongoing in current versions, most recently reported in openSUSE Tumbleweed 20260106, KDE Frameworks Version: 6.21.0. Same code path.
A possible culprit is the default destruction order in `KWalletFreedesktopService`: its `QCA::Initializer m_init` is declared after `m_sessions`, so I guess it's destroyed first? When the session is finally destroyed, it releases the `KWalletFreedesktopSessionAlgorithmDhAes`, which in turn tries to release its `QCA::SymmetricKey`, but the `QCA::Initializer` is already gone. The crash occurs during the shutdown sequence of `ksecretd`. But what I'm still not clear on, is why does `ksecretd` shut down in the first place?
==5614==ERROR: AddressSanitizer: heap-use-after-free on address 0x7bbc246373c0 at pc 0x7f4c2c5ea4e6 bp 0x7fff3e29daf0 sp 0x7fff3e29dae8 READ of size 8 at 0x7bbc246373c0 thread T0 #0 0x7f4c2c5ea4e5 in QCA::Botan::MemoryRegion<unsigned char>::deallocate(unsigned char*, unsigned int) const /home/nico/kde-qtdev/src/qca/src/botantools/botan/botan/secmem.h:188 #1 0x7f4c2c5e900e in QCA::Botan::MemoryRegion<unsigned char>::~MemoryRegion() /home/nico/kde-qtdev/src/qca/src/botantools/botan/botan/secmem.h:157 #2 0x7f4c2c5e7847 in QCA::Botan::SecureVector<unsigned char>::~SecureVector() /home/nico/kde-qtdev/src/qca/src/botantools/botan/botan/secmem.h:299 #3 0x7f4c2c5e2a4c in ai_delete /home/nico/kde-qtdev/src/qca/src/qca_tools.cpp:335 #4 0x7f4c2c5e79bb in QCA::MemoryRegion::Private::~Private() /home/nico/kde-qtdev/src/qca/src/qca_tools.cpp:370 #5 0x7f4c2c5ea5a9 in QSharedDataPointer<QCA::MemoryRegion::Private>::destroy(QCA::MemoryRegion::Private*) /home/nico/kde-qtdev/usr/include/QtCore/qshareddata.h:214 #6 0x7f4c2c5e90b6 in QSharedDataPointer<QCA::MemoryRegion::Private>::~QSharedDataPointer() /home/nico/kde-qtdev/usr/include/QtCore/qshareddata.h:170 #7 0x7f4c2c5e2ec3 in QCA::MemoryRegion::~MemoryRegion() /home/nico/kde-qtdev/src/qca/src/qca_tools.cpp:418 #8 0x7f4c2c5e3ebd in QCA::SecureArray::~SecureArray() /home/nico/kde-qtdev/src/qca/src/qca_tools.cpp:597 #9 0x0000004d5c51 in QCA::SymmetricKey::~SymmetricKey() /home/nico/kde-qtdev/usr/include/Qca-qt6/QtCrypto/qca_core.h:1263 #10 0x000000530a48 in KWalletFreedesktopSessionAlgorithmDhAes::~KWalletFreedesktopSessionAlgorithmDhAes() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopsession.h:74 #11 0x000000530a7f in KWalletFreedesktopSessionAlgorithmDhAes::~KWalletFreedesktopSessionAlgorithmDhAes() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopsession.h:74 #12 0x0000004eb3a2 in std::default_delete<KWalletFreedesktopSessionAlgorithm>::operator()(KWalletFreedesktopSessionAlgorithm*) const /usr/include/c++/15/bits/unique_ptr.h:92 #13 0x0000004e1850 in std::unique_ptr<KWalletFreedesktopSessionAlgorithm, std::default_delete<KWalletFreedesktopSessionAlgorithm> >::~unique_ptr() /usr/include/c++/15/bits/unique_ptr.h:398 #14 0x00000052fd1a in KWalletFreedesktopSession::~KWalletFreedesktopSession() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopsession.h:29 #15 0x00000052fd51 in KWalletFreedesktopSession::~KWalletFreedesktopSession() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopsession.h:29 #16 0x0000004ec618 in std::default_delete<KWalletFreedesktopSession>::operator()(KWalletFreedesktopSession*) const /usr/include/c++/15/bits/unique_ptr.h:92 #17 0x0000004e31aa in std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> >::~unique_ptr() /usr/include/c++/15/bits/unique_ptr.h:398 #18 0x00000050bc2b in std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >::~pair() /usr/include/c++/15/bits/stl_pair.h:302 #19 0x00000050bc52 in void std::destroy_at<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >(std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >*) /usr/include/c++/15/bits/stl_construct.h:88 #20 0x0000004faa91 in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > > >::destroy<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >(std::allocator<std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >&, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >*) /usr/include/c++/15/bits/alloc_traits.h:698 #21 0x0000004faa91 in std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) /usr/include/c++/15/bits/stl_tree.h:1265 #22 0x0000004f0056 in std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) /usr/include/c++/15/bits/stl_tree.h:1273 #23 0x0000004e88d4 in std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::_M_erase(std::_Rb_tree_node<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >*) /usr/include/c++/15/bits/stl_tree.h:2590 #24 0x0000004de59f in std::_Rb_tree<QString, std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > >, std::_Select1st<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::~_Rb_tree() /usr/include/c++/15/bits/stl_tree.h:1609 #25 0x0000004d8cad in std::map<QString, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> >, std::less<QString>, std::allocator<std::pair<QString const, std::unique_ptr<KWalletFreedesktopSession, std::default_delete<KWalletFreedesktopSession> > > > >::~map() /usr/include/c++/15/bits/stl_map.h:337 #26 0x0000004bb7fa in KWalletFreedesktopService::~KWalletFreedesktopService() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopservice.cpp:182 #27 0x0000004bb831 in KWalletFreedesktopService::~KWalletFreedesktopService() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopservice.cpp:182 #28 0x00000045e63a in std::default_delete<KWalletFreedesktopService>::operator()(KWalletFreedesktopService*) const /usr/include/c++/15/bits/unique_ptr.h:92 #29 0x000000455936 in std::unique_ptr<KWalletFreedesktopService, std::default_delete<KWalletFreedesktopService> >::~unique_ptr() (/home/nico/kde-qtdev/usr/bin/ksecretd+0x455936) (BuildId: e48cea6af469c5e121eedaf01d039e0091c7c733) #30 0x00000042eee6 in KSecretD::~KSecretD() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/ksecretd.cpp:177 #31 0x000000424083 in main /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/main.cpp:208 #32 0x7f4c2662b2fa in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 #33 0x7f4c2662b3ca in __libc_start_main_impl ../csu/libc-start.c:360 #34 0x0000004208a4 in _start ../sysdeps/x86_64/start.S:115 0x7bbc246373c0 is located 0 bytes inside of 80-byte region [0x7bbc246373c0,0x7bbc24637410) freed by thread T0 here: #0 0x7f4c2d92369b in operator delete(void*, unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cpp:155 #1 0x7f4c2c7eed93 in QCA::Botan::Locking_Allocator::~Locking_Allocator() /home/nico/kde-qtdev/src/qca/src/botantools/botan/botan/defalloc.h:65 #2 0x7f4c2c807f17 in QCA::Botan::Library_State::~Library_State() /home/nico/kde-qtdev/src/qca/src/botantools/botan/libstate.cpp:469 #3 0x7f4c2c8065c2 in QCA::Botan::set_global_state(QCA::Botan::Library_State*) /home/nico/kde-qtdev/src/qca/src/botantools/botan/libstate.cpp:96 #4 0x7f4c2c5e130e in QCA::botan_deinit() /home/nico/kde-qtdev/src/qca/src/qca_tools.cpp:103 #5 0x7f4c2c685b6c in QCA::deinit() /home/nico/kde-qtdev/src/qca/src/qca_core.cpp:267 #6 0x7f4c2c68d882 in QCA::Initializer::~Initializer() /home/nico/kde-qtdev/src/qca/src/qca_core.cpp:897 #7 0x0000004bb7ca in KWalletFreedesktopService::~KWalletFreedesktopService() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopservice.cpp:182 #8 0x0000004bb831 in KWalletFreedesktopService::~KWalletFreedesktopService() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopservice.cpp:182 #9 0x00000045e63a in std::default_delete<KWalletFreedesktopService>::operator()(KWalletFreedesktopService*) const /usr/include/c++/15/bits/unique_ptr.h:92 #10 0x000000455936 in std::unique_ptr<KWalletFreedesktopService, std::default_delete<KWalletFreedesktopService> >::~unique_ptr() (/home/nico/kde-qtdev/usr/bin/ksecretd+0x455936) (BuildId: e48cea6af469c5e121eedaf01d039e0091c7c733) #11 0x00000042eee6 in KSecretD::~KSecretD() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/ksecretd.cpp:177 #12 0x000000424083 in main /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/main.cpp:208 #13 0x7f4c2662b2fa in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 previously allocated by thread T0 here: #0 0x7f4c2d92273b in operator new(unsigned long) ../../../../libsanitizer/asan/asan_new_delete.cpp:86 #1 0x7f4c2c81e7b2 in QCA::Botan::Builtin_Modules::allocators() const /home/nico/kde-qtdev/src/qca/src/botantools/botan/modules.cpp:205 #2 0x7f4c2c807466 in QCA::Botan::Library_State::load(QCA::Botan::Modules&) /home/nico/kde-qtdev/src/qca/src/botantools/botan/libstate.cpp:393 #3 0x7f4c2c5e0f71 in QCA::botan_init(int, bool) /home/nico/kde-qtdev/src/qca/src/qca_tools.cpp:81 #4 0x7f4c2c68585f in QCA::init(QCA::MemoryMode, int) /home/nico/kde-qtdev/src/qca/src/qca_core.cpp:216 #5 0x7f4c2c68d86e in QCA::Initializer::Initializer(QCA::MemoryMode, int) /home/nico/kde-qtdev/src/qca/src/qca_core.cpp:892 #6 0x0000004b9c8f in KWalletFreedesktopService::KWalletFreedesktopService(KSecretD*) /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/kwalletfreedesktopservice.cpp:141 #7 0x00000042e72b in KSecretD::KSecretD() /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/ksecretd.cpp:166 #8 0x000000423afe in main /home/nico/kde-qtdev/src/kwallet/src/runtime/ksecretd/main.cpp:193 #9 0x7f4c2662b2fa in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
after latest updates in Debian Testing ksecretd crashes on every logout kwallet6 6.20.0-1 libpam-kwallet-common 6.5.4-1 libpam-kwallet5 6.5.4-1 libqca-qt6-2:amd64 2.3.10-1 ----------------------------------------------------------------------------------------------------------------------- PID: 19967 (ksecretd) UID: 1000 (user) GID: 1000 (user) Signal: 11 (SEGV) Timestamp: Mon 2026-01-12 20:56:31 CET (16min ago) Command Line: /usr/bin/ksecretd --pam-login 14 12 Executable: /usr/bin/ksecretd Control Group: /user.slice/user-1000.slice/session-20.scope Unit: session-20.scope Slice: user-1000.slice Session: 20 Owner UID: 1000 (user) Boot ID: 1c65fea5221147abade056561b24fe7b Machine ID: dab9a0efd65840a08e503058e7900009 Hostname: user5 Storage: /var/lib/systemd/coredump/core.ksecretd.1000.1c65fea5221147abade056561b24fe7b.19967.1768247791000000.zst (present) Size on Disk: 2.7M Message: Process 19967 (ksecretd) of user 1000 dumped core. Module libblkid.so.1 from deb util-linux-2.41.3-2.amd64 Module libmount.so.1 from deb util-linux-2.41.3-2.amd64 Module libuuid.so.1 from deb util-linux-2.41.3-2.amd64 Module libgomp.so.1 from deb gcc-15-15.2.0-12.amd64 Module libsystemd.so.0 from deb systemd-259-1.amd64 Module libatomic.so.1 from deb gcc-15-15.2.0-12.amd64 Module libzstd.so.1 from deb libzstd-1.5.7+dfsg-3.amd64 Module libudev.so.1 from deb systemd-259-1.amd64 Module libgcc_s.so.1 from deb gcc-15-15.2.0-12.amd64 Module libstdc++.so.6 from deb gcc-15-15.2.0-12.amd64 Stack trace of thread 19967: #0 0x00007fb6cfc973dc __pthread_kill_implementation (libc.so.6 + 0x973dc) #1 0x00007fb6cfc40942 __GI_raise (libc.so.6 + 0x40942) #2 0x00007fb6d2354762 _ZN6KCrash19defaultCrashHandlerEi (libKF6Crash.so.6 + 0x5762) #3 0x00007fb6cfc40a70 __restore_rt (libc.so.6 + 0x40a70) #4 0x00007fb6d1f25873 _ZNK3QCA5Botan12MemoryRegionIhE10deallocateEPhj (libqca-qt6.so.2 + 0x58873) #5 0x00007fb6d1f25cc6 _ZN3QCA12MemoryRegion7PrivateD4Ev (libqca-qt6.so.2 + 0x58cc6) #6 0x0000555a9844a8cc _ZN3QCA12SymmetricKeyD2Ev (/usr/bin/ksecretd + 0x4c8cc) #7 0x0000555a9844a9c9 _ZNKSt14default_deleteI34KWalletFreedesktopSessionAlgorithmEclEPS0_ (/usr/bin/ksecretd + 0x4c9c9) #8 0x0000555a98447eb1 _ZNKSt14default_deleteI25KWalletFreedesktopSessionEclEPS0_ (/usr/bin/ksecretd + 0x49eb1) #9 0x0000555a9843d69c _ZNSt8_Rb_treeI7QStringSt4pairIKS0_St10unique_ptrI25KWalletFreedesktopSessionSt14default_deleteIS4_EEESt10_Select1stIS8_ESt4lessIS0_ESaIS8_EED2Ev (/usr/bin/ksecretd + 0x3f69c) #10 0x0000555a984285eb _ZN25KWalletFreedesktopServiceD0Ev (/usr/bin/ksecretd + 0x2a5eb) #11 0x0000555a98421bba main (/usr/bin/ksecretd + 0x23bba) #12 0x00007fb6cfc29f75 __libc_start_call_main (libc.so.6 + 0x29f75) #13 0x00007fb6cfc2a027 __libc_start_main_impl (libc.so.6 + 0x2a027) #14 0x0000555a98422681 _start (/usr/bin/ksecretd + 0x24681) Stack trace of thread 20064: #0 0x00007fb6cfc9d6fe __syscall_cancel_arch (libc.so.6 + 0x9d6fe) #1 0x00007fb6cfc91e84 __internal_syscall_cancel (libc.so.6 + 0x91e84) #2 0x00007fb6cfc91ecd __syscall_cancel (libc.so.6 + 0x91ecd) #3 0x00007fb6cfd072ce __GI_ppoll (libc.so.6 + 0x1072ce) #4 0x00007fb6cf909af4 n/a (libglib-2.0.so.0 + 0x5faf4) #5 0x00007fb6cf90a1d0 g_main_context_iteration (libglib-2.0.so.0 + 0x601d0) #6 0x00007fb6d0804dc8 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x404dc8) #7 0x00007fb6d05afe53 _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x1afe53) #8 0x00007fb6d069896f _ZN7QThread4execEv (libQt6Core.so.6 + 0x29896f) #9 0x00007fb6d0b7b31e n/a (libQt6DBus.so.6 + 0x3f31e) #10 0x00007fb6d071c6e4 n/a (libQt6Core.so.6 + 0x31c6e4) #11 0x00007fb6cfc95489 start_thread (libc.so.6 + 0x95489) #12 0x00007fb6cfd13d38 __clone3 (libc.so.6 + 0x113d38) Stack trace of thread 20075: #0 0x00007fb6cfc9d6fe __syscall_cancel_arch (libc.so.6 + 0x9d6fe) #1 0x00007fb6cfc91e84 __internal_syscall_cancel (libc.so.6 + 0x91e84) #2 0x00007fb6cfc9249c __futex_abstimed_wait_common64 (libc.so.6 + 0x9249c) #3 0x00007fb6cfc94a28 __pthread_cond_wait_common (libc.so.6 + 0x94a28) #4 0x00007fb6c0e89eed n/a (libgallium-25.3.3-1.so + 0x689eed) #5 0x00007fb6c0e4033c n/a (libgallium-25.3.3-1.so + 0x64033c) #6 0x00007fb6c0e89e1b n/a (libgallium-25.3.3-1.so + 0x689e1b) #7 0x00007fb6cfc95489 start_thread (libc.so.6 + 0x95489) #8 0x00007fb6cfd13d38 __clone3 (libc.so.6 + 0x113d38) Stack trace of thread 20074: #0 0x00007fb6cfc9d6fe __syscall_cancel_arch (libc.so.6 + 0x9d6fe) #1 0x00007fb6cfc91e84 __internal_syscall_cancel (libc.so.6 + 0x91e84) #2 0x00007fb6cfc9249c __futex_abstimed_wait_common64 (libc.so.6 + 0x9249c) #3 0x00007fb6cfc94a28 __pthread_cond_wait_common (libc.so.6 + 0x94a28) #4 0x00007fb6c0e89eed n/a (libgallium-25.3.3-1.so + 0x689eed) #5 0x00007fb6c0e4033c n/a (libgallium-25.3.3-1.so + 0x64033c) #6 0x00007fb6c0e89e1b n/a (libgallium-25.3.3-1.so + 0x689e1b) #7 0x00007fb6cfc95489 start_thread (libc.so.6 + 0x95489) #8 0x00007fb6cfd13d38 __clone3 (libc.so.6 + 0x113d38) ELF object binary architecture: AMD x86-64 -----------------------------------------------------------------------------------------------------------------------
(In reply to luca from comment #31) > after latest updates in Debian Testing ksecretd crashes on every logout Yea, that looks like the same crash, just less detailed. User logout should indeed cause ksecretd to exit, which then leads to it crashing. Other users reported crashes during boot - that may be e.g. autostart and PAM processes launching (e.g. as in bug 509680 comment 15), and then one of them quitting (and crashing) since there can only be one running ksecretd. Comment 30 confirmed my theory on the cause. The fix should be pretty simple, I think: `QCA::Initializer m_init` needs to be the first member of `KWalletFreedesktopService`, so it's initialized first, and destroyed last.
(In reply to michaelk83 from comment #32) > (In reply to luca from comment #31) > > after latest updates in Debian Testing ksecretd crashes on every logout > > Yea, that looks like the same crash, just less detailed. User logout should > indeed cause ksecretd to exit, which then leads to it crashing. Other users > reported crashes during boot - that may be e.g. autostart and PAM processes > launching (e.g. as in bug 509680 comment 15), and then one of them quitting > (and crashing) since there can only be one running ksecretd. > > Comment 30 confirmed my theory on the cause. The fix should be pretty > simple, I think: `QCA::Initializer m_init` needs to be the first member of > `KWalletFreedesktopService`, so it's initialized first, and destroyed last. Wanna submit a patch?
(In reply to Nicolas Fella from comment #33) > Wanna submit a patch? I don't have a dev environment, sorry..
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kwallet/-/merge_requests/140
Git commit 905b1e346541cb382712da7ecadc75b2438cce1a by Nicolas Fella. Committed on 19/01/2026 at 13:53. Pushed by nicolasfella into branch 'master'. Fix QCA destruction order Change the member order so that QCA::Initializer is created first and thus destructed last Otherwise we destroy things in the wrong order M +3 -1 src/runtime/ksecretd/kwalletfreedesktopservice.h https://invent.kde.org/frameworks/kwallet/-/commit/905b1e346541cb382712da7ecadc75b2438cce1a
(In reply to michaelk83 from comment #29) > The crash occurs during the shutdown sequence of `ksecretd`. But what I'm > still not clear on, is why does `ksecretd` shut down in the first place? Does that mean that https://bugzilla.opensuse.org/show_bug.cgi?id=1245575#c0 is a downstream duplicate of this? I ask because I want to close it if it's been remediated.
(In reply to Roke Julian Lockhart Beedell from comment #37) > Does that mean that https://bugzilla.opensuse.org/show_bug.cgi?id=1245575#c0 > is a downstream duplicate of this? It's hard to say without the debug symbols in the trace there, but they are both QCA crashes in ksecretd, so could be the same one. I would suggest waiting until the patched version is out, and see if that crash still occurs or not.