Bug 508113 - plasmashell crashed in QtQuick layout code on openSUSE Tumbleweed 20250809 amd64
Summary: plasmashell crashed in QtQuick layout code on openSUSE Tumbleweed 20250809 amd64
Status: REPORTED
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (other bugs)
Version First Reported In: 6.4.4
Platform: openSUSE Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi, qt-crash
Depends on:
Blocks:
 
Reported: 2025-08-11 14:16 UTC by epg
Modified: 2025-08-26 23:06 UTC (History)
1 user (show)

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


Attachments
New crash information added by DrKonqi (149.69 KB, text/plain)
2025-08-11 14:16 UTC, epg
Details

Note You need to log in before you can comment on or make changes to this bug.
Description epg 2025-08-11 14:16:13 UTC
Application: plasmashell (6.4.4)

ApplicationNotResponding [ANR]: false
Qt Version: 6.9.1
Frameworks Version: 6.17.0
Operating System: Linux 6.15.8-1-default x86_64
Windowing System: X11
Distribution: "openSUSE Tumbleweed"
DrKonqi: 6.4.4 [CoredumpBackend]

-- Information about the crash:
I upgraded with zypper dup when I sat down for work this morning, then rebooted.

Popped open some xterms, emacs, Firefox, did some work. Maybe an hour.

Then open qemu, and got the crash notification. I don't know if that timing is coincidental.

Versions:
arch: amd64
openSUSE Tumbleweed: 20250809
plasmashell: plasma6-workspace-6.4.4-1.1.x86_64
X server: xorg-x11-server-21.1.15-6.1.x86_64

All plasma components at 6.4.4 .

The reporter is unsure if this crash is reproducible.

-- Backtrace (Reduced):
#5  0x00007faceb788dd1 in QArrayDataPointer<QScriptLine>::needsDetach (this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qarraydatapointer.h:456
[...]
#8  QList<QScriptLine>::data (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qlist.h:462
#9  QList<QScriptLine>::operator[] (this=<optimized out>, i=<optimized out>, this=<optimized out>, i=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qlist.h:486
#10 QTextLine::setLineWidth (this=this@entry=0x7ffd8473de30, width=0) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/gui/text/qtextlayout.cpp:1610
#11 0x00007facec6b1b70 in QQuickTextPrivate::setLineGeometry (this=this@entry=0x55f9170a21d0, line=..., lineWidth=<optimized out>, height=@0x7ffd8473de10: 18) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:1287
#12 0x00007facec6b2981 in QQuickTextPrivate::setupTextLayout (this=this@entry=0x55f9170a21d0, baseline=baseline@entry=0x7ffd8473df70) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:908
#13 0x00007facec6b4cf9 in QQuickTextPrivate::updateSize (this=this@entry=0x55f9170a21d0) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:485
#14 0x00007facec6b635a in QQuickTextPrivate::updateLayout (this=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:263
#15 0x00007facec6bab14 in QQuickText::geometryChange (this=0x55f9170a20e0, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:2761
#16 0x00007face4f3b56e in QQuickLabel::geometryChange (this=<optimized out>, newGeometry=<optimized out>, oldGeometry=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquicklabel.cpp:549
#17 0x00007facec65e52f in QQuickItem::setSize (this=this@entry=0x55f9170a20e0, size=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7771
#18 0x00007face4f2547d in QQuickControlPrivate::resizeContent (this=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:376
#19 0x00007face4f2b2aa in QQuickControl::geometryChange (this=0x55f91709b310, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:2134
#20 0x00007facec65d95e in QQuickItem::setWidth (this=0x55f91709b310, w=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7387
#21 0x00007facec627fa2 in QQuickAnchorsPrivate::setItemWidth (this=0x55f91709c880, v=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:363
#22 QQuickAnchorsPrivate::updateHorizontalAnchors (this=this@entry=0x55f91709c880) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:713


Reported using DrKonqi
Comment 1 epg 2025-08-11 14:16:15 UTC
Created attachment 183951 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 Nate Graham 2025-08-11 20:21:29 UTC
Full searchable backtrace:

