Bug 358471 - Plasma desktop can crash when panels move between screens
Summary: Plasma desktop can crash when panels move between screens
Status: RESOLVED DUPLICATE of bug 349289
Alias: None
Product: plasmashell
Classification: Plasma
Component: System Monitor (show other bugs)
Version: 5.5.1
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: 1.0
Assignee: Marco Martin
URL:
Keywords: drkonqi
: 359061 366329 366460 372371 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-01-24 11:31 UTC by clubmajo
Modified: 2017-04-16 20:42 UTC (History)
9 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 clubmajo 2016-01-24 11:31:17 UTC
Application: plasmashell (5.5.1)

Qt Version: 5.5.1
Operating System: Linux 4.3.3-gentoo x86_64
Distribution (Platform): Gentoo Packages

-- Information about the crash:
I have a dual screen setup with two displays at 1920x1080. When I move panels between screens, sometimes dissapears and sometimes crash the desktop. In this case, I moved a network monitor from left to right accidentally, and I moved back to the right screen making crash plasma desktop

The crash can be reproduced sometimes.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f00fb602800 (LWP 544))]

Thread 7 (Thread 0x7f00e549b700 (LWP 561)):
#0  0x00007f00f5dac32d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f00f1e5fefc in g_main_context_poll (priority=2147483647, n_fds=1, fds=0x7f00d8003070, timeout=<optimized out>, context=0x7f00d8000990) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:4135
#2  g_main_context_iterate (context=context@entry=0x7f00d8000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3835
#3  0x00007f00f1e6000c in g_main_context_iteration (context=0x7f00d8000990, may_block=1) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3901
#4  0x00007f00f668185c in QEventDispatcherGlib::processEvents (this=0x7f00d80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#5  0x00007f00f663341a in QEventLoop::exec (this=this@entry=0x7f00e549ada0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f00f64856d4 in QThread::exec (this=this@entry=0x175b3c0) at thread/qthread.cpp:503
#7  0x00007f00f8c79625 in QQmlThreadPrivate::run (this=0x175b3c0) at qml/ftw/qqmlthread.cpp:141
#8  0x00007f00f648a082 in QThreadPrivate::start (arg=0x175b3c0) at thread/qthread_unix.cpp:331
#9  0x00007f00f55b5444 in start_thread (arg=0x7f00e549b700) at pthread_create.c:334
#10 0x00007f00f5db530d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f00d546e700 (LWP 565)):
#0  pthread_cond_wait () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f00df15a463 in cnd_wait (mtx=0x18b5f70, cond=0x18b5f98) at /var/tmp/portage/media-libs/mesa-11.1.0/work/mesa-11.1.0/include/c11/threads_posix.h:159
#2  pipe_semaphore_wait (sema=0x18b5f70) at /var/tmp/portage/media-libs/mesa-11.1.0/work/mesa-11.1.0/src/gallium/auxiliary/os/os_thread.h:259
#3  radeon_drm_cs_emit_ioctl (param=param@entry=0x18b5c20) at /var/tmp/portage/media-libs/mesa-11.1.0/work/mesa-11.1.0/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c:653
#4  0x00007f00df159bb7 in impl_thrd_routine (p=<optimized out>) at /var/tmp/portage/media-libs/mesa-11.1.0/work/mesa-11.1.0/include/c11/threads_posix.h:87
#5  0x00007f00f55b5444 in start_thread (arg=0x7f00d546e700) at pthread_create.c:334
#6  0x00007f00f5db530d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f00d1fc3700 (LWP 569)):
#0  idleTimerSourceCheck (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:214
#1  0x00007f00f1e5f931 in g_main_context_check (context=context@entry=0x7f00cc000990, max_priority=2147483647, fds=fds@entry=0x7f00cc002e70, n_fds=n_fds@entry=1) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3681
#2  0x00007f00f1e5fea0 in g_main_context_iterate (context=context@entry=0x7f00cc000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3837
#3  0x00007f00f1e6000c in g_main_context_iteration (context=0x7f00cc000990, may_block=1) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3901
#4  0x00007f00f668185c in QEventDispatcherGlib::processEvents (this=0x7f00cc0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#5  0x00007f00f663341a in QEventLoop::exec (this=this@entry=0x7f00d1fc2da0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f00f64856d4 in QThread::exec (this=this@entry=0x19a2070) at thread/qthread.cpp:503
#7  0x00007f00f8c79625 in QQmlThreadPrivate::run (this=0x19a2070) at qml/ftw/qqmlthread.cpp:141
#8  0x00007f00f648a082 in QThreadPrivate::start (arg=0x19a2070) at thread/qthread_unix.cpp:331
#9  0x00007f00f55b5444 in start_thread (arg=0x7f00d1fc3700) at pthread_create.c:334
#10 0x00007f00f5db530d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f00cbdc9700 (LWP 570)):
#0  0x00007f00f5dac32d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f00f1e5fefc in g_main_context_poll (priority=2147483647, n_fds=1, fds=0x7f00c4003070, timeout=<optimized out>, context=0x7f00c4000990) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:4135
#2  g_main_context_iterate (context=context@entry=0x7f00c4000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3835
#3  0x00007f00f1e6000c in g_main_context_iteration (context=0x7f00c4000990, may_block=1) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3901
#4  0x00007f00f668185c in QEventDispatcherGlib::processEvents (this=0x7f00c40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#5  0x00007f00f663341a in QEventLoop::exec (this=this@entry=0x7f00cbdc8da0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f00f64856d4 in QThread::exec (this=this@entry=0x1a91220) at thread/qthread.cpp:503
#7  0x00007f00f8c79625 in QQmlThreadPrivate::run (this=0x1a91220) at qml/ftw/qqmlthread.cpp:141
#8  0x00007f00f648a082 in QThreadPrivate::start (arg=0x1a91220) at thread/qthread_unix.cpp:331
#9  0x00007f00f55b5444 in start_thread (arg=0x7f00cbdc9700) at pthread_create.c:334
#10 0x00007f00f5db530d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f00ca585700 (LWP 583)):
#0  pthread_cond_wait () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f00fb0516e4 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7f00fb142100 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007f00fb051729 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007f00f55b5444 in start_thread (arg=0x7f00ca585700) at pthread_create.c:334
#4  0x00007f00f5db530d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f00425d6700 (LWP 679)):
#0  0x00007f00f1ea4379 in g_mutex_lock (mutex=mutex@entry=0x7f00340544e0) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gthread-posix.c:1338
#1  0x00007f00f1e5fe00 in g_main_context_iterate (context=context@entry=0x7f00340544e0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3807
#2  0x00007f00f1e6000c in g_main_context_iteration (context=0x7f00340544e0, may_block=1) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3901
#3  0x00007f00f668185c in QEventDispatcherGlib::processEvents (this=0x7f003402ea50, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#4  0x00007f00f663341a in QEventLoop::exec (this=this@entry=0x7f00425d5d50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f00f64856d4 in QThread::exec (this=this@entry=0x273b3c0) at thread/qthread.cpp:503
#6  0x00007f00f960fbe6 in QQuickPixmapReader::run (this=0x273b3c0) at util/qquickpixmapcache.cpp:760
#7  0x00007f00f648a082 in QThreadPrivate::start (arg=0x273b3c0) at thread/qthread_unix.cpp:331
#8  0x00007f00f55b5444 in start_thread (arg=0x7f00425d6700) at pthread_create.c:334
#9  0x00007f00f5db530d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f00fb602800 (LWP 544)):
[KCrash Handler]
#6  0x00007f00c86df688 in Plotter::render (this=0x29528b0) at /var/tmp/portage/kde-frameworks/kdeclarative-5.17.0/work/kdeclarative-5.17.0/src/qmlcontrols/kquickcontrolsaddons/plotter.cpp:703
#7  0x00007f00f665bf63 in QtPrivate::QSlotObjectBase::call (a=0x7ffc1a2069c0, r=0x29528b0, this=0x33acd40) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#8  QMetaObject::activate (sender=sender@entry=0x1beb150, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=6, argv=argv@entry=0x0) at kernel/qobject.cpp:3698
#9  0x00007f00f665cba7 in QMetaObject::activate (sender=sender@entry=0x1beb150, m=m@entry=0x7f00f98dde00 <QQuickWindow::staticMetaObject>, local_signal_index=local_signal_index@entry=6, argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#10 0x00007f00f96ac333 in QQuickWindow::beforeRendering (this=this@entry=0x1beb150) at .moc/moc_qquickwindow.cpp:466
#11 0x00007f00f96af9ae in QQuickWindowPrivate::renderSceneGraph (this=this@entry=0x1bf2d60, size=...) at items/qquickwindow.cpp:368
#12 0x00007f00f967f96b in QSGGuiThreadRenderLoop::renderWindow (this=this@entry=0x18f39d0, window=0x1beb150) at scenegraph/qsgrenderloop.cpp:378
#13 0x00007f00f9680a81 in QSGGuiThreadRenderLoop::event (this=0x18f39d0, e=<optimized out>) at scenegraph/qsgrenderloop.cpp:474
#14 0x00007f00f709c6bc in QApplicationPrivate::notify_helper (this=this@entry=0x1655f50, receiver=receiver@entry=0x18f39d0, e=e@entry=0x7ffc1a206e50) at kernel/qapplication.cpp:3716
#15 0x00007f00f70a1ba8 in QApplication::notify (this=0x7ffc1a2071f0, receiver=0x18f39d0, e=0x7ffc1a206e50) at kernel/qapplication.cpp:3499
#16 0x00007f00f66347bd in QCoreApplication::notifyInternal (this=0x7ffc1a2071f0, receiver=0x18f39d0, event=event@entry=0x7ffc1a206e50) at kernel/qcoreapplication.cpp:965
#17 0x00007f00f6680e4d in QCoreApplication::sendEvent (event=0x7ffc1a206e50, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:224
#18 QTimerInfoList::activateTimers (this=0x16b53b0) at kernel/qtimerinfo_unix.cpp:637
#19 0x00007f00f6681301 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:177
#20 0x00007f00f1e5fd07 in g_main_dispatch (context=0x7f00e00016f0) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3154
#21 g_main_context_dispatch (context=context@entry=0x7f00e00016f0) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3769
#22 0x00007f00f1e5ff60 in g_main_context_iterate (context=context@entry=0x7f00e00016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3840
#23 0x00007f00f1e6000c in g_main_context_iteration (context=0x7f00e00016f0, may_block=1) at /var/tmp/portage/dev-libs/glib-2.46.2/work/glib-2.46.2/glib/gmain.c:3901
#24 0x00007f00f6681847 in QEventDispatcherGlib::processEvents (this=0x16acdc0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#25 0x00007f00f663341a in QEventLoop::exec (this=this@entry=0x7ffc1a207090, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#26 0x00007f00f663a6fc in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#27 0x00007f00f695860c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1527
#28 0x00007f00f70982e5 in QApplication::exec () at kernel/qapplication.cpp:2976
#29 0x0000000000432314 in main (argc=2, argv=<optimized out>) at /var/tmp/portage/kde-plasma/plasma-workspace-5.5.1.1/work/plasma-workspace-5.5.1/shell/main.cpp:179

