Bug 358260 - Drkonqi crashed during bugreport filling process
Summary: Drkonqi crashed during bugreport filling process
Status: RESOLVED FIXED
Alias: None
Product: frameworks-kwallet
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 5.24.0
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: Valentin Rusu
URL:
Keywords:
: 361196 361198 363838 378628 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-01-20 15:14 UTC by Germano Massullo
Modified: 2019-06-15 06:49 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.27.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Germano Massullo 2016-01-20 15:14:42 UTC
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
Comment 1 Germano Massullo 2016-01-22 14:58:33 UTC
Fedora bugreport https://bugzilla.redhat.com/show_bug.cgi?id=1301092
Comment 2 Germano Massullo 2016-02-20 16:25:42 UTC
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
Comment 3 Germano Massullo 2016-09-04 12:54:27 UTC
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
Comment 4 Wolfgang Bauer 2016-09-04 18:24:24 UTC
*** Bug 363838 has been marked as a duplicate of this bug. ***
Comment 5 Wolfgang Bauer 2016-09-04 18:25:16 UTC
The crash only happens if kwallet is disabled.
If it is enabled, everything works as expected.
Comment 6 Wolfgang Bauer 2016-09-04 20:25:19 UTC
Actually it is a bug in kwallet IMHO.

This should fix it:
https://git.reviewboard.kde.org/r/128831
Comment 7 Wolfgang Bauer 2016-10-01 09:47:02 UTC
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
Comment 8 Wolfgang Bauer 2017-04-12 16:37:25 UTC
*** Bug 361196 has been marked as a duplicate of this bug. ***
Comment 9 RJ 2017-04-12 17:32:18 UTC
*** Bug 361198 has been marked as a duplicate of this bug. ***
Comment 10 Wolfgang Bauer 2019-06-15 06:49:41 UTC
*** Bug 378628 has been marked as a duplicate of this bug. ***