Thread 1 (Thread 0x7face6841580 (LWP 2415)):
[KCrash Handler]
#5  0x00007faceb788dd1 in QArrayDataPointer<QScriptLine>::needsDetach (this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qarraydatapointer.h:456
#6  QArrayDataPointer<QScriptLine>::detach (old=<optimized out>, this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qarraydatapointer.h:144
#7  QList<QScriptLine>::detach (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qlist.h:457
#8  QList<QScriptLine>::data (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qlist.h:462
#9  QList<QScriptLine>::operator[] (this=<optimized out>, i=<optimized out>, this=<optimized out>, i=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/tools/qlist.h:486
#10 QTextLine::setLineWidth (this=this@entry=0x7ffd8473de30, width=0) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/gui/text/qtextlayout.cpp:1610
#11 0x00007facec6b1b70 in QQuickTextPrivate::setLineGeometry (this=this@entry=0x55f9170a21d0, line=..., lineWidth=<optimized out>, height=@0x7ffd8473de10: 18) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:1287
#12 0x00007facec6b2981 in QQuickTextPrivate::setupTextLayout (this=this@entry=0x55f9170a21d0, baseline=baseline@entry=0x7ffd8473df70) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:908
#13 0x00007facec6b4cf9 in QQuickTextPrivate::updateSize (this=this@entry=0x55f9170a21d0) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:485
#14 0x00007facec6b635a in QQuickTextPrivate::updateLayout (this=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:263
#15 0x00007facec6bab14 in QQuickText::geometryChange (this=0x55f9170a20e0, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquicktext.cpp:2761
#16 0x00007face4f3b56e in QQuickLabel::geometryChange (this=<optimized out>, newGeometry=<optimized out>, oldGeometry=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquicklabel.cpp:549
#17 0x00007facec65e52f in QQuickItem::setSize (this=this@entry=0x55f9170a20e0, size=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7771
#18 0x00007face4f2547d in QQuickControlPrivate::resizeContent (this=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:376
#19 0x00007face4f2b2aa in QQuickControl::geometryChange (this=0x55f91709b310, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:2134
#20 0x00007facec65d95e in QQuickItem::setWidth (this=0x55f91709b310, w=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7387
#21 0x00007facec627fa2 in QQuickAnchorsPrivate::setItemWidth (this=0x55f91709c880, v=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:363
#22 QQuickAnchorsPrivate::updateHorizontalAnchors (this=this@entry=0x55f91709c880) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:713
#23 0x00007facec628f01 in QQuickAnchorsPrivate::itemGeometryChanged (this=0x55f91709c880, change=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:462
#24 0x00007facec6503b9 in operator() (listener=..., __closure=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:3902
#25 QQuickItemPrivate::notifyChangeListeners<QQuickItem::geometryChange(const QRectF&, const QRectF&)::<lambda(const QQuickItemPrivate::ChangeListener&)> > (this=0x55f917065bb0, changeTypes=..., function=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem_p.h:414
#26 QQuickItem::geometryChange (this=this@entry=0x55f91705dba0, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:3900
#27 0x00007face4f2b290 in QQuickControl::geometryChange (this=0x55f91705dba0, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:2132
#28 0x00007facec65d95e in QQuickItem::setWidth (this=0x55f91705dba0, w=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7387
#29 0x00007facec676b15 in QQuickItemPrivate::setWidth (this=0x55f917065bb0, width=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem_p.h:236
#30 QObjectCompatProperty<QQuickItemPrivate, double, &QQuickItemPrivate::_qt_property_width_offset, &QQuickItemPrivate::setWidth, &QQuickItemPrivate::widthChanged, decltype(nullptr)>::bindingWrapper (type=..., dataPtr=0x55f917065ce0, binding=...) at /usr/include/qt6/QtCore/6.9.1/QtCore/private/qproperty_p.h:533
#31 0x00007faceac2cb6f in QPropertyBindingPrivate::evaluateRecursive_inline (this=0x55f917096c40, bindingObservers=<optimized out>, status=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/kernel/qproperty_p.h:855
#32 QPropertyObserverPointer::evaluateBindings (bindingObservers=..., status=0x7face6841520, this=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/kernel/qproperty.cpp:813
#33 0x00007faceac2db0b in QtPrivate::QPropertyBindingData::notifyObserver_helper (this=this@entry=0x55f916b217f8, propertyDataPtr=propertyDataPtr@entry=0x55f916abf9d0, storage=storage@entry=0x55f916abf8e0, observer=observer@entry=..., bindingObservers=...) at /usr/src/debug/qtbase-everywhere-src-6.9.1/src/corelib/kernel/qproperty.cpp:670
#34 0x00007facec66a602 in QObjectCompatProperty<QQuickItemPrivate, double, &QQuickItemPrivate::_qt_property_width_offset, &QQuickItemPrivate::setWidth, &QQuickItemPrivate::widthChanged, decltype(nullptr)>::notify (this=0x55f916abf9d0) at /usr/include/qt6/QtCore/6.9.1/QtCore/private/qproperty_p.h:663
#35 0x00007facec65048c in QQuickItem::geometryChange (this=0x55f916abd600, newGeometry=<optimized out>, oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:3912
#36 0x00007facec63a2ee in QQuickFlickable::geometryChange (this=0x55f916abd600, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickflickable.cpp:2143
#37 0x00007facec65e52f in QQuickItem::setSize (this=this@entry=0x55f916abd600, size=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7771
#38 0x00007face4f2547d in QQuickControlPrivate::resizeContent (this=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:376
#39 0x00007face4f2b2aa in QQuickControl::geometryChange (this=0x55f916aaf6f0, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:2134
#40 0x00007facec65d95e in QQuickItem::setWidth (this=0x55f916aaf6f0, w=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7387
#41 0x00007face4f85a0c in QQuickStackView::geometryChange (this=<optimized out>, newGeometry=..., oldGeometry=<optimized out>) at /usr/include/qt6/QtCore/qrect.h:730
#42 0x00007facec65e52f in QQuickItem::setSize (this=0x55f916a9bc90, size=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7771
#43 0x00007facec6272ff in QQuickAnchorsPrivate::setItemSize (this=0x55f916af32f0, v=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:391
#44 QQuickAnchorsPrivate::fillChanged (this=0x55f916af32f0) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickanchors.cpp:167
#45 0x00007facec6503b9 in operator() (listener=..., __closure=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:3902
#46 QQuickItemPrivate::notifyChangeListeners<QQuickItem::geometryChange(const QRectF&, const QRectF&)::<lambda(const QQuickItemPrivate::ChangeListener&)> > (this=0x55f916a97a10, changeTypes=..., function=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem_p.h:414
#47 QQuickItem::geometryChange (this=0x55f916a94dd0, newGeometry=<optimized out>, oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:3900
#48 0x00007facec65d95e in QQuickItem::setWidth (this=this@entry=0x55f916a94dd0, w=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7387
#49 0x00007face4f4b3f9 in QQuickPagePrivate::relayout (this=0x55f916aa6ab0) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickpage.cpp:115
#50 0x00007face4f2b2aa in QQuickControl::geometryChange (this=0x55f916a9e670, newGeometry=..., oldGeometry=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quicktemplates/qquickcontrol.cpp:2134
#51 0x00007facec65d95e in QQuickItem::setWidth (this=0x55f916a9e670, w=<optimized out>) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/quick/items/qquickitem.cpp:7387
#52 0x00007facec66c79f in QQuickItem::qt_metacall (this=this@entry=0x55f916a9e670, _c=_c@entry=QMetaObject::WriteProperty, _id=7, _a=_a@entry=0x7ffd8473f840) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/build/src/quick/Quick_autogen/include/moc_qquickitem.cpp:923
#53 0x00007face4f33599 in QQuickControl::qt_metacall (this=0x55f916a9e670, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7ffd8473f840) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickcontrol_p.cpp:463
#54 0x00007face4f54c79 in QQuickPane::qt_metacall (this=0x55f916a9e670, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7ffd8473f840) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickpane_p.cpp:159
#55 0x00007face4f4c1f9 in QQuickPage::qt_metacall (this=0x55f916a9e670, _c=QMetaObject::WriteProperty, _id=<optimized out>, _a=0x7ffd8473f840) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickpage_p.cpp:200
#56 0x00007facec03a906 in QV4::QObjectWrapper::setProperty (engine=0x55f914919ee0, object=0x55f916a9e670, property=0x7facbc250590, value=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/qml/qml/qqmlpropertydata_p.h:264
#57 0x00007facec031b6e in QV4::QObjectWrapper::setQmlProperty (engine=0x55f914919ee0, qmlContext=<optimized out>, object=0x55f916a9e670, name=<optimized out>, flags=..., value=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/qml/jsruntime/qv4qobjectwrapper.cpp:577
#58 0x00007facec037f82 in QV4::QObjectWrapper::virtualPut (m=0x7facdc1bd6c8, id=..., value=..., receiver=0x7facdc1bd6c8) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/qml/jsruntime/qv4qobjectwrapper.cpp:976
#59 0x00007facec01206d in QV4::Object::put (receiver=0x7facdc1bd6c8, this=0x7facdc1bd6c8, name=<optimized out>, v=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/qml/jsruntime/qv4string_p.h:140
#60 QV4::Lookup::setterFallback (lookup=<optimized out>, engine=0x55f914919ee0, object=<optimized out>, value=...) at /usr/src/debug/qtdeclarative-everywhere-src-6.9.1/src/qml/jsruntime/qv4lookup.cpp:663
#61 0x00007faca14e2b4d in ??? ()
#62 0x00007ffd8473fc90 in ??? ()
#63 0x000055f917f9d960 in ??? ()
#64 0x00007ffd8473fc90 in ??? ()
#65 0x0000000000000000 in ??? ()
Comment 3 Nate Graham 2025-08-11 20:23:01 UTC
It's crashing deep in QtQuick layout code.

Unfortunately without any way to know which piece of QML code is causing the crash, this is probably not actionable. I suspect the best we can do is continue to fix QML binding loops and layout warnings and wait for later Qt versions, and hope it goes away on its own.