Bug 514249

Summary: Plasmadesktop crash in QV4::MarkStack::drain after waking from suspension
Product: [Plasma] plasmashell Reporter: kibbled <fattdadda8you>
Component: generalAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: crash CC: kde, kdedev
Priority: NOR Keywords: drkonqi, qt-crash
Version First Reported In: 6.5.4   
Target Milestone: 1.0   
Platform: CachyOS   
OS: Linux   
URL: https://qt-project.atlassian.net/browse/QTBUG-134687
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report: https://crash-reports.kde.org/organizations/kde/issues/1719/events/3a34342cfcc94a2c94d36b01828c7671/
Attachments: New crash information added by DrKonqi

Description kibbled 2026-01-06 22:46:20 UTC
Application: plasmashell (6.5.4)

ApplicationNotResponding [ANR]: false
Qt Version: 6.10.1
Frameworks Version: 6.21.0
Operating System: Linux 6.18.3-arch1-1 x86_64
Windowing System: Wayland
Distribution: CachyOS
DrKonqi: 6.5.4 [CoredumpBackend]

-- Information about the crash:
After waking my computer from sleep mode, plasma will sometimes crash or freeze (more rare). I've also sometimes had to force restart plasma myself at random times during use (due to it hanging, usually while interacting with the taskbar), but it has been getting a lot rarer after the last updates.

The crash can be reproduced sometimes.

-- Backtrace (Reduced):
#5  0x00007f222cc48526 in QV4::MarkStack::drain (this=0x55beb24f4280) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:1076
#7  0x00007f222cc48f9a in QV4::GCStateMachine::transition (this=0x55beaf3e46c0) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:1567
#8  0x00007f222cc4940d in QV4::GCStateMachine::step (this=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm_p.h:89
#9  QV4::MemoryManager::tryForceGCCompletion (this=0x55beaf2c3010) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:1261
#10 0x00007f222cb609a0 in QV4::MemoryManager::allocate (this=0x55beaf2c3010, allocator=0x55beaf2c3020, size=64) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm_p.h:398
#11 QV4::MemoryManager::allocString (this=0x55beaf2c3010, unmanagedSize=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:996
#12 QV4::MemoryManager::allocWithStringData<QV4::String, QString const&> (this=0x55beaf2c3010, unmanagedSize=<optimized out>, arg1=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm_p.h:286
#13 QV4::ExecutionEngine::newString (this=<optimized out>, s=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4engine.cpp:949
#14 0x00007f222cbae763 in QV4::JsonObject::method_stringify (b=<optimized out>, argv=0x7f220003bc88, argc=1) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4jsonobject.cpp:956
#15 0x00007f222cc0668f in QV4::FunctionObject::call (this=0x7ffff98318d8, thisObject=0x7f220003bcd0, argv=0x7f220003bc88, argc=1) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:188
#16 QV4::Runtime::CallPropertyLookup::call (engine=0x55beaf0a9370, base=..., index=<optimized out>, argv=0x7f220003bc88, argc=1) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1563
[...]
#5  0x00007f222cc48526 in QV4::MarkStack::drain (this=0x55beb24f4280) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:1076
#7  0x00007f222cc48f9a in QV4::GCStateMachine::transition (this=0x55beaf3e46c0) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:1567
#8  0x00007f222cc4940d in QV4::GCStateMachine::step (this=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm_p.h:89
#9  QV4::MemoryManager::tryForceGCCompletion (this=0x55beaf2c3010) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:1261
#10 0x00007f222cb609a0 in QV4::MemoryManager::allocate (this=0x55beaf2c3010, allocator=0x55beaf2c3020, size=64) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm_p.h:398
#11 QV4::MemoryManager::allocString (this=0x55beaf2c3010, unmanagedSize=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm.cpp:996
#12 QV4::MemoryManager::allocWithStringData<QV4::String, QString const&> (this=0x55beaf2c3010, unmanagedSize=<optimized out>, arg1=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/memory/qv4mm_p.h:286
#13 QV4::ExecutionEngine::newString (this=<optimized out>, s=...) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4engine.cpp:949
#14 0x00007f222cbae763 in QV4::JsonObject::method_stringify (b=<optimized out>, argv=0x7f220003bc88, argc=1) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4jsonobject.cpp:956
#15 0x00007f222cc0668f in QV4::FunctionObject::call (this=0x7ffff98318d8, thisObject=0x7f220003bcd0, argv=0x7f220003bc88, argc=1) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4functionobject_p.h:188
#16 QV4::Runtime::CallPropertyLookup::call (engine=0x55beaf0a9370, base=..., index=<optimized out>, argv=0x7f220003bc88, argc=1) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4runtime.cpp:1563
[...]


Reported using DrKonqi
This report was filed against 'kde' because the product 'plasmashell' could not be located in Bugzilla. Add it to drkonqi's mappings file!
Comment 1 kibbled 2026-01-06 22:46:22 UTC
Created attachment 188280 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 TraceyC 2026-01-07 22:26:46 UTC
Thanks for the bug report.

The backtrace is entirely in qtdeclarative. It looks like the Qt folks have a couple of open bug reports for this.
https://qt-project.atlassian.net/browse/QTBUG-134749
https://qt-project.atlassian.net/browse/QTBUG-134687

Please follow this report for updates:
https://qt-project.atlassian.net/browse/QTBUG-134687