Drkonqi crashed while I was reporting a Plasma crash Hereunder the backtrace Application: drkonqi (drkonqi), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [Current thread is 1 (Thread 0x7f04c4ac38c0 (LWP 24583))] Thread 2 (Thread 0x7f04ab446700 (LWP 24584)): #0 0x00007f04bfc6afdd in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f04ba667272 in _xcb_conn_wait (__timeout=-1, __nfds=1, __fds=0x7f04ab445c00) at /usr/include/bits/poll2.h:46 #2 0x00007f04ba667272 in _xcb_conn_wait (c=c@entry=0x55f812268b60, cond=cond@entry=0x55f812268ba0, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459 #3 0x00007f04ba668ee7 in xcb_wait_for_event (c=0x55f812268b60) at xcb_in.c:693 #4 0x00007f04ade18da9 in QXcbEventReader::run() (this=0x55f81227bb90) at qxcbconnection.cpp:1255 #5 0x00007f04c08733de in QThreadPrivate::start(void*) (arg=0x55f81227bb90) at thread/qthread_unix.cpp:331 #6 0x00007f04be42660a in start_thread (arg=0x7f04ab446700) at pthread_create.c:334 #7 0x00007f04bfc76a4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 1 (Thread 0x7f04c4ac38c0 (LWP 24583)): [KCrash Handler] #6 0x00007f04c2306f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:135 #7 0x00007f04c2306f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (p=...) at ../../src/corelib/global/qglobal.h:983 #8 0x00007f04c2306f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=<optimized out>) at qdbusabstractinterface.h:148 #9 0x00007f04c2306f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=0x0, method=..., args=...) at qdbusabstractinterface.cpp:502 #10 0x00007f04c35b29c4 in KWallet::Wallet::isOpen(QString const&) (wallet=..., this=<optimized out>) at /usr/src/debug/kwallet-5.18.0/x86_64-redhat-linux-gnu/src/api/KWallet/kwallet_interface.h:146 #11 0x00007f04c35b29c4 in KWallet::Wallet::isOpen(QString const&) (name=...) at /usr/src/debug/kwallet-5.18.0/src/api/KWallet/kwallet.cpp:366 #12 0x000055f811d873be in BugzillaLoginPage::openWallet() (this=this@entry=0x55f81260e610) at /usr/src/debug/plasma-workspace-5.5.3/drkonqi/bugzillaintegration/reportassistantpages_bugzilla.cpp:177 #13 0x000055f811d8a39a in BugzillaLoginPage::walletLogin() (this=0x55f81260e610) at /usr/src/debug/plasma-workspace-5.5.3/drkonqi/bugzillaintegration/reportassistantpages_bugzilla.cpp:187 #14 0x00007f04c0a8f888 in QSingleShotTimer::timerEvent(QTimerEvent*) (a=0x7ffefcacebd0, r=<optimized out>, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:124 #15 0x00007f04c0a8f888 in QSingleShotTimer::timerEvent(QTimerEvent*) (this=0x55f8127ada50) at kernel/qtimer.cpp:315 #16 0x00007f04c0a84113 in QObject::event(QEvent*) (this=0x55f8127ada50, e=<optimized out>) at kernel/qobject.cpp:1261 #17 0x00007f04c173941c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55f812259bc0, receiver=receiver@entry=0x55f8127ada50, e=e@entry=0x7ffefcaceeb0) at kernel/qapplication.cpp:3716 #18 0x00007f04c173e8e6 in QApplication::notify(QObject*, QEvent*) (this=0x7ffefcacf2f0, receiver=0x55f8127ada50, e=0x7ffefcaceeb0) at kernel/qapplication.cpp:3499 #19 0x00007f04c0a5473b in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffefcacf2f0, receiver=0x55f8127ada50, event=event@entry=0x7ffefcaceeb0) at kernel/qcoreapplication.cpp:965 #20 0x00007f04c0aa9ccd in QTimerInfoList::activateTimers() (event=0x7ffefcaceeb0, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:224 #21 0x00007f04c0aa9ccd in QTimerInfoList::activateTimers() (this=0x55f8122c2270) at kernel/qtimerinfo_unix.cpp:637 #22 0x00007f04c0aaa1d1 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:177 #23 0x00007f04bd9f5e3a in g_main_context_dispatch (context=0x7f04a40016f0) at gmain.c:3154 #24 0x00007f04bd9f5e3a in g_main_context_dispatch (context=context@entry=0x7f04a40016f0) at gmain.c:3769 #25 0x00007f04bd9f61d0 in g_main_context_iterate (context=context@entry=0x7f04a40016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840 #26 0x00007f04bd9f627c in g_main_context_iteration (context=0x7f04a40016f0, may_block=may_block@entry=1) at gmain.c:3901 #27 0x00007f04c0aaaecb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55f812259600, flags=...) at kernel/qeventdispatcher_glib.cpp:420 #28 0x00007f04c0a51eca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffefcacf0f0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204 #29 0x00007f04c0a59fac in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229 #30 0x000055f811d514f0 in main(int, char**) (argc=17, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.3/drkonqi/main.cpp:150 Reproducible: Sometimes
Fedora bugreport https://bugzilla.redhat.com/show_bug.cgi?id=1301092
Confirming on plasma-workspace-5.5.4 Application: drkonqi (drkonqi), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [KCrash Handler] #5 0x00007f8f10de1f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:135 #6 0x00007f8f10de1f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (p=...) at ../../src/corelib/global/qglobal.h:983 #7 0x00007f8f10de1f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=<optimized out>) at qdbusabstractinterface.h:148 #8 0x00007f8f10de1f11 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=0x0, method=..., args=...) at qdbusabstractinterface.cpp:502 #9 0x00007f8f1208d9c4 in KWallet::Wallet::isOpen(QString const&) () at /lib64/libKF5Wallet.so.5 #10 0x000056010b74b3be in BugzillaLoginPage::openWallet() (this=this@entry=0x56010d5613d0) at /usr/src/debug/plasma-workspace-5.5.4/drkonqi/bugzillaintegration/reportassistantpages_bugzilla.cpp:177 #11 0x000056010b74e39a in BugzillaLoginPage::walletLogin() (this=0x56010d5613d0) at /usr/src/debug/plasma-workspace-5.5.4/drkonqi/bugzillaintegration/reportassistantpages_bugzilla.cpp:187 #12 0x00007f8f0f56a888 in QSingleShotTimer::timerEvent(QTimerEvent*) (a=0x7ffeb0543a20, r=<optimized out>, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:124 #13 0x00007f8f0f56a888 in QSingleShotTimer::timerEvent(QTimerEvent*) (this=0x56010d6d1b30) at kernel/qtimer.cpp:315 #14 0x00007f8f0f55f113 in QObject::event(QEvent*) (this=0x56010d6d1b30, e=<optimized out>) at kernel/qobject.cpp:1261 #15 0x00007f8f1021441c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x56010d186bc0, receiver=receiver@entry=0x56010d6d1b30, e=e@entry=0x7ffeb0543d00) at kernel/qapplication.cpp:3716 #16 0x00007f8f102198e6 in QApplication::notify(QObject*, QEvent*) (this=0x7ffeb0544140, receiver=0x56010d6d1b30, e=0x7ffeb0543d00) at kernel/qapplication.cpp:3499 #17 0x00007f8f0f52f73b in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffeb0544140, receiver=0x56010d6d1b30, event=event@entry=0x7ffeb0543d00) at kernel/qcoreapplication.cpp:965 #18 0x00007f8f0f584ccd in QTimerInfoList::activateTimers() (event=0x7ffeb0543d00, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:224 #19 0x00007f8f0f584ccd in QTimerInfoList::activateTimers() (this=0x56010d1cccc0) at kernel/qtimerinfo_unix.cpp:637 #20 0x00007f8f0f5851d1 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:177 #21 0x00007f8f0c4d0e3a in g_main_context_dispatch (context=0x7f8ef40016f0) at gmain.c:3154 #22 0x00007f8f0c4d0e3a in g_main_context_dispatch (context=context@entry=0x7f8ef40016f0) at gmain.c:3769 #23 0x00007f8f0c4d11d0 in g_main_context_iterate (context=context@entry=0x7f8ef40016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840 #24 0x00007f8f0c4d127c in g_main_context_iteration (context=0x7f8ef40016f0, may_block=may_block@entry=1) at gmain.c:3901 #25 0x00007f8f0f585eaf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x56010d1dbdd0, flags=...) at kernel/qeventdispatcher_glib.cpp:418 #26 0x00007f8f0f52ceca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffeb0543f40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204 #27 0x00007f8f0f534fac in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229 #28 0x000056010b7154f0 in main(int, char**) (argc=17, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.5.4/drkonqi/main.cpp:150
Confirming the bug on 5.7.3 Application: drkonqi (drkonqi), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [Current thread is 1 (Thread 0x7f86df54d940 (LWP 10013))] Thread 3 (Thread 0x7f86ba6aa700 (LWP 10017)): #0 0x00007f86d891da86 in g_source_iter_next (iter=iter@entry=0x7f86ba6a9a80, source=source@entry=0x7f86ba6a9a78) at gmain.c:942 #1 0x00007f86d891fefb in g_main_context_prepare (context=context@entry=0x7f86b40009b0, priority=priority@entry=0x7f86ba6a9b00) at gmain.c:3420 #2 0x00007f86d892092b in g_main_context_iterate (context=context@entry=0x7f86b40009b0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3820 #3 0x00007f86d8920b1c in g_main_context_iteration (context=0x7f86b40009b0, may_block=may_block@entry=1) at gmain.c:3901 #4 0x00007f86dbf1a24b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f86b40008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:419 #5 0x00007f86dbec95ea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f86ba6a9c40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204 #6 0x00007f86dbd28343 in QThread::exec() (this=this@entry=0x7f86df694060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500 #7 0x00007f86df61f559 in QDBusConnectionManager::run() (this=0x7f86df694060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:189 #8 0x00007f86dbd2c99a in QThreadPrivate::start(void*) (arg=0x7f86df694060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:341 #9 0x00007f86d95e25ca in start_thread (arg=0x7f86ba6aa700) at pthread_create.c:333 #10 0x00007f86db120f6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 2 (Thread 0x7f86c2077700 (LWP 10014)): #0 0x00007f86db1153ed in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f86d5585f80 in _xcb_conn_wait (__timeout=-1, __nfds=1, __fds=0x7f86c2076b80) at /usr/include/bits/poll2.h:46 #2 0x00007f86d5585f80 in _xcb_conn_wait (c=c@entry=0x55d8cb71e4f0, cond=cond@entry=0x55d8cb71e530, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459 #3 0x00007f86d5587b79 in xcb_wait_for_event (c=0x55d8cb71e4f0) at xcb_in.c:693 #4 0x00007f86c5748da9 in QXcbEventReader::run() (this=0x55d8cb72bed0) at qxcbconnection.cpp:1325 #5 0x00007f86dbd2c99a in QThreadPrivate::start(void*) (arg=0x55d8cb72bed0) at thread/qthread_unix.cpp:341 #6 0x00007f86d95e25ca in start_thread (arg=0x7f86c2077700) at pthread_create.c:333 #7 0x00007f86db120f6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 1 (Thread 0x7f86df54d940 (LWP 10013)): [KCrash Handler] #6 0x00007f86df63b5e1 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:135 #7 0x00007f86df63b5e1 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (p=...) at ../../src/corelib/global/qglobal.h:1014 #8 0x00007f86df63b5e1 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=<optimized out>) at qdbusabstractinterface.h:152 #9 0x00007f86df63b5e1 in QDBusAbstractInterface::asyncCallWithArgumentList(QString const&, QList<QVariant> const&) (this=0x0, method=..., args=...) at qdbusabstractinterface.cpp:513 #10 0x00007f86de144057 in KWallet::Wallet::isOpen(QString const&) (wallet=..., this=<optimized out>) at /usr/src/debug/kwallet-5.25.0/x86_64-redhat-linux-gnu/src/api/KWallet/kwallet_interface.h:146 #11 0x00007f86de144057 in KWallet::Wallet::isOpen(QString const&) (name=...) at /usr/src/debug/kwallet-5.25.0/src/api/KWallet/kwallet.cpp:366 #12 0x000055d8c99ccdde in BugzillaLoginPage::openWallet() (this=this@entry=0x55d8cb9ce890) at /usr/src/debug/plasma-workspace-5.7.3/drkonqi/bugzillaintegration/reportassistantpages_bugzilla.cpp:177 #13 0x000055d8c99cfc00 in BugzillaLoginPage::walletLogin() (this=0x55d8cb9ce890) at /usr/src/debug/plasma-workspace-5.7.3/drkonqi/bugzillaintegration/reportassistantpages_bugzilla.cpp:187 #14 0x00007f86dbefed16 in QSingleShotTimer::timerEvent(QTimerEvent*) (a=0x7fff1f9bda40, r=<optimized out>, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:124 #15 0x00007f86dbefed16 in QSingleShotTimer::timerEvent(QTimerEvent*) (this=0x55d8cbd10da0) at kernel/qtimer.cpp:310 #16 0x00007f86dbef3b8b in QObject::event(QEvent*) (this=0x55d8cbd10da0, e=<optimized out>) at kernel/qobject.cpp:1278 #17 0x00007f86dc75dc0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55d8cbd10da0, e=0x7fff1f9bdd00) at kernel/qapplication.cpp:3804 #18 0x00007f86dc7630ef in QApplication::notify(QObject*, QEvent*) (this=0x7fff1f9be130, receiver=0x55d8cbd10da0, e=0x7fff1f9bdd00) at kernel/qapplication.cpp:3561 #19 0x00007f86dbeca7aa in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55d8cbd10da0, event=event@entry=0x7fff1f9bdd00) at kernel/qcoreapplication.cpp:1015 #20 0x00007f86dbf197ab in QTimerInfoList::activateTimers() (event=0x7fff1f9bdd00, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:225 #21 0x00007f86dbf197ab in QTimerInfoList::activateTimers() (this=0x55d8cb77f9b0) at kernel/qtimerinfo_unix.cpp:637 #22 0x00007f86dbf19d01 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:176 #23 0x00007f86d89206ba in g_main_context_dispatch (context=0x7f86bc001710) at gmain.c:3154 #24 0x00007f86d89206ba in g_main_context_dispatch (context=context@entry=0x7f86bc001710) at gmain.c:3769 #25 0x00007f86d8920a70 in g_main_context_iterate (context=context@entry=0x7f86bc001710, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840 #26 0x00007f86d8920b1c in g_main_context_iteration (context=0x7f86bc001710, may_block=may_block@entry=1) at gmain.c:3901 #27 0x00007f86dbf1a22f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55d8cb768420, flags=...) at kernel/qeventdispatcher_glib.cpp:417 #28 0x00007f86dbec95ea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff1f9bdf50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204 #29 0x00007f86dbed117c in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1285 #30 0x000055d8c9995e8f in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.7.3/drkonqi/main.cpp:170
*** Bug 363838 has been marked as a duplicate of this bug. ***
The crash only happens if kwallet is disabled. If it is enabled, everything works as expected.
Actually it is a bug in kwallet IMHO. This should fix it: https://git.reviewboard.kde.org/r/128831
Git commit 48ec969bcf36fde17de027576859c98bae609c73 by Wolfgang Bauer. Committed on 01/10/2016 at 09:43. Pushed by wbauer into branch 'master'. Check whether kwallet is enabled in Wallet::isOpen(name) If kwallet is disabled, walletlauncher() fails to start the service and walletLauncher()->getInterface().isOpen(name) causes a crash. This affects e.g. drkonqi, but probably also other applications. Return false in this case, if kwallet is disabled a wallet cannot be open either. FIXED-IN: 5.27.0 REVIEW: 128831 M +9 -7 src/api/KWallet/kwallet.cpp http://commits.kde.org/kwallet/48ec969bcf36fde17de027576859c98bae609c73
*** Bug 361196 has been marked as a duplicate of this bug. ***
*** Bug 361198 has been marked as a duplicate of this bug. ***
*** Bug 378628 has been marked as a duplicate of this bug. ***