Bug 456037 - Plasma crashed when I tried drag-and-drop with a Firefox window grouped in the task manager
Summary: Plasma crashed when I tried drag-and-drop with a Firefox window grouped in th...
Status: RESOLVED DUPLICATE of bug 443706
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: 5.25.1
Platform: Arch Linux Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi, wayland
Depends on:
Blocks:
 
Reported: 2022-06-27 14:13 UTC by Patrick Silva
Modified: 2022-06-29 15:02 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Silva 2022-06-27 14:13:59 UTC
Application: plasmashell (5.25.1)

Qt Version: 5.15.5
Frameworks Version: 5.95.0
Operating System: Linux 5.18.7-arch1-1 x86_64
Windowing System: Wayland
Distribution: Arch Linux
DrKonqi: 5.25.1 [KCrashBackend]

-- Information about the crash:
I had 3 Firefox windows grouped in the task manager, I tried to drag a file from Dolphin and drop it on a Firefox window grouped in the task manager, then Plasma crashed.

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault

[KCrash Handler]
#4  std::__atomic_base<QThreadData*>::load(std::memory_order) const (__m=std::memory_order_acquire, this=<error reading variable: Cannot access memory at address 0x8>) at /usr/include/c++/12.1.0/atomic:578
#5  std::atomic<QThreadData*>::load(std::memory_order) const (__m=std::memory_order_acquire, this=<error reading variable: Cannot access memory at address 0x8>) at /usr/include/c++/12.1.0/atomic:579
#6  QAtomicOps<QThreadData*>::loadAcquire<QThreadData*>(std::atomic<QThreadData*> const&) (_q_value=<error reading variable: Cannot access memory at address 0x8>, _q_value=<optimized out>) at ../../include/QtCore/../../src/corelib/thread/qatomic_cxx11.h:251
#7  QBasicAtomicPointer<QThreadData>::loadAcquire() const (this=<error reading variable: Cannot access memory at address 0x8>, this=<optimized out>) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:255
#8  QBasicAtomicPointer<QThreadData>::operator QThreadData*() const (this=<error reading variable: Cannot access memory at address 0x8>, this=<optimized out>) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:251
#9  QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x0, event=0x7ffd2be9a7b0) at kernel/qcoreapplication.cpp:1060
#10 0x00007fb32bb467fb in QGuiApplicationPrivate::processDrag(QWindow*, QMimeData const*, QPoint const&, QFlags<Qt::DropAction>, QFlags<Qt::MouseButton>, QFlags<Qt::KeyboardModifier>) (w=0x0, dropData=0x55f0f799ef30, p=..., supportedActions=..., buttons=..., modifiers=...) at kernel/qguiapplication.cpp:3315
#11 0x00007fb32bb27fe8 in QWindowSystemInterface::handleDrag(QWindow*, QMimeData const*, QPoint const&, QFlags<Qt::DropAction>, QFlags<Qt::MouseButton>, QFlags<Qt::KeyboardModifier>) (window=0x0, dropData=0x55f0f799ef30, p=..., supportedActions=..., buttons=..., modifiers=...) at kernel/qwindowsysteminterface.cpp:930
#12 0x00007fb3295e52b4 in  () at /usr/lib/libQt5WaylandClient.so.5
#13 0x00007fb32c954536 in  () at /usr/lib/libffi.so.8
#14 0x00007fb32c951037 in  () at /usr/lib/libffi.so.8
#15 0x00007fb32d9525e2 in  () at /usr/lib/libwayland-client.so.0
#16 0x00007fb32d952d73 in  () at /usr/lib/libwayland-client.so.0
#17 0x00007fb32d952f8c in wl_display_dispatch_queue_pending () at /usr/lib/libwayland-client.so.0
#18 0x00007fb3295c3c56 in QtWaylandClient::QWaylandDisplay::flushRequests() () at /usr/lib/libQt5WaylandClient.so.5
#19 0x00007fb32b6bd658 in doActivate<false>(QObject*, int, void**) (sender=0x55f0f3468e10, signal_index=4, argv=0x7ffd2be9add0) at kernel/qobject.cpp:3898
#20 0x00007fb32b6d7687 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55f0f3468e10, flags=...) at kernel/qeventdispatcher_glib.cpp:430
#21 0x00007fb32b6856ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ffd2be9aef0, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#22 0x00007fb32b6901e9 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#23 0x000055f0f1e320e5 in  ()
#24 0x00007fb32ac29290 in  () at /usr/lib/libc.so.6
#25 0x00007fb32ac2934a in __libc_start_main () at /usr/lib/libc.so.6
#26 0x000055f0f1e324c5 in  ()
[Inferior 1 (process 13872) detached]

Reported using DrKonqi
Comment 1 Patrick Silva 2022-06-27 15:27:20 UTC
Possibly the backtrace below is better:


