| Summary: | PlasmaShell Wayland crashes when trying to drag things | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | yurapostates |
| Component: | generic-crash | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | akselmo, med.medin.2014, nate |
| Priority: | NOR | Keywords: | drkonqi, wayland-only |
| Version First Reported In: | 6.0.4 | ||
| Target Milestone: | 1.0 | ||
| Platform: | Arch Linux | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | 6.1 | |
| Sentry Crash Report: | |||
| Attachments: | New crash information added by DrKonqi | ||
|
Description
yurapostates
2024-05-23 11:36:47 UTC
Created attachment 169739 [details]
New crash information added by DrKonqi
DrKonqi auto-attaching complete backtrace.
Thread 1 (Thread 0x73579fda1a00 (LWP 1803)): [KCrash Handler] #5 std::__atomic_base<QMutexPrivate*>::load (this=0x720074002d00c6, __m=std::memory_order_relaxed) at /usr/include/c++/14.1.1/bits/atomic_base.h:831 #6 std::atomic<QMutexPrivate*>::load (this=0x720074002d00c6, __m=std::memory_order_relaxed) at /usr/include/c++/14.1.1/atomic:582 #7 QAtomicOps<QMutexPrivate*>::loadRelaxed<QMutexPrivate*> (_q_value=<error reading variable: Cannot access memory at address 0x720074002d00c6>) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qatomic_cxx11.h:202 #8 QBasicAtomicPointer<QMutexPrivate>::loadRelaxed (this=0x720074002d00c6) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qbasicatomic.h:170 #9 QBasicMutex::fastTryLock (this=0x720074002d00c6) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qmutex.h:77 #10 QBasicMutex::lock (this=0x720074002d00c6) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qmutex.h:40 #11 std::unique_lock<QMutex>::lock (this=<synthetic pointer>) at /usr/include/c++/14.1.1/bits/unique_lock.h:147 #12 std::unique_lock<QMutex>::unique_lock (this=<synthetic pointer>, __m=...) at /usr/include/c++/14.1.1/bits/unique_lock.h:73 #13 (anonymous namespace)::qt_unique_lock<QMutex> (mutex=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qlocking_p.h:66 #14 QCoreApplicationPrivate::lockThreadPostEventList (object=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1623 #15 0x00007357a4b940b9 in QObject::deleteLater (this=0x57076e2532e0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:2450 #16 0x00007357a571b26e in QBasicDrag::eventFilter (this=0x570765baaed0, o=<optimized out>, e=0x7ffc4499cfb0) at /usr/src/debug/qt6-base/qtbase/src/gui/kernel/qsimpledrag.cpp:109 #17 0x00007357a6bc560b in QtWaylandClient::QWaylandDrag::finishDrag (this=0x570765baaed0) at /usr/src/debug/qt6-wayland/qtwayland-everywhere-src-6.7.0/src/client/qwaylanddnd.cpp:96 #18 0x00007357a6bc5aaa in operator() (__closure=0x57076eb25560) at /usr/src/debug/qt6-wayland/qtwayland-everywhere-src-6.7.0/src/client/qwaylanddatadevice.cpp:136 #19 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, QtWaylandClient::QWaylandDataDevice::startDrag(QMimeData*, Qt::DropActions, QtWaylandClient::QWaylandWindow*)::<lambda()> >::call (arg=<optimized out>, f=...) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137 #20 QtPrivate::FunctorCallable<QtWaylandClient::QWaylandDataDevice::startDrag(QMimeData*, Qt::DropActions, QtWaylandClient::QWaylandWindow*)::<lambda()> >::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345 #21 QtPrivate::QCallableObject<QtWaylandClient::QWaylandDataDevice::startDrag(QMimeData*, Qt::DropActions, QtWaylandClient::QWaylandWindow*)::<lambda()>, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x57076eb25550, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555 #22 0x00007357a4ba1e3e in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=0x570765ba86a0, a=0x7ffc4499d0c8, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:469 #23 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4078 #24 0x00007357a6334596 in ffi_call_unix64 () at ../src/x86/unix64.S:104 #25 0x00007357a633100e in ffi_call_int (cif=cif@entry=0x7ffc4499d2d0, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673 #26 0x00007357a6333bd3 in ffi_call (cif=cif@entry=0x7ffc4499d2d0, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7ffc4499d3a0) at ../src/x86/ffi64.c:710 #27 0x00007357a7659645 in wl_closure_invoke (closure=closure@entry=0x73578c040710, target=<optimized out>, target@entry=0x570767eceaf0, opcode=opcode@entry=4, data=<optimized out>, flags=1) at ../wayland-1.22.0/src/connection.c:1025 #28 0x00007357a7659e73 in dispatch_event (display=display@entry=0x570765b9bc30, queue=0x570765b9bd20) at ../wayland-1.22.0/src/wayland-client.c:1631 #29 0x00007357a765a13c in dispatch_queue (queue=0x570765b9bd20, display=0x570765b9bc30) at ../wayland-1.22.0/src/wayland-client.c:1777 #30 wl_display_dispatch_queue_pending (display=0x570765b9bc30, queue=0x570765b9bd20) at ../wayland-1.22.0/src/wayland-client.c:2019 #31 0x00007357a6b79b5e in QtWaylandClient::EventThread::readAndDispatchEvents (this=0x570765bb0730) at /usr/src/debug/qt6-wayland/qtwayland-everywhere-src-6.7.0/src/client/qwaylanddisplay.cpp:227 #32 0x00007357a4b8c8a6 in QObject::event (this=0x570765b99200, e=0x73579000b6a0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1446 #33 0x00007357a6cfc4dc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x570765b99200, e=0x73579000b6a0) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3287 #34 0x00007357a4b45678 in QCoreApplication::notifyInternal2 (receiver=0x570765b99200, event=event@entry=0x73579000b6a0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1142 #35 0x00007357a4b45a3b in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x73579000b6a0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1583 #36 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x570765b66ba0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1940 #37 0x00007357a4da45dc in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1797 #38 postEventSourceDispatch (s=0x570765b97ba0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:244 #39 0x00007357a3948a89 in g_main_dispatch (context=0x735798000f00) at ../glib/glib/gmain.c:3344 #40 0x00007357a39aa9b7 in g_main_context_dispatch_unlocked (context=0x735798000f00) at ../glib/glib/gmain.c:4152 #41 g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x735798000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4217 #42 0x00007357a3947f95 in g_main_context_iteration (context=0x735798000f00, may_block=1) at ../glib/glib/gmain.c:4282 #43 0x00007357a4da28ad in QEventDispatcherGlib::processEvents (this=0x570765bad120, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:394 #44 0x00007357a4b4f94e in QEventLoop::processEvents (this=0x57076e54fb10, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:100 #45 QEventLoop::exec (this=this@entry=0x57076e54fb10, flags=..., flags@entry=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:182 #46 0x00007357a571713b in QBasicDrag::drag (this=0x570765baaed0, o=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/global/qflags.h:74 #47 0x00007357a571833d in QDragManager::drag (this=0x570767dc2020, o=o@entry=0x57076e2532e0) at /usr/src/debug/qt6-base/qtbase/src/gui/kernel/qdnd.cpp:81 #48 0x00007357a5718540 in QDrag::exec (this=<optimized out>, supportedActions=..., defaultDropAction=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/gui/kernel/qdrag.cpp:248 #49 QDrag::exec (this=this@entry=0x57076e2532e0, supportedActions=..., supportedActions@entry=...) at /usr/src/debug/qt6-base/qtbase/src/gui/kernel/qdrag.cpp:203 #50 0x00007357a6808b23 in QQuickDragAttachedPrivate::startDrag (this=0x57076eb8c6c0, supportedActions=...) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/quick/items/qquickdrag.cpp:776 #51 0x00007357a6809a73 in QQuickDragAttached::qt_metacall (this=0x570766069ab0, _c=QMetaObject::WriteProperty, _id=0, _a=0x7ffc4499db80) at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickdrag_p.cpp:898 #52 0x00007357a603a558 in QQmlPropertyData::doMetacall<(QMetaObject::Call)2> (this=<optimized out>, argv=0x7ffc4499db80, idx=<optimized out>, object=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/qml/qqmlpropertydata_p.h:360 #53 QQmlPropertyData::doMetacall<(QMetaObject::Call)2> (this=<optimized out>, argv=0x7ffc4499db80, idx=<optimized out>, object=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/qml/qqmlpropertydata_p.h:355 #54 QQmlPropertyData::writeProperty (this=<optimized out>, target=<optimized out>, value=<optimized out>, flags=...) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/qml/qqmlpropertydata_p.h:378 #55 0x00007357a60e32f9 in tryConvertAndAssign (isUrl=<optimized out>, variantMetaType=..., propertyMetaType=..., flags=..., value=<optimized out>, property=<optimized out>, object=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/qml/qqmlproperty.cpp:1393 #56 QQmlPropertyPrivate::write (object=0x570766069ab0, property=..., value=..., context=..., flags=...) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/qml/qqmlproperty.cpp:1532 #57 0x00007357a5fb6e5e in QV4::QObjectWrapper::setProperty (engine=engine@entry=0x5707660d1700, object=object@entry=0x570766069ab0, property=0x7357345d5f30, value=...) at /usr/include/qt6/QtCore/qflags.h:73 #58 0x00007357a5fb752e in QV4::QObjectWrapper::setQmlProperty (engine=0x5707660d1700, qmlContext=<optimized out>, object=0x570766069ab0, name=<optimized out>, flags=..., value=...) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4qobjectwrapper.cpp:567 #59 0x00007357a6147800 in QV4::QQmlTypeWrapper::virtualPut (m=<optimized out>, id=..., value=..., receiver=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/qml/qqmltypewrapper.cpp:327 #60 0x00007357a5f8e163 in QV4::Lookup::setterFallback (l=0x5707686ac300, engine=0x5707660d1700, object=<optimized out>, value=...) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4lookup.cpp:591 #61 0x00007357a6008f99 in QV4::Moth::VME::interpret (frame=0x7ffc4499e540, engine=0x5707660d1700, code=0x73577b4be7e2 "\016\002") at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4vme_moth.cpp:321 #62 0x00007357a600c1c4 in QV4::Moth::VME::exec (frame=<optimized out>, engine=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4vme_moth.cpp:487 #63 0x00007357a5f7e3d8 in qfoDoCall (fo=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4functionobject.cpp:526 #64 0x00007357a5f220e3 in QV4::FunctionObject::call (argc=<optimized out>, argv=<optimized out>, thisObject=0x73576fbbf4e8, this=0x735780be0480) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4functionobject_p.h:171 #65 QV4::FunctionObject::call (data=<optimized out>, this=0x735780be0480) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsruntime/qv4jscall_p.h:108 #66 QJSValue::call (this=this@entry=0x73579000e718, args=...) at /usr/src/debug/qt6-declarative/qtdeclarative-everywhere-src-6.7.0/src/qml/jsapi/qjsvalue.cpp:713 #67 0x00007357a65b60be in QQuickItemGrabResult::event (this=0x57076ba57ba0, e=<optimized out>) at /usr/include/qt6/QtCore/qlist.h:113 #68 0x00007357a6cfc4dc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x57076ba57ba0, e=0x7355245c7150) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3287 #69 0x00007357a4b45678 in QCoreApplication::notifyInternal2 (receiver=0x57076ba57ba0, event=event@entry=0x7355245c7150) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1142 #70 0x00007357a4b45a3b in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x7355245c7150) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1583 #71 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x570765b66ba0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1940 #72 0x00007357a4da45dc in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1797 #73 postEventSourceDispatch (s=0x570765b97ba0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:244 #74 0x00007357a3948a89 in g_main_dispatch (context=0x735798000f00) at ../glib/glib/gmain.c:3344 #75 0x00007357a39aa9b7 in g_main_context_dispatch_unlocked (context=0x735798000f00) at ../glib/glib/gmain.c:4152 #76 g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x735798000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4217 #77 0x00007357a3947f95 in g_main_context_iteration (context=0x735798000f00, may_block=1) at ../glib/glib/gmain.c:4282 #78 0x00007357a4da28ad in QEventDispatcherGlib::processEvents (this=0x570765bad120, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:394 #79 0x00007357a4b4f94e in QEventLoop::processEvents (this=0x7ffc4499ead0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:100 #80 QEventLoop::exec (this=0x7ffc4499ead0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:182 #81 0x00007357a4b49c9d in QCoreApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/corelib/global/qflags.h:74 #82 0x00007357a6cf837a in QApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:2555 #83 0x0000570754bf02a3 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace/plasma-workspace-6.0.4/shell/main.cpp:214 *** Bug 487427 has been marked as a duplicate of this bug. *** We fixed a drag-and-drop thing with Spectacle in Bug 486665, which only landed in Plasma 6.1. The backtrace looks different enough that I'm not comfortable marking this as a duplicate. Still, it would be good if affected folks could try to reproduce the issue in Plasma 6.1 once it's released, or else with current git master right now. Where is the drag and drop started? Spectacle window? Or the notification popup? (In reply to Akseli Lahtinen from comment #5) > Where is the drag and drop started? Spectacle window? Or the notification > popup? From the image of the notification popup, but I can't reproduce it every time. Ok, that makes it the Qt drag-and-drop crash, which is fixed in Plasma 6.1. |