Bug 450723

Summary: Plasma crashes after turning the screen on and of (Wayland)
Product: [Plasma] plasmashell Reporter: Alexander <alexander.reimelt>
Component: generic-multiscreenAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: aleixpol, brenmac23, kde, nate, notmart
Priority: NOR Keywords: drkonqi
Version: 5.24.1   
Target Milestone: 1.0   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi

Description Alexander 2022-02-22 23:27:53 UTC
Application: plasmashell (5.24.1)

Qt Version: 5.15.2
Frameworks Version: 5.90.0
Operating System: Linux 5.16.10-1-default x86_64
Windowing System: Wayland
Distribution: "openSUSE Tumbleweed"
DrKonqi: 5.24.1 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:
I started the Plasma Wayland session and turned my only screen on and off.

The crash can be reproduced every time.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Content of s_kcrashErrorMessage: {_M_t = {<std::__uniq_ptr_impl<char, std::default_delete<char []> >> = {_M_t = {<std::_Tuple_impl<0, char*, std::default_delete<char []> >> = {<std::_Tuple_impl<1, std::default_delete<char []> >> = {<std::_Head_base<1, std::default_delete<char []>, true>> = {_M_head_impl = {<No data fields>}}, <No data fields>}, <std::_Head_base<0, char*, false>> = {_M_head_impl = <optimized out>}, <No data fields>}, <No data fields>}}, <No data fields>}}
[KCrash Handler]
#6  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::operator->() const (this=0x99) at /usr/include/qt5/QtCore/qscopedpointer.h:116
#7  qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > >(QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >&) (ptr=...) at /usr/include/qt5/QtCore/qglobal.h:1143
#8  QQuickWindow::d_func() (this=0x91) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickwindow.h:79
#9  QQuickWindow::maybeUpdate() (this=0x91) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickwindow.cpp:3928
#10 0x00007f762d5ef039 in QQuickWindowPrivate::dirtyItem(QQuickItem*) (this=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickwindow.cpp:1334
#11 0x00007f762d5d1c31 in QQuickItemPrivate::addToDirtyList() (this=this@entry=0x55ab832b5440) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickitem.cpp:6207
#12 0x00007f762d5d64be in QQuickItemPrivate::dirty(QQuickItemPrivate::DirtyType) (this=this@entry=0x55ab832b5440, type=type@entry=QQuickItemPrivate::Visible) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickitem.cpp:6188
#13 0x00007f762d5d7fc6 in QQuickItemPrivate::setEffectiveVisibleRecur(bool) (this=0x55ab832b5440, newEffectiveVisible=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickitem.cpp:6062
#14 0x00007f762d5d8037 in QQuickItemPrivate::setEffectiveVisibleRecur(bool) (this=this@entry=0x55ab82f9fd00, newEffectiveVisible=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickitem.cpp:6072
#15 0x00007f762d5d8153 in QQuickItemPrivate::setVisible(bool) (this=0x55ab82f9fd00, visible=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/quick/items/qquickitem.cpp:5975
#16 0x00007f762d5e559b in QQuickItem::qt_metacall(QMetaObject::Call, int, void**) (this=this@entry=0x55ab82faff10, _c=_c@entry=QMetaObject::WriteProperty, _id=11, _a=_a@entry=0x7ffd625ba920) at .moc/moc_qquickitem.cpp:1048
#17 0x00007f762ddca8a6 in PlasmaQuick::AppletQuickItem::qt_metacall(QMetaObject::Call, int, void**) (this=this@entry=0x55ab82faff10, _c=_c@entry=QMetaObject::WriteProperty, _id=<optimized out>, _a=_a@entry=0x7ffd625ba920) at /usr/src/debug/plasma-framework-5.90.0-1.2.x86_64/build/src/plasmaquick/KF5PlasmaQuick_autogen/include/moc_appletquickitem.cpp:364
#18 0x00007f762404dc76 in AppletInterface::qt_metacall(QMetaObject::Call, int, void**) (this=0x55ab82faff10, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7ffd625ba920) at /usr/src/debug/plasma-framework-5.90.0-1.2.x86_64/build/src/scriptengines/qml/plasma_appletscript_declarative_autogen/include/moc_appletinterface.cpp:850
#19 0x00007f762405c226 in ContainmentInterface::qt_metacall(QMetaObject::Call, int, void**) (this=0x55ab82faff10, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7ffd625ba920) at /usr/src/debug/plasma-framework-5.90.0-1.2.x86_64/build/src/scriptengines/qml/plasma_appletscript_declarative_autogen/include/moc_containmentinterface.cpp:453
#20 0x00007f762d0b5e1f in QQmlPropertyData::writeProperty(QObject*, void*, QFlags<QQmlPropertyData::WriteFlag>) const (flags=..., value=<optimized out>, target=<optimized out>, this=<optimized out>) at ../../include/QtQml/5.15.2/QtQml/private/../../../../../../src/qml/qml/qqmlpropertydata_p.h:379
#21 QQmlPropertyPrivate::write(QObject*, QQmlPropertyData const&, QVariant const&, QQmlContextData*, QFlags<QQmlPropertyData::WriteFlag>) (object=object@entry=0x55ab82faff10, property=..., value=..., context=<optimized out>, flags=..., flags@entry=...) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/qml/qqmlproperty.cpp:1292
#22 0x00007f762cfdc1f1 in QV4::QObjectWrapper::setProperty(QV4::ExecutionEngine*, QObject*, QQmlPropertyData*, QV4::Value const&) (engine=0x55ab82ebac10, object=0x55ab82faff10, property=0x7f75b40a0ca8, value=...) at /usr/include/qt5/QtCore/qflags.h:120
#23 0x00007f762cfdca62 in QV4::QObjectWrapper::setQmlProperty(QV4::ExecutionEngine*, QQmlContextData*, QObject*, QV4::String*, QV4::QObjectWrapper::RevisionMode, QV4::Value const&) (value=..., revisionMode=QV4::QObjectWrapper::IgnoreRevision, name=<optimized out>, object=0x55ab82faff10, qmlContext=<optimized out>, engine=0x55ab82ebac10) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:435
#24 QV4::QObjectWrapper::setQmlProperty(QV4::ExecutionEngine*, QQmlContextData*, QObject*, QV4::String*, QV4::QObjectWrapper::RevisionMode, QV4::Value const&) (engine=0x55ab82ebac10, qmlContext=<optimized out>, object=0x55ab82faff10, name=<optimized out>, revisionMode=QV4::QObjectWrapper::IgnoreRevision, value=...) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:418
#25 0x00007f762cfdcc05 in QV4::QObjectWrapper::virtualPut(QV4::Managed*, QV4::PropertyKey, QV4::Value const&, QV4::Value*) (m=0x7f75ec3ba580, id=..., value=..., receiver=0x7f75ec3ba580) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:722
#26 0x00007f762cf653b3 in QV4::Object::put(QV4::StringOrSymbol*, QV4::Value const&, QV4::Value*) (receiver=0x7f75ec3ba580, v=..., name=0x7f75ec3ba588, this=0x7f75ec3ba580) at ../../include/QtQml/5.15.2/QtQml/private/../../../../../../src/qml/jsruntime/qv4string_p.h:280
#27 QV4::Lookup::setterFallback(QV4::Lookup*, QV4::ExecutionEngine*, QV4::Value&, QV4::Value const&) (l=<optimized out>, engine=0x55ab82ebac10, object=<optimized out>, value=...) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4lookup.cpp:497
#28 0x00007f762cff66b2 in QV4::Moth::VME::interpret(QV4::CppStackFrame*, QV4::ExecutionEngine*, char const*) (frame=0x7ffd625bad60, engine=0x55ab82ebac10, code=0x7f760c00394c ".':(\030\aVL\026.):*\030\b.+^\bL\n.,\030\t\b>-\tHM..:/\030\t.0:1>2\t.3:4\030\t.5:6>7\t.8:9\030\t.::;><\t.=:>\030\t.?:@>A\t.B:CL\n.D:E\030\t\n>F\t.G\030\t.H>I\t\026\006\002") at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:653
#29 0x00007f762cffa917 in QV4::Moth::VME::exec(QV4::CppStackFrame*, QV4::ExecutionEngine*) (frame=frame@entry=0x7ffd625bad60, engine=engine@entry=0x55ab82ebac10) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:463
#30 0x00007f762cf8dd3e in QV4::Function::call(QV4::Value const*, QV4::Value const*, int, QV4::ExecutionContext const*) (this=this@entry=0x55ab837115f0, thisObject=<optimized out>, argv=argv@entry=0x7f75ec3ba500, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/jsruntime/qv4function.cpp:69
#31 0x00007f762d114b45 in QQmlJavaScriptExpression::evaluate(QV4::CallData*, bool*) (this=this@entry=0x55abee2e6180, callData=callData@entry=0x7f75ec3ba4d0, isUndefined=isUndefined@entry=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/qml/qqmljavascriptexpression.cpp:212
#32 0x00007f762d0c68ab in QQmlBoundSignalExpression::evaluate(void**) (this=<optimized out>, a=<optimized out>) at ../../include/QtQml/5.15.2/QtQml/private/../../../../../../src/qml/jsruntime/qv4jscall_p.h:95
#33 0x00007f762d0c7a98 in QQmlBoundSignal_callback(QQmlNotifierEndpoint*, void**) (e=0x55ab851b6930, a=0x0) at ../../include/QtQml/5.15.2/QtQml/private/../../../../../../src/qml/qml/qqmlboundsignalexpressionpointer_p.h:69
#34 0x00007f762d0f9c75 in QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) (endpoint=<optimized out>, a=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/qml/qqmlnotifier.cpp:104
#35 0x00007f762baf7068 in doActivate<false>(QObject*, int, void**) (sender=0x55ab877b9290, signal_index=30, argv=argv@entry=0x0) at kernel/qobject.cpp:3778
#36 0x00007f762baf0bed in QMetaObject::activate(QObject*, int, int, void**) (sender=<optimized out>, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=argv@entry=0x0) at kernel/qobject.cpp:3959
#37 0x00007f762d0a0515 in QQmlVMEMetaObject::activate(QObject*, int, void**) (this=this@entry=0x55ab83e8d890, object=<optimized out>, index=<optimized out>, args=args@entry=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/qml/qqmlvmemetaobject.cpp:1312
#38 0x00007f762d0a2c1f in QQmlVMEMetaObject::metaCall(QObject*, QMetaObject::Call, int, void**) (this=0x55ab83e8d890, o=<optimized out>, c=<optimized out>, _id=<optimized out>, a=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.15.2+kde43-1.2.x86_64/src/qml/qml/qqmlvmemetaobject.cpp:880
#39 0x00007f762bace7ec in QMetaProperty::write(QObject*, QVariant const&) const (this=this@entry=0x7ffd625bcba0, object=object@entry=0x55ab877b9290, value=...) at kernel/qmetaobject.cpp:3258
#40 0x00007f762baf61e6 in QObject::setProperty(char const*, QVariant const&) (this=this@entry=0x55ab877b9290, name=name@entry=0x7f762ddec0c9 "containment", value=...) at kernel/qobject.cpp:4070
#41 0x00007f762ddd1dc0 in PlasmaQuick::ContainmentViewPrivate::setContainment(Plasma::Containment*) (this=0x55ab8475b6e0, cont=<optimized out>) at /usr/src/debug/plasma-framework-5.90.0-1.2.x86_64/src/plasmaquick/containmentview.cpp:124
#42 0x000055ab815a4f6c in ShellCorona::addOutput(QScreen*) (this=0x55ab82bc9030, screen=<optimized out>) at /usr/src/debug/plasma5-workspace-5.24.1-1.2.x86_64/shell/shellcorona.cpp:1290
#43 0x00007f762baf7503 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffd625bce30, r=0x55ab82bc9030, this=0x55ab837be8f0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#44 doActivate<false>(QObject*, int, void**) (sender=0x7ffd625bd7b0, signal_index=9, argv=0x7ffd625bce30) at kernel/qobject.cpp:3886
#45 0x00007f762baf09cf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7f762c4a7400, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffd625bce30) at kernel/qobject.cpp:3946
#46 0x00007f762bf0f542 in QGuiApplication::screenAdded(QScreen*) (this=<optimized out>, _t1=<optimized out>) at .moc/moc_qguiapplication.cpp:389
#47 0x00007f762bef5592 in QWindowSystemInterface::handleScreenAdded(QPlatformScreen*, bool) (ps=<optimized out>, isPrimary=isPrimary@entry=false) at kernel/qwindowsysteminterface.cpp:826
#48 0x00007f7629a8ce58 in QtWaylandClient::QWaylandDisplay::handleScreenInitialized(QtWaylandClient::QWaylandScreen*) (this=0x55ab82b276d0, screen=<optimized out>, screen@entry=0x55ab87032690) at qwaylanddisplay.cpp:457
#49 0x00007f7629a97553 in QtWaylandClient::QWaylandScreen::maybeInitialize() (this=0x55ab87032690) at qwaylandscreen.cpp:108
#50 QtWaylandClient::QWaylandScreen::maybeInitialize() (this=0x55ab87032690) at qwaylandscreen.cpp:99
#51 0x00007f762b34b572 in ffi_call_unix64 () at ../src/x86/unix64.S:105
#52 0x00007f762b348296 in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:672
#53 0x00007f762dc259c0 in wl_closure_invoke (closure=closure@entry=0x7f7620008a70, target=<optimized out>, target@entry=0x55ab83b945f0, opcode=opcode@entry=2, data=<optimized out>, flags=<optimized out>) at ../src/connection.c:1025
#54 0x00007f762dc26103 in dispatch_event (display=display@entry=0x55ab82b2b1a0, queue=0x55ab82b2b270, queue=<optimized out>) at ../src/wayland-client.c:1583
#55 0x00007f762dc262dc in dispatch_queue (queue=0x55ab82b2b270, display=0x55ab82b2b1a0) at ../src/wayland-client.c:1729
#56 wl_display_dispatch_queue_pending (display=0x55ab82b2b1a0, queue=0x55ab82b2b270) at ../src/wayland-client.c:1971
#57 0x00007f7629a8acaa in QtWaylandClient::QWaylandDisplay::flushRequests() (this=<optimized out>) at qwaylanddisplay.cpp:253
#58 0x00007f762baed4ae in QObject::event(QEvent*) (this=0x55ab82b276d0, e=0x7f762000d8c0) at kernel/qobject.cpp:1314
#59 0x00007f762c85ca7f in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55ab82b276d0, e=0x7f762000d8c0) at kernel/qapplication.cpp:3632
#60 0x00007f762bac0e3a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ab82b276d0, event=0x7f762000d8c0) at kernel/qcoreapplication.cpp:1064
#61 0x00007f762bac3e77 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x55ab82adfa90) at kernel/qcoreapplication.cpp:1821
#62 0x00007f762bb18d03 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=s@entry=0x55ab82b44740) at kernel/qeventdispatcher_glib.cpp:277
#63 0x00007f7629e22e22 in g_main_dispatch (context=0x55ab82b44170) at ../glib/gmain.c:3381
#64 g_main_context_dispatch (context=0x55ab82b44170) at ../glib/gmain.c:4099
#65 0x00007f7629e231b8 in g_main_context_iterate (context=context@entry=0x55ab82b44170, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4175
#66 0x00007f7629e2326f in g_main_context_iteration (context=0x55ab82b44170, may_block=1) at ../glib/gmain.c:4240
#67 0x00007f762bb18384 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55ab82b40ac0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#68 0x00007f762babf83b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffd625bd630, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#69 0x00007f762bac7b10 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#70 0x00007f762bf1125c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867
#71 0x00007f762c85c9f5 in QApplication::exec() () at kernel/qapplication.cpp:2824
#72 0x000055ab8158369a in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma5-workspace-5.24.1-1.2.x86_64/shell/main.cpp:238
[Inferior 1 (process 1818) detached]