Reported using DrKonqi
Comment 1 David Edmundson 2016-02-06 15:25:37 UTC
*** Bug 359061 has been marked as a duplicate of this bug. ***
Comment 2 Marco Martin 2016-03-17 14:34:37 UTC
seems that in plotter the m_node is deleted without noticing.
but is that possible? (on view change) its flag are QSGNode::OwnedByParent and has no parent
Comment 3 clubmajo 2016-03-19 00:03:57 UTC
I'm using plasmashell 5.5.4 and the issue of moving widgets doesn't give so many problems as before. I cannot replicate the crash easily but in rare occasions I ended crashing plasma with the same backtrace

This time, plasma crashed when I was with focus in a chromium window and I moved the mouse to the other screen and quickly began with a drag action in a widget.

I don't know if it helps but I have issues with EGL mesa making crash kwin but that crash is unrelated to this bug
Comment 4 Marco Martin 2016-08-16 12:33:56 UTC
*** Bug 366460 has been marked as a duplicate of this bug. ***
Comment 5 Marco Martin 2016-08-16 12:36:31 UTC
*** Bug 366329 has been marked as a duplicate of this bug. ***
Comment 6 clubmajo 2016-10-03 09:32:35 UTC
I experimented the same issue with the same backtrace of original report in the next version:
Application: plasmashell (5.7.5)
Frameworks Version: 5.26.0
Qt Version: 5.6.1
Operating System: Linux 4.7.4-gentoo x86_64
Comment 7 Edwin 2016-10-15 13:48:10 UTC
Can confirm. Moving panel back and forth between screens will always crash plasmashell.

KDE Neon 5.8.1, intel hd 3000
Comment 8 Marco Martin 2016-11-21 16:31:00 UTC
*** Bug 372371 has been marked as a duplicate of this bug. ***
Comment 9 Marco Martin 2016-12-30 14:16:17 UTC
can this still be reproduced?
with the combination Plasma 5.8 Qt 5.8 and intel modesettings drivers i can't reproduce this at all anymore
Comment 10 David Edmundson 2017-04-16 20:42:53 UTC

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