How to reproduce: → Install kdeconnect-kde (git frameworks 0b67371) → Configure systray to show 'KDE Connect' item → Make sure 'kdeconnectd' is not running / org.kde.kdeconnect is not available via D-Bus → Click on the KDE Connect systray item plasmashell crashes without leaving a usable backtrace. Last relevant log lines: kdeconnect: dbus interface not valid kdeconnect: dbus interface not valid Application::crashHandler() called with signal 11; recent crashes: 1 The crash might be originating from kdeconnect-kde's libkdeconnectdeclarativeplugin.so, but I feel like plasmashell should handle this more graceful. KF5/P5 is completely up-to-date from git master. Qt is 5.3.1. I'll continue trying to gather a useful BT in the meanwhile and add it here in case I should succeed.
Created attachment 88341 [details] Backtrace of plasmashell crash I was now able to get a BT of this crash.
I'm not sure anymore, whether this is strictly related to the (non-)existence of said D-Bus interface. I was able now to crash plasmashell multiple times even when kdeconnectd was running.
pasting inline Thread 1 (Thread 0x7f1fe3455800 (LWP 28934)): #0 QQmlBoundSignalExpression::function (this=this@entry=0x6876810) at ../../include/QtQml/5.3.1/QtQml/private/../../../../../src/qml/qml/qqmlengine_p.h:163 No locals. #1 0x00007f1fdf452f68 in QQmlBoundSignalExpression::sourceLocation (this=this@entry=0x6876810) at qml/qqmlboundsignal.cpp:162 f = <optimized out> loc = <optimized out> #2 0x00007f1fdf4326fb in QQmlData::destroyed (this=0x6876610, object=0x6884ff0) at qml/qqmlengine.cpp:1617 location = {sourceFile = {static null = {<No data fields>}, d = 0x6876478}, line = 6536, column = 56604} source = {static null = {<No data fields>}, d = 0x0} locationString = {static null = {<No data fields>}, d = 0x7f1fdce2f300 <QArrayData::shared_null>} expr = 0x6876810 next = <optimized out> binding = <optimized out> signalHandler = 0x688dcf0 __PRETTY_FUNCTION__ = "void QQmlData::destroyed(QObject*)" #3 0x00007f1fdcdb338e in QObject::~QObject (this=0x6884ff0, __in_chrg=<optimized out>) at kernel/qobject.cpp:916 d = 0x68763a0 #4 0x00007f1fe2ecaaf6 in ~QQmlElement (this=0x6884ff0, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:106 No locals. #5 QQmlPrivate::QQmlElement<QQuickMouseArea>::~QQmlElement (this=0x6884ff0, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:106 No locals. #6 0x00007f1fdcdaab52 in QObjectPrivate::deleteChildren (this=this@entry=0x6875b80) at kernel/qobject.cpp:1934 No locals. #7 0x00007f1fdcdb36fc in QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1028 d = <optimized out> #8 0x00007f1fe2eca006 in ~QQmlElement (this=0x689cd80, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:106 No locals. #9 QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement (this=0x689cd80, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:106 No locals. #10 0x00007f1fdcdaab52 in QObjectPrivate::deleteChildren (this=this@entry=0x689aaa0) at kernel/qobject.cpp:1934 No locals. #11 0x00007f1fdcdb36fc in QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1028 d = <optimized out> #12 0x00007f1fe2ecab76 in ~QQmlElement (this=0x68846b0, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:106 No locals. #13 QQmlPrivate::QQmlElement<QQuickLoader>::~QQmlElement (this=0x68846b0, __in_chrg=<optimized out>) at ../../include/QtQml/../../src/qml/qml/qqmlprivate.h:106 No locals. #14 0x00007f1fdcdaab52 in QObjectPrivate::deleteChildren (this=this@entry=0x6883fa0) at kernel/qobject.cpp:1934 No locals. #15 0x00007f1fdcdb36fc in QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1028 d = <optimized out> #16 0x00007f1fcc2d31c6 in ~QQmlElement (this=0x6882420, __in_chrg=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:106 No locals. #17 QQmlPrivate::QQmlElement<ToolTip>::~QQmlElement (this=0x6882420, __in_chrg=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:106 No locals. #18 0x00007f1fdcdaab52 in QObjectPrivate::deleteChildren (this=this@entry=0x6856190) at kernel/qobject.cpp:1934 No locals. #19 0x00007f1fdcdb36fc in QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1028 d = <optimized out> #20 0x00007f1fc5ccf2b6 in ~QQmlElement (this=0x6856130, __in_chrg=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:106 No locals. #21 QQmlPrivate::QQmlElement<MouseEventListener>::~QQmlElement (this=0x6856130, __in_chrg=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:106 No locals. #22 0x00007f1fdcdacd08 in QObject::event (this=this@entry=0x6856130, e=e@entry=0x6c13d60) at kernel/qobject.cpp:1232 No locals. #23 0x00007f1fe2eb0063 in QQuickItem::event (this=0x6856130, ev=0x6c13d60) at items/qquickitem.cpp:7118 No locals. #24 0x00007f1fdda1897c in QApplicationPrivate::notify_helper (this=this@entry=0x2192530, receiver=receiver@entry=0x6856130, e=e@entry=0x6c13d60) at kernel/qapplication.cpp:3522 consumed = <optimized out> #25 0x00007f1fdda1da06 in QApplication::notify (this=0x7fffdb092ab0, receiver=0x6856130, e=0x6c13d60) at kernel/qapplication.cpp:3305 w = 0x6856130 extra = <optimized out> isProxyWidget = <optimized out> __PRETTY_FUNCTION__ = "virtual bool QApplication::notify(QObject*, QEvent*)" res = <optimized out> #26 0x00007f1fdcd7cff5 in QCoreApplication::notifyInternal (this=0x7fffdb092ab0, receiver=0x6856130, event=event@entry=0x6c13d60) at kernel/qcoreapplication.cpp:935 threadData = 0x2187dd0 loopLevelCounter = {threadData = 0x2187dd0} result = false cbdata = {0x6856130, 0x6c13d60, 0x7fffdb090d90} d = <optimized out> #27 0x00007f1fdcd7ee47 in sendEvent (event=0x6c13d60, receiver=<optimized out>) at kernel/qcoreapplication.h:237 No locals. #28 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x2187dd0) at kernel/qcoreapplication.cpp:1539 e = 0x6c13d60 pe = <optimized out> r = <optimized out> unlocker = {m = <synthetic pointer>} event_deleter = {d = 0x6c13d60} __PRETTY_FUNCTION__ = "static void QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)" locker = {val = 35159544} startOffset = 0 i = @0x2187dec: 13 cleanup = {receiver = 0x0, event_type = 0, data = 0x2187dd0, exceptionCaught = true} #29 0x00007f1fdcd7f478 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1397 data = <optimized out> #30 0x00007f1fdcdd4843 in postEventSourceDispatch (s=0x21ccc00) at kernel/qeventdispatcher_glib.cpp:279 source = 0x21ccc00 #31 0x00007f1fd70cf884 in g_main_dispatch (context=0x7f1fc8001e00) at /var/tmp/portage/dev-libs/glib-2.40.0-r1/work/glib-2.40.0/glib/gmain.c:3064 dispatch = 0x7f1fdcdd4830 <postEventSourceDispatch(GSource*, GSourceFunc, gpointer)> prev_source = 0x21dc610 was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = <optimized out> cb_data = 0x0 need_destroy = <optimized out> source = 0x21ccc00 current = 0x2188910 i = 0 #32 g_main_context_dispatch (context=context@entry=0x7f1fc8001e00) at /var/tmp/portage/dev-libs/glib-2.40.0-r1/work/glib-2.40.0/glib/gmain.c:3663 No locals. #33 0x00007f1fd70cfac8 in g_main_context_iterate (context=context@entry=0x7f1fc8001e00, block=block@entry=0, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.40.0-r1/work/glib-2.40.0/glib/gmain.c:3734 max_priority = 0 timeout = 0 some_ready = 1 nfds = <optimized out> allocated_nfds = 7 fds = 0x5409250 #34 0x00007f1fd70cfb6c in g_main_context_iteration (context=0x7f1fc8001e00, may_block=0) at /var/tmp/portage/dev-libs/glib-2.40.0-r1/work/glib-2.40.0/glib/gmain.c:3795 retval = <optimized out> #35 0x00007f1fdcdd3cbc in QEventDispatcherGlib::processEvents (this=0x21cfe60, flags=...) at kernel/qeventdispatcher_glib.cpp:426 d = 0x21cc5d0 canWait = false savedFlags = {i = 36} result = <optimized out> #36 0x00007f1fdcd7d402 in QCoreApplication::processEvents (flags=..., flags@entry=..., maxtime=maxtime@entry=50) at kernel/qcoreapplication.cpp:1133 data = 0x2187dd0 start = {t1 = 49969, t2 = 682224209} #37 0x00007f1fe1498158 in KDeclarative::QmlObject::createObjectFromComponent (this=0x5aad1b0, component=0x5e36cd0, context=0x6687010, initialProperties=...) at /var/tmp/portage/kde-frameworks/kdeclarative-9999/work/kdeclarative-9999/src/kdeclarative/qmlobject.cpp:258 incubator = {<QQmlIncubator> = {_vptr.QQmlIncubator = 0x7f1fe16ac930 <vtable for KDeclarative::QmlObjectIncubator+16>, d = 0x6b4c5e0}, m_initialProperties = {{d = 0x7f1fdce31900 <QHashData::shared_null>, e = 0x7f1fdce31900 <QHashData::shared_null>}}} object = <optimized out> #38 0x00007f1fe1e0cb2a in PlasmaQuick::AppletQuickItemPrivate::createFullRepresentationItem (this=0x5ab0690) at /var/tmp/portage/kde-frameworks/plasma-9999/work/plasma-9999/src/plasmaquick/appletquickitem.cpp:187 this = 0x5ab0690 #39 0x00007f1fe1e0d865 in PlasmaQuick::AppletQuickItem::setExpanded (this=this@entry=0x5aa7440, expanded=<optimized out>) at /var/tmp/portage/kde-frameworks/plasma-9999/work/plasma-9999/src/plasmaquick/appletquickitem.cpp:620 No locals. #40 0x00007f1fe1e117fd in PlasmaQuick::AppletQuickItem::qt_metacall (this=this@entry=0x5aa7440, _c=_c@entry=QMetaObject::WriteProperty, _id=7, _a=_a@entry=0x7fffdb091230) at /var/tmp/portage/kde-frameworks/plasma-9999/work/plasma-9999_build/src/plasmaquick/moc_appletquickitem.cpp:339 _v = <optimized out> #41 0x00007f1fbcb1b867 in AppletInterface::qt_metacall (this=0x5aa7440, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7fffdb091230) at /var/tmp/portage/kde-frameworks/plasma-9999/work/plasma-9999_build/src/scriptengines/qml/moc_appletinterface.cpp:490 No locals. #42 0x00007f1fdcd89aeb in QMetaProperty::write (this=this@entry=0x7fffdb0912e0, object=object@entry=0x5aa7440, value=...) at kernel/qmetaobject.cpp:2926 status = -1 flags = 0 argv = {0x7fffdb0911f0, 0x7fffdb0911f0, 0x7fffdb0911a0, 0x7fffdb0911b0} v = {d = {data = {c = 1 '\001', uc = 1 '\001', s = 1, sc = 1 '\001', us = 1, i = 1, u = 1, l = 1, ul = 1, b = true, d = 4.9406564584124654e-324, f = 1.40129846e-45, real = 4.9406564584124654e-324, ll = 1, ull = 1, o = 0x1, ptr = 0x1, shared = 0x1}, type = 1, is_shared = 0, is_null = 0}} t = <optimized out> #43 0x00007f1fdcdb4c8f in QObject::setProperty (this=0x5aa7440, name=name@entry=0x7f1ec9df5238 "expanded", value=...) at kernel/qobject.cpp:3825 d = 0x5ab0540 meta = 0x7f1fbcd373e0 <AppletInterface::staticMetaObject> id = <optimized out> p = {mobj = 0x7f1fe203a4a0 <PlasmaQuick::AppletQuickItem::staticMetaObject>, handle = 153, idx = 7, menum = {mobj = 0x0, handle = 0}} #44 0x00007f1ec9de915f in SystemTray::PlasmoidTask::setExpanded (this=0x59cab00, expanded=<optimized out>) at /var/tmp/portage/kde-base/plasma-workspace-9999/work/plasma-workspace-9999/applets/systemtray/plugin/protocols/plasmoid/plasmoidtask.cpp:216 No locals. #45 0x00007f1ec9df3e81 in SystemTray::Task::qt_metacall (this=this@entry=0x59cab00, _c=_c@entry=QMetaObject::WriteProperty, _id=7, _a=_a@entry=0x7fffdb091470) at /var/tmp/portage/kde-base/plasma-workspace-9999/work/plasma-workspace-9999_build/applets/systemtray/plugin/moc_task.cpp:356 _v = <optimized out> #46 0x00007f1ec9df4267 in SystemTray::PlasmoidTask::qt_metacall (this=0x59cab00, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7fffdb091470) at /var/tmp/portage/kde-base/plasma-workspace-9999/work/plasma-workspace-9999_build/applets/systemtray/plugin/moc_plasmoidtask.cpp:193 No locals. #47 0x00007f1fdf4460fa in QQmlPropertyPrivate::write (object=object@entry=0x59cab00, property=..., value=..., context=0x6875a10, flags=...) at qml/qqmlproperty.cpp:1322 a = {0x7fffdb091520, 0x0, 0x7fffdb09142c, 0x7fffdb091410} status = -1 variantType = <optimized out> coreIdx = 8 propertyType = 1 #48 0x00007f1fdf40971c in QV4::QObjectWrapper::setProperty (object=object@entry=0x59cab00, ctx=ctx@entry=0x7fffdb0917a0, property=0x6843978, value=..., value@entry=...) at jsruntime/qv4qobjectwrapper.cpp:549 v = {d = {data = {c = 1 '\001', uc = 1 '\001', s = 5377, sc = 1 '\001', us = 5377, i = -620161791, u = 3674805505, l = 140736868193537, ul = 140736868193537, b = true, d = 6.9533251677714247e-310, f = -3.85851658e+16, real = 6.9533251677714247e-310, ll = 140736868193537, ull = 140736868193537, o = 0x7fffdb091501, ptr = 0x7fffdb091501, shared = 0x7fffdb091501}, type = 1, is_shared = 0, is_null = 0}} callingQmlContext = <optimized out> newBinding = <optimized out> scope = {engine = 0x3198970, mark = 0x7f1f827ff3a0} f = {ptr = 0x7f1f827ff3a0} oldBinding = <optimized out> #49 0x00007f1fdf409dd3 in QV4::QObjectWrapper::setQmlProperty (ctx=0x7fffdb0917a0, qmlContext=<optimized out>, object=0x59cab00, name=<optimized out>, revisionMode=revisionMode@entry=QV4::QObjectWrapper::IgnoreRevision, value=..., value@entry=...) at jsruntime/qv4qobjectwrapper.cpp:446 local = {<QQmlPropertyRawData> = {{propType = 0, propTypeName = 0x7f1f00000000 ""}, coreIndex = -1, {notifyIndex = -1, arguments = 0xffffffff}, {{revision = 0, metaObjectOffset = -1, {{ valueTypeFlags = 65534, valueTypePropType = 65535, valueTypeCoreIndex = 62368}, {overrideIndexIsProperty = 0, overrideIndex = -1}}}, {accessors = 0xfffffffeffff0000, accessorData = 139773310137248}}, flags = 0}, <No data fields>} result = <optimized out> #50 0x00007f1fdf409ee5 in QV4::QObjectWrapper::put (m=0x7f1fa079ae90, name=..., value=...) at jsruntime/qv4qobjectwrapper.cpp:684 that = 0x7f1fa079ae90 v4 = 0x3198970 qmlContext = <optimized out> #51 0x00007f1fdf4172dd in put (v=..., name=..., this=<optimized out>) at jsruntime/qv4object_p.h:248 No locals. #52 QV4::Runtime::setProperty (ctx=<optimized out>, object=..., name=..., value=...) at jsruntime/qv4runtime.cpp:560 scope = {engine = 0x3198970, mark = 0x7f1f827ff398} o = <optimized out> #53 0x00007f1e99cd35bb in ?? () No symbol table info available. #54 0x0000000000000000 in ?? () No symbol table info available. Continuing. Program received signal SIGTERM, Terminated. [Switching to Thread 0x7f1fcdcea700 (LWP 28935)] 0x00007f1fdc52963d in poll () at ../sysdeps/unix/syscall-template.S:81 81 ../sysdeps/unix/syscall-template.S: No such file or directory. A debugging session is active. Inferior 1 [process 28934] will be detached. Quit anyway? (y or n) Quitting: Can't detach Thread 0x7f1fbe18d700 (LWP 28947): No such process
Backtrace looks good, confirming. Looks like that issue of processing other events in the event loop in: KDeclarative::QmlObject::createObjectFromComponent
(In reply to David Edmundson from comment #4) > Backtrace looks good, confirming. > > Looks like that issue of processing other events in the event loop in: > KDeclarative::QmlObject::createObjectFromComponent @David: So should this be re-assigned to frameworks-kdeclarative? Or is it even an upstream (Qt/QML) bug?
Could not reproduce it on Arch Linux, using Plasma 5.1.2, Qt 5.4 and Kdeconnect from the AUR : https://aur.archlinux.org/packages/kdeconnect-frameworks-git (version from package is r646.f204fae-1)
Thanks m_louis30 I altered the behaviour of: KDeclarative::QmlObject::createObjectFromComponent a few weeks ago so it could be that. Either way, lets assume it's fixed unless we here otherwise.
Sorry for the lack of feedback from my side. I was busy during the last days. Can't reproduce this anymore, so I'd say this is fixed now.