Bug 456040

Summary: Plasma crashed when I tried to drag Konsoles grouped in the task manager and drop them on another virtual desktop
Product: [Plasma] plasmashell Reporter: Patrick Silva <bugseforuns>
Component: generic-crashAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: kde, nate
Priority: NOR Keywords: wayland
Version: 5.25.1   
Target Milestone: 1.0   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Patrick Silva 2022-06-27 15:15:45 UTC
SUMMARY
I had some Konsoles grouped in the task manager, I tried to drag and drop them to another virtual desktop shown by the Pager widget placed in Plasma panel, then Plasma crashed.

Operating System: Arch Linux
KDE Plasma Version: 5.25.1
KDE Frameworks Version: 5.95.0
Qt Version: 5.15.5
Graphics Platform: Wayland


Thread 5 (Thread 0x7f49e9451640 (LWP 14874)):
#0  0x00007f49eed05c3f in __GI___poll (fds=0x7f49e00025e0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f49edec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=3, fds=0x7f49e00025e0, timeout=<optimized out>, context=0x7f49e0000c30) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=context@entry=0x7f49e0000c30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f49ede6d392 in g_main_context_iteration (context=0x7f49e0000c30, may_block=1) at ../glib/glib/gmain.c:4276
#4  0x00007f49ef6d764c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f49e0000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#5  0x00007f49ef6856ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f49e9450a50, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#6  0x00007f49ef4e729f in QThread::exec() (this=this@entry=0x7f49f0fff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f49f0fa375a in QDBusConnectionManager::run() (this=0x7f49f0fff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at /usr/src/debug/qtbase/src/dbus/qdbusconnection.cpp:179
#8  0x00007f49ef4e438a in QThreadPrivate::start(void*) (arg=0x7f49f0fff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:331
#9  0x00007f49eec8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#10 0x00007f49eed11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 4 (Thread 0x7f49dbfff640 (LWP 14910)):
#0  0x00007f49eed05c3f in __GI___poll (fds=0x7f49d40029e0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f49edec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f49d40029e0, timeout=<optimized out>, context=0x7f49d4000c30) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=context@entry=0x7f49d4000c30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f49ede6d392 in g_main_context_iteration (context=0x7f49d4000c30, may_block=1) at ../glib/glib/gmain.c:4276
#4  0x00007f49ef6d764c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f49d4000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#5  0x00007f49ef6856ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f49dbffea60, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#6  0x00007f49ef4e729f in QThread::exec() (this=this@entry=0x55d2543878e0) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f49f0cbf780 in QQmlThreadPrivate::run() (this=0x55d2543878e0) at /usr/src/debug/qtdeclarative/src/qml/qml/ftw/qqmlthread.cpp:155
#8  0x00007f49ef4e438a in QThreadPrivate::start(void*) (arg=0x55d2543878e0) at thread/qthread_unix.cpp:331
#9  0x00007f49eec8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#10 0x00007f49eed11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 3 (Thread 0x7f499ffff640 (LWP 15371)):
#0  0x00007f49eed05c3f in __GI___poll (fds=0x7f4998004a40, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f49edec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f4998004a40, timeout=<optimized out>, context=0x7f4998000c30) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=context@entry=0x7f4998000c30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f49ede6d392 in g_main_context_iteration (context=0x7f4998000c30, may_block=1) at ../glib/glib/gmain.c:4276
#4  0x00007f49ef6d764c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f4998000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#5  0x00007f49ef6856ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f499fffea60, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#6  0x00007f49ef4e729f in QThread::exec() (this=this@entry=0x55d255cc1870) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f49b075712e in QQuickXmlQueryEngine::run() (this=0x55d255cc1870) at /usr/src/debug/qtxmlpatterns/src/imports/xmllistmodel/qqmlxmllistmodel.cpp:325
#8  0x00007f49ef4e438a in QThreadPrivate::start(void*) (arg=0x55d255cc1870) at thread/qthread_unix.cpp:331
#9  0x00007f49eec8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#10 0x00007f49eed11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 2 (Thread 0x7f49b31ff640 (LWP 15334)):
#0  0x00007f49eed05c3f in __GI___poll (fds=0x7f49ac006630, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f49edec5f68 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f49ac006630, timeout=<optimized out>, context=0x7f49ac000c30) at ../glib/glib/gmain.c:4516
#2  g_main_context_iterate.constprop.0 (context=context@entry=0x7f49ac000c30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4206
#3  0x00007f49ede6d392 in g_main_context_iteration (context=0x7f49ac000c30, may_block=1) at ../glib/glib/gmain.c:4276
#4  0x00007f49ef6d764c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f49ac000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#5  0x00007f49ef6856ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f49b31fea40, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#6  0x00007f49ef4e729f in QThread::exec() (this=this@entry=0x55d2558cdfa0) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f49f1154c9f in QQuickPixmapReader::run() (this=0x55d2558cdfa0) at /usr/src/debug/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:1024
#8  0x00007f49ef4e438a in QThreadPrivate::start(void*) (arg=0x55d2558cdfa0) at thread/qthread_unix.cpp:331
#9  0x00007f49eec8c54d in start_thread (arg=<optimized out>) at pthread_create.c:442
#10 0x00007f49eed11874 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100