Thread 4 (Thread 0x7f2f52496640 (LWP 674)):
#0  0x00007f2f57d05c3f in __GI___poll (fds=0x7f2f480025e0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f2f56ec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f2f480025e0, timeout=<optimized out>, context=0x7f2f48000c30) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=context@entry=0x7f2f48000c30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f2f56e6d392 in g_main_context_iteration (context=0x7f2f48000c30, may_block=1) at ../glib/glib/gmain.c:4276
#4  0x00007f2f586d766f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f2f48000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f2f586856ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f2f52495a50, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#6  0x00007f2f584e729f in QThread::exec() (this=this@entry=0x7f2f59fff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f2f59fa375a in QDBusConnectionManager::run() (this=0x7f2f59fff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at /usr/src/debug/qtbase/src/dbus/qdbusconnection.cpp:179
#8  0x00007f2f584e438a in QThreadPrivate::start(void*) (arg=0x7f2f59fff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:331
#9  0x00007f2f57c8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#10 0x00007f2f57d11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 3 (Thread 0x7f2ed75e3640 (LWP 1645)):
#0  0x00007f2f57d05c3f in __GI___poll (fds=0x7f2ef92747e0, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f2f56ec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=2, fds=0x7f2ef92747e0, timeout=<optimized out>, context=0x56095a0549a0) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=0x56095a0549a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f2f56e6f1cf in g_main_loop_run (loop=0x560959c2a1b0) at ../glib/glib/gmain.c:4411
#4  0x00007f2f19b5e95c in gdbus_shared_thread_func (user_data=0x56095a054970) at ../glib/gio/gdbusprivate.c:282
#5  0x00007f2f56e9f405 in g_thread_proxy (data=0x56095a0faaa0) at ../glib/glib/gthread.c:827
#6  0x00007f2f57c8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#7  0x00007f2f57d11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 2 (Thread 0x7f2f1bbc0640 (LWP 1644)):
#0  0x00007f2f57d05c3f in __GI___poll (fds=0x56095a080840, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f2f56ec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x56095a080840, timeout=<optimized out>, context=0x56095a080720) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=context@entry=0x56095a080720, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f2f56e6d392 in g_main_context_iteration (context=0x56095a080720, may_block=may_block@entry=1) at ../glib/glib/gmain.c:4276
#4  0x00007f2f56e6d3e2 in glib_worker_main (data=<optimized out>) at ../glib/glib/gmain.c:6178
#5  0x00007f2f56e9f405 in g_thread_proxy (data=0x56095a1a9b60) at ../glib/glib/gthread.c:827
#6  0x00007f2f57c8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#7  0x00007f2f57d11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 1 (Thread 0x7f2f53c21340 (LWP 671)):
#0  __GI___pthread_sigmask (how=1, newmask=<optimized out>, oldmask=0x0) at pthread_sigmask.c:43
#1  0x00007f2f57c3eadd in __GI___sigprocmask (how=<optimized out>, set=<optimized out>, oset=<optimized out>) at ../sysdeps/unix/sysv/linux/sigprocmask.c:25
#2  0x00007f2f5a8131cb in KCrash::setCrashHandler(void (*)(int)) (handler=handler@entry=0x0) at /usr/src/debug/kcrash-5.95.0/src/kcrash.cpp:415
#3  0x00007f2f5a815837 in KCrash::defaultCrashHandler(int) (sig=11) at /usr/src/debug/kcrash-5.95.0/src/kcrash.cpp:632
#4  0x00007f2f57c3e8e0 in <signal handler called> () at /usr/lib/libc.so.6
#5  0x00007f2f5aa95383 in wl_map_insert_at (data=<optimized out>, i=224, flags=1, map=<optimized out>) at ../wayland-1.20.0/src/wayland-util.c:249
#6  proxy_destroy (proxy=proxy@entry=0x5609576f5a70) at ../wayland-1.20.0/src/wayland-client.c:503
#7  0x00007f2f5aa96d3b in wl_proxy_destroy_caller_locks (proxy=0x5609576f5a70) at ../wayland-1.20.0/src/wayland-client.c:523
#8  wl_proxy_marshal_array_flags (proxy=proxy@entry=0x5609576f5a70, opcode=opcode@entry=0, interface=interface@entry=0x0, version=version@entry=1, flags=flags@entry=1, args=args@entry=0x7ffc6581ada0) at ../wayland-1.20.0/src/wayland-client.c:861
#9  0x00007f2f5aa97830 in wl_proxy_marshal_flags (proxy=0x5609576f5a70, opcode=0, interface=0x0, version=1, flags=1) at ../wayland-1.20.0/src/wayland-client.c:784
#10 0x00007f2f5ab43700 in wl_buffer_destroy (wl_buffer=0x5609576f5a70) at /usr/include/wayland-client-protocol.h:2017
#11 KWayland::Client::WaylandPointer<wl_buffer, wl_buffer_destroy>::release (this=0x560958279a98) at /usr/src/debug/kwayland-5.95.0/src/client/wayland_pointer_p.h:44
#12 KWayland::Client::Buffer::Private::~Private() (this=0x560958279a90, this=<optimized out>) at /usr/src/debug/kwayland-5.95.0/src/client/buffer.cpp:38
#13 QScopedPointerDeleter<KWayland::Client::Buffer::Private>::cleanup(KWayland::Client::Buffer::Private*) (pointer=0x560958279a90) at /usr/include/qt/QtCore/qscopedpointer.h:60
#14 QScopedPointerDeleter<KWayland::Client::Buffer::Private>::cleanup(KWayland::Client::Buffer::Private*) (pointer=0x560958279a90) at /usr/include/qt/QtCore/qscopedpointer.h:52
#15 QScopedPointer<KWayland::Client::Buffer::Private, QScopedPointerDeleter<KWayland::Client::Buffer::Private> >::~QScopedPointer() (this=<optimized out>, this=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:107
#16 KWayland::Client::Buffer::~Buffer() (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kwayland-5.95.0/src/client/buffer.cpp:58
#17 0x00007f2f5ab7b1f7 in QtSharedPointer::CustomDeleter<KWayland::Client::Buffer, QtSharedPointer::NormalDeleter>::execute() (this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:187
#18 QtSharedPointer::ExternalRefCountWithCustomDeleter<KWayland::Client::Buffer, QtSharedPointer::NormalDeleter>::deleter(QtSharedPointer::ExternalRefCountData*) (self=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:205
#19 0x00007f2f5ab81b57 in QtSharedPointer::ExternalRefCountData::destroy() (this=0x5609576678e0) at /usr/include/qt/QtCore/qsharedpointer_impl.h:149
#20 QSharedPointer<KWayland::Client::Buffer>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x5609576678e0) at /usr/include/qt/QtCore/qsharedpointer_impl.h:458
#21 QSharedPointer<KWayland::Client::Buffer>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x5609576678e0, dd=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:454
#22 QSharedPointer<KWayland::Client::Buffer>::deref() (this=0x5609576faa80, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:453
#23 QSharedPointer<KWayland::Client::Buffer>::~QSharedPointer() (this=0x5609576faa80, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:310
#24 QList<QSharedPointer<KWayland::Client::Buffer> >::node_destruct(QList<QSharedPointer<KWayland::Client::Buffer> >::Node*, QList<QSharedPointer<KWayland::Client::Buffer> >::Node*) (this=<optimized out>, to=0x5609576f8b98, from=0x5609576f8b98) at /usr/include/qt/QtCore/qlist.h:524
#25 QList<QSharedPointer<KWayland::Client::Buffer> >::dealloc(QListData::Data*) [clone .isra.0] (data=0x5609576f8b80, this=<optimized out>) at /usr/include/qt/QtCore/qlist.h:921
#26 0x00007f2f5ab761ad in QList<QSharedPointer<KWayland::Client::Buffer> >::~QList() (this=<synthetic pointer>, this=<optimized out>) at /usr/include/qt/QtCore/qlist.h:871
#27 QList<QSharedPointer<KWayland::Client::Buffer> >::~QList() (this=<synthetic pointer>, this=<optimized out>) at /usr/include/qt/QtCore/qlist.h:871
#28 QList<QSharedPointer<KWayland::Client::Buffer> >::operator=(QList<QSharedPointer<KWayland::Client::Buffer> >&&) (other=<optimized out>, this=<optimized out>) at /usr/include/qt/QtCore/qlist.h:167
#29 QList<QSharedPointer<KWayland::Client::Buffer> >::clear() (this=<optimized out>) at /usr/include/qt/QtCore/qlist.h:930
#30 KWayland::Client::ShmPool::release() (this=this@entry=0x5609573fd3e0) at /usr/src/debug/kwayland-5.95.0/src/client/shm_pool.cpp:65
#31 0x00007f2f5ab7622f in KWayland::Client::ShmPool::~ShmPool() (this=0x5609573fd3e0, this=<optimized out>) at /usr/src/debug/kwayland-5.95.0/src/client/shm_pool.cpp:60
#32 0x00007f2f5ab762fe in KWayland::Client::ShmPool::~ShmPool() (this=0x5609573fd3e0, this=<optimized out>) at /usr/src/debug/kwayland-5.95.0/src/client/shm_pool.cpp:61
#33 0x00007f2f524c0341 in QScopedPointerDeleter<KWayland::Client::ShmPool>::cleanup(KWayland::Client::ShmPool*) (pointer=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:60
#34 QScopedPointer<KWayland::Client::ShmPool, QScopedPointerDeleter<KWayland::Client::ShmPool> >::~QScopedPointer() (this=0x560957715d30, this=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:107
#35 WindowShadowTile::~WindowShadowTile() (this=0x560957715cf0, this=<optimized out>) at /usr/src/debug/kwayland-integration-5.25.1/src/windowsystem/windowshadow.cpp:18
#36 WindowShadowTile::~WindowShadowTile() (this=0x560957715cf0, this=<optimized out>) at /usr/src/debug/kwayland-integration-5.25.1/src/windowsystem/windowshadow.cpp:18
#37 0x00007f2f5a631174 in QtSharedPointer::ExternalRefCountData::destroy() (this=0x560957715f90) at /usr/include/qt/QtCore/qsharedpointer_impl.h:149
#38 QSharedPointer<KWindowShadowTile>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x560957715f90) at /usr/include/qt/QtCore/qsharedpointer_impl.h:458
#39 QSharedPointer<KWindowShadowTile>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x560957715f90) at /usr/include/qt/QtCore/qsharedpointer_impl.h:454
#40 QSharedPointer<KWindowShadowTile>::deref() (this=0x560959b9f228) at /usr/include/qt/QtCore/qsharedpointer_impl.h:453
#41 QSharedPointer<KWindowShadowTile>::~QSharedPointer() (this=0x560959b9f228, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:310
#42 KWindowShadowPrivate::~KWindowShadowPrivate() (this=0x560959b9f1a0, this=<optimized out>) at /usr/src/debug/kwindowsystem-5.95.0/src/kwindowshadow.cpp:281
#43 0x00007f2f524c0660 in non-virtual thunk to WindowShadow::~WindowShadow() () at /usr/src/debug/kwayland-integration-5.25.1/src/windowsystem/windowshadow.h:29
#44 0x00007f2f5a6310fb in QScopedPointerDeleter<KWindowShadowPrivate>::cleanup(KWindowShadowPrivate*) (pointer=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:52
#45 QScopedPointer<KWindowShadowPrivate, QScopedPointerDeleter<KWindowShadowPrivate> >::~QScopedPointer() (this=0x5609550f4500, this=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:107
#46 KWindowShadow::~KWindowShadow() (this=0x5609550f44f0, this=<optimized out>) at /usr/src/debug/kwindowsystem-5.95.0/src/kwindowshadow.cpp:66
#47 0x00007f2f5a63111e in KWindowShadow::~KWindowShadow() (this=0x5609550f44f0, this=<optimized out>) at /usr/src/debug/kwindowsystem-5.95.0/src/kwindowshadow.cpp:66
#48 0x00007f2f586b3825 in QObjectPrivate::deleteChildren() (this=this@entry=0x5609596b4200) at kernel/qobject.cpp:2104
#49 0x00007f2f586b3fb9 in QObject::~QObject() (this=0x7f2f5ac610a0 <_ZZN12_GLOBAL__N_130Q_QGS_privateDialogShadowsSelf13innerFunctionEvE6holder.lto_priv.0>, this=<optimized out>) at kernel/qobject.cpp:1082
#50 0x00007f2f5ac3543d in (anonymous namespace)::Q_QGS_privateDialogShadowsSelf::innerFunction()::Holder::~Holder() () at /usr/src/debug/plasma-framework-5.95.0/src/plasmaquick/dialogshadows.cpp:40
#51 0x00007f2f57c40ef5 in __run_exit_handlers (status=0, listp=0x7f2f57dfd778 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:113
#52 0x00007f2f57c41070 in __GI_exit (status=<optimized out>) at exit.c:143
#53 0x00007f2f57c29297 in __libc_start_call_main (main=main@entry=0x5609530c1240 <main(int, char**)>, argc=argc@entry=2, argv=argv@entry=0x7ffc6581b2c8) at ../sysdeps/nptl/libc_start_call_main.h:74
#54 0x00007f2f57c2934a in __libc_start_main_impl (main=0x5609530c1240 <main(int, char**)>, argc=2, argv=0x7ffc6581b2c8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc6581b2b8) at ../csu/libc-start.c:389
#55 0x00005609530c44c5 in _start () at ../sysdeps/x86_64/start.S:115
Comment 2 Nate Graham 2022-06-27 18:00:35 UTC
Backtrace is fully of Waylandy things; cannot reproduce on X11.
Comment 3 Nate Graham 2022-06-28 16:14:39 UTC
Cannot reproduce on Wayland either.
Comment 4 David Edmundson 2022-06-29 14:45:57 UTC

*** This bug has been marked as a duplicate of bug 456040 ***
Comment 5 Nate Graham 2022-06-29 15:02:44 UTC

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