Possible duplicates by query: bug 450663, bug 450594, bug 450163, bug 450113, bug 449856.

Reported using DrKonqi
Comment 1 Nate Graham 2022-02-23 20:15:17 UTC
#41 0x00007f762ddd1dc0 in PlasmaQuick::ContainmentViewPrivate::setContainment(Plasma::Containment*) (this=0x55ab8475b6e0, cont=<optimized out>) at /usr/src/debug/plasma-framework-5.90.0-1.2.x86_64/src/plasmaquick/containmentview.cpp:124
#42 0x000055ab815a4f6c in ShellCorona::addOutput(QScreen*) (this=0x55ab82bc9030, screen=<optimized out>) at /usr/src/debug/plasma5-workspace-5.24.1-1.2.x86_64/shell/shellcorona.cpp:1290

*** This bug has been marked as a duplicate of bug 450594 ***
Comment 2 brenmac23 2022-05-05 04:24:56 UTC
Created attachment 148568 [details]
New crash information added by DrKonqi

plasmashell (5.24.4) using Qt 5.15.3

- What I was doing when the application crashed:
Happens everytime a monitor goes into sleep mode, then is turned back on. 

- Unusual behavior I noticed:
Reload of Plasma, disappearing background after the incident. Right click on desktop (missing wallpaper) no longer works. Appears to affect primary monitor more than secondary. 

- Custom settings of the application:

-- Backtrace (Reduced):
#4  0x00007fcfed72ccf7 in QtWayland::wl_output::handle_done(void*, wl_output*) () from /usr/lib/libQt5WaylandClient.so.5
[...]
#9  0x00007fcff19d5f8c in wl_display_dispatch_queue_pending () from /usr/lib/libwayland-client.so.0
#10 0x00007fcfed70a586 in QtWaylandClient::QWaylandDisplay::flushRequests() () from /usr/lib/libQt5WaylandClient.so.5
#11 0x00007fcfefa977d6 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007fcff06c72c6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
Comment 3 Nate Graham 2022-09-23 15:19:36 UTC

*** This bug has been marked as a duplicate of bug 449981 ***