Thread 1 (Thread 0x7f49eabd4340 (LWP 14858)):
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007f49eec8e3d3 in __pthread_kill_internal (signo=11, threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007f49eec3e838 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007f49f17c9384 in KCrash::defaultCrashHandler(int) (sig=11) at /usr/src/debug/kcrash-5.95.0/src/kcrash.cpp:618
#4  0x00007f49eec3e8e0 in <signal handler called> () at /usr/lib/libc.so.6
#5  0x00007f49f1a49383 in wl_map_insert_at (data=<optimized out>, i=298, flags=1, map=<optimized out>) at ../wayland-1.20.0/src/wayland-util.c:249
#6  proxy_destroy (proxy=proxy@entry=0x55d2587e77d0) at ../wayland-1.20.0/src/wayland-client.c:503
#7  0x00007f49f1a4ad3b in wl_proxy_destroy_caller_locks (proxy=0x55d2587e77d0) at ../wayland-1.20.0/src/wayland-client.c:523
#8  wl_proxy_marshal_array_flags (proxy=proxy@entry=0x55d2587e77d0, opcode=opcode@entry=0, interface=interface@entry=0x0, version=version@entry=1, flags=flags@entry=1, args=args@entry=0x7fff514c5520) at ../wayland-1.20.0/src/wayland-client.c:861
#9  0x00007f49f1a4b830 in wl_proxy_marshal_flags (proxy=0x55d2587e77d0, opcode=0, interface=0x0, version=1, flags=1) at ../wayland-1.20.0/src/wayland-client.c:784
#10 0x00007f49f1af7700 in wl_buffer_destroy (wl_buffer=0x55d2587e77d0) at /usr/include/wayland-client-protocol.h:2017
#11 KWayland::Client::WaylandPointer<wl_buffer, wl_buffer_destroy>::release (this=0x55d2587ea9b8) at /usr/src/debug/kwayland-5.95.0/src/client/wayland_pointer_p.h:44
#12 KWayland::Client::Buffer::Private::~Private() (this=0x55d2587ea9b0, 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=0x55d2587ea9b0) at /usr/include/qt/QtCore/qscopedpointer.h:60
#14 QScopedPointerDeleter<KWayland::Client::Buffer::Private>::cleanup(KWayland::Client::Buffer::Private*) (pointer=0x55d2587ea9b0) 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 0x00007f49f1b2f1f7 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 0x00007f49f1b35b57 in QtSharedPointer::ExternalRefCountData::destroy() (this=0x55d2587e7830) at /usr/include/qt/QtCore/qsharedpointer_impl.h:149
#20 QSharedPointer<KWayland::Client::Buffer>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x55d2587e7830) at /usr/include/qt/QtCore/qsharedpointer_impl.h:458
#21 QSharedPointer<KWayland::Client::Buffer>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x55d2587e7830, dd=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:454
#22 QSharedPointer<KWayland::Client::Buffer>::deref() (this=0x55d2587e76f0, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:453
#23 QSharedPointer<KWayland::Client::Buffer>::~QSharedPointer() (this=0x55d2587e76f0, 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=0x55d25870e798, from=0x55d25870e798) at /usr/include/qt/QtCore/qlist.h:524
#25 QList<QSharedPointer<KWayland::Client::Buffer> >::dealloc(QListData::Data*) [clone .isra.0] (data=0x55d25870e780, this=<optimized out>) at /usr/include/qt/QtCore/qlist.h:921
#26 0x00007f49f1b2a1ad 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=0x55d258848190) at /usr/src/debug/kwayland-5.95.0/src/client/shm_pool.cpp:65
#31 0x00007f49f1b2a22f in KWayland::Client::ShmPool::~ShmPool() (this=0x55d258848190, this=<optimized out>) at /usr/src/debug/kwayland-5.95.0/src/client/shm_pool.cpp:60
#32 0x00007f49f1b2a2fe in KWayland::Client::ShmPool::~ShmPool() (this=0x55d258848190, this=<optimized out>) at /usr/src/debug/kwayland-5.95.0/src/client/shm_pool.cpp:61
#33 0x00007f49eab48341 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=0x55d256514580, this=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:107
#35 WindowShadowTile::~WindowShadowTile() (this=0x55d256514540, this=<optimized out>) at /usr/src/debug/kwayland-integration-5.25.1/src/windowsystem/windowshadow.cpp:18
#36 WindowShadowTile::~WindowShadowTile() (this=0x55d256514540, this=<optimized out>) at /usr/src/debug/kwayland-integration-5.25.1/src/windowsystem/windowshadow.cpp:18
#37 0x00007f49f15e5174 in QtSharedPointer::ExternalRefCountData::destroy() (this=0x55d25874f310) at /usr/include/qt/QtCore/qsharedpointer_impl.h:149
#38 QSharedPointer<KWindowShadowTile>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x55d25874f310) at /usr/include/qt/QtCore/qsharedpointer_impl.h:458
#39 QSharedPointer<KWindowShadowTile>::deref(QtSharedPointer::ExternalRefCountData*) (dd=0x55d25874f310) at /usr/include/qt/QtCore/qsharedpointer_impl.h:454
#40 QSharedPointer<KWindowShadowTile>::deref() (this=0x55d258775718) at /usr/include/qt/QtCore/qsharedpointer_impl.h:453
#41 QSharedPointer<KWindowShadowTile>::~QSharedPointer() (this=0x55d258775718, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:310
#42 KWindowShadowPrivate::~KWindowShadowPrivate() (this=0x55d258775690, this=<optimized out>) at /usr/src/debug/kwindowsystem-5.95.0/src/kwindowshadow.cpp:281
#43 0x00007f49eab48660 in non-virtual thunk to WindowShadow::~WindowShadow() () at /usr/src/debug/kwayland-integration-5.25.1/src/windowsystem/windowshadow.h:29
#44 0x00007f49f15e50fb in QScopedPointerDeleter<KWindowShadowPrivate>::cleanup(KWindowShadowPrivate*) (pointer=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:52
#45 QScopedPointer<KWindowShadowPrivate, QScopedPointerDeleter<KWindowShadowPrivate> >::~QScopedPointer() (this=0x55d25874d970, this=<optimized out>) at /usr/include/qt/QtCore/qscopedpointer.h:107
#46 KWindowShadow::~KWindowShadow() (this=0x55d25874d960, this=<optimized out>) at /usr/src/debug/kwindowsystem-5.95.0/src/kwindowshadow.cpp:66
#47 0x00007f49f15e511e in KWindowShadow::~KWindowShadow() (this=0x55d25874d960, this=<optimized out>) at /usr/src/debug/kwindowsystem-5.95.0/src/kwindowshadow.cpp:66
#48 0x00007f49ef6b3825 in QObjectPrivate::deleteChildren() (this=this@entry=0x55d25874db70) at kernel/qobject.cpp:2104
#49 0x00007f49ef6b3fb9 in QObject::~QObject() (this=0x7f49f1c150a0 <_ZZN12_GLOBAL__N_130Q_QGS_privateDialogShadowsSelf13innerFunctionEvE6holder.lto_priv.0>, this=<optimized out>) at kernel/qobject.cpp:1082
#50 0x00007f49f1be943d in (anonymous namespace)::Q_QGS_privateDialogShadowsSelf::innerFunction()::Holder::~Holder() () at /usr/src/debug/plasma-framework-5.95.0/src/plasmaquick/dialogshadows.cpp:40
#51 0x00007f49eec40ef5 in __run_exit_handlers (status=0, listp=0x7f49eedfd778 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:113
#52 0x00007f49eec41070 in __GI_exit (status=<optimized out>) at exit.c:143
#53 0x00007f49eec29297 in __libc_start_call_main (main=main@entry=0x55d252f40240 <main(int, char**)>, argc=argc@entry=2, argv=argv@entry=0x7fff514c5a48) at ../sysdeps/nptl/libc_start_call_main.h:74
#54 0x00007f49eec2934a in __libc_start_main_impl (main=0x55d252f40240 <main(int, char**)>, argc=2, argv=0x7fff514c5a48, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff514c5a38) at ../csu/libc-start.c:389
#55 0x000055d252f434c5 in _start () at ../sysdeps/x86_64/start.S:115
Comment 1 David Edmundson 2022-06-27 15:28:01 UTC
This doesn't match up with your description. 

>#51 0x00007f49eec40ef5 in __run_exit_handlers (status=0, listp=0x7f49eedfd778 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:113

It implies we have two bugs

 - A surprise forced exit.
 - A crash during a surprise exit
Comment 2 Nate Graham 2022-06-28 16:17:10 UTC
Cannot reproduce; dragging a group of Konsole windows onto another virtual desktop in the pager doesn't do anything for me, but it also doesn't make Plasma crash.
Comment 3 David Edmundson 2022-06-29 14:45:57 UTC
*** Bug 456037 has been marked as a duplicate of this bug. ***
Comment 4 David Edmundson 2022-06-29 14:46:44 UTC

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