Bug 361563 - Weird behavior on multi screen setup and crashes
Summary: Weird behavior on multi screen setup and crashes
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: general (show other bugs)
Version: 5.6.1
Platform: openSUSE Linux
: NOR crash
Target Milestone: 1.0
Assignee: David Edmundson
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-04-09 14:44 UTC by jos poortvliet
Modified: 2016-05-14 14:30 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 jos poortvliet 2016-04-09 14:44:55 UTC
Application: plasmashell (5.6.1)

Qt Version: 5.5.1
Frameworks Version: 5.20.0
Operating System: Linux 4.5.0-3-default x86_64
Distribution: "openSUSE Tumbleweed (20160117) (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
moving a window

- Unusual behavior I noticed:
windows are small, have a fixed size, moving them makes them disappear or crash.
See here for a video and screenshots/pictures of the behavior:
https://cloud.josandcamila.com/index.php/s/Hbl07hLaUWriMrf

This is possibly related to the kwin crash here:
https://bugs.kde.org/show_bug.cgi?id=361551

(I'm trying to reproduce that one but now plasma crashes on me)

I hope this is enough info to find the culprit...

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 0x7f028fddd8c0 (LWP 15437))]

Thread 8 (Thread 0x7f027a809700 (LWP 15443)):
#0  0x00007f028955443d in poll () at /lib64/libc.so.6
#1  0x00007f028e228432 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f028e22a007 in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f027c719dd9 in QXcbEventReader::run() (this=0x238d050) at qxcbconnection.cpp:1229
#4  0x00007f0289c4390f in QThreadPrivate::start(void*) (arg=0x238d050) at thread/qthread_unix.cpp:331
#5  0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f0277bd6700 (LWP 15459)):
#0  0x00007f0285edd6d9 in g_mutex_lock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f0285e999a9 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f0285e9a2a3 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f0285e9a47c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f0289e684db in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x2402710, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007f0289e125ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f0277bd5cf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f0289c3eadc in QThread::exec() (this=this@entry=0x24b6bf0) at thread/qthread.cpp:503
#7  0x00007f028cd087b5 in QQmlThreadPrivate::run() (this=0x24b6bf0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/ftw/qqmlthread.cpp:141
#8  0x00007f0289c4390f in QThreadPrivate::start(void*) (arg=0x24b6bf0) at thread/qthread_unix.cpp:331
#9  0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f026e610700 (LWP 15474)):
#0  0x00007f0285edd6f4 in g_mutex_unlock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f0285e9a32e in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f0285e9a47c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f0289e684db in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x28e2390, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f0289e125ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f026e60fcf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f0289c3eadc in QThread::exec() (this=this@entry=0x291a160) at thread/qthread.cpp:503
#6  0x00007f028cd087b5 in QQmlThreadPrivate::run() (this=0x291a160) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/ftw/qqmlthread.cpp:141
#7  0x00007f0289c4390f in QThreadPrivate::start(void*) (arg=0x291a160) at thread/qthread_unix.cpp:331
#8  0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f026ccf6700 (LWP 15478)):
#0  0x00007f028955443d in poll () at /lib64/libc.so.6
#1  0x00007f0285e9a374 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f0285e9a47c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f0289e684db in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x2820470, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f0289e125ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f026ccf5cf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f0289c3eadc in QThread::exec() (this=this@entry=0x2a214a0) at thread/qthread.cpp:503
#6  0x00007f028cd087b5 in QQmlThreadPrivate::run() (this=0x2a214a0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/ftw/qqmlthread.cpp:141
#7  0x00007f0289c4390f in QThreadPrivate::start(void*) (arg=0x2a214a0) at thread/qthread_unix.cpp:331
#8  0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f026b373700 (LWP 15573)):
#0  0x00007f0288d6102f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f028f4c9a84 in QTWTF::TCMalloc_PageHeap::scavengerThread() (this=0x7f028f7b0ea0 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007f028f4c9ac9 in QTWTF::TCMalloc_PageHeap::runScavengerThread(void*) (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f01e8377700 (LWP 15706)):
#0  0x00007f0285edd6d9 in g_mutex_lock () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f0285e99877 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f0285e9a2a3 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f0285e9a47c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f0289e684db in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x31b7650, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007f0289e125ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f01e8376cb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f0289c3eadc in QThread::exec() (this=this@entry=0x316a720) at thread/qthread.cpp:503
#7  0x00007f028d890e42 in QQuickPixmapReader::run() (this=0x316a720) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/util/qquickpixmapcache.cpp:760
#8  0x00007f0289c4390f in QThreadPrivate::start(void*) (arg=0x316a720) at thread/qthread_unix.cpp:331
#9  0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f01ce718700 (LWP 16448)):
#0  0x00007f0289c428d9 in QThreadData::current(bool) (createIfNecessary=createIfNecessary@entry=true) at thread/qthread_unix.cpp:213
#1  0x00007f0289e67d51 in postEventSourceCheck(GSource*) (timeout=0x0, s=0x4b08ce0) at kernel/qeventdispatcher_glib.cpp:247
#2  0x00007f0289e67d51 in postEventSourceCheck(GSource*) (source=0x4b08ce0) at kernel/qeventdispatcher_glib.cpp:264
#3  0x00007f0285e99df1 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#4  0x00007f0285e9a318 in  () at /usr/lib64/libglib-2.0.so.0
#5  0x00007f0285e9a47c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#6  0x00007f0289e684db in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x528f230, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#7  0x00007f0289e125ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f01ce717cf0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#8  0x00007f0289c3eadc in QThread::exec() (this=this@entry=0x52d7260) at thread/qthread.cpp:503
#9  0x00007f028cd087b5 in QQmlThreadPrivate::run() (this=0x52d7260) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/qml/qml/ftw/qqmlthread.cpp:141
#10 0x00007f0289c4390f in QThreadPrivate::start(void*) (arg=0x52d7260) at thread/qthread_unix.cpp:331
#11 0x00007f0288d5b454 in start_thread () at /lib64/libpthread.so.0
#12 0x00007f028955cd8d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f028fddd8c0 (LWP 15437)):
[KCrash Handler]
#6  0x00007f0274cb78d7 in  () at /usr/lib64/dri/i965_dri.so
#7  0x00007f0274c9bfe3 in  () at /usr/lib64/dri/i965_dri.so
#8  0x00007f028d8bf986 in QSGBatchRenderer::Renderer::renderBatches() (this=this@entry=0x5d89ae0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:2482
#9  0x00007f028d8c50c2 in QSGBatchRenderer::Renderer::render() (this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:2685
#10 0x00007f028d8d09bf in QSGRenderer::renderScene(QSGBindable const&) (this=0x5d89ae0, bindable=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/coreapi/qsgrenderer.cpp:208
#11 0x00007f028d8d11eb in QSGRenderer::renderScene(unsigned int) (this=<optimized out>, fboId=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/coreapi/qsgrenderer.cpp:168
#12 0x00007f028d8e0e4e in QSGRenderContext::renderNextFrame(QSGRenderer*, unsigned int) (this=0x29fed50, renderer=0x5d89ae0, fboId=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/qsgcontext.cpp:558
#13 0x00007f028d9285bb in QQuickWindowPrivate::renderSceneGraph(QSize const&) (this=this@entry=0x315c560, size=...) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickwindow.cpp:383
#14 0x00007f028d8fade3 in QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*) (this=this@entry=0x299e500, window=0x41578c0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/qsgrenderloop.cpp:378
#15 0x00007f028d8fc61e in QSGGuiThreadRenderLoop::exposureChanged(QQuickWindow*) (this=0x299e500, window=0x41578c0) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/scenegraph/qsgrenderloop.cpp:422
#16 0x00007f028a360ceb in QWindow::event(QEvent*) (this=this@entry=0x41578c0, ev=ev@entry=0x7ffecefc2710) at kernel/qwindow.cpp:2054
#17 0x00007f028d9337c1 in QQuickWindow::event(QEvent*) (this=0x41578c0, e=0x7ffecefc2710) at /usr/src/debug/qtdeclarative-opensource-src-5.5.1/src/quick/items/qquickwindow.cpp:1413
#18 0x00007f028ad7487c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x2371690, receiver=receiver@entry=0x41578c0, e=e@entry=0x7ffecefc2710) at kernel/qapplication.cpp:3716
#19 0x00007f028ad79986 in QApplication::notify(QObject*, QEvent*) (this=0x7ffecefc2ae0, receiver=0x41578c0, e=0x7ffecefc2710) at kernel/qapplication.cpp:3499
#20 0x00007f0289e14c83 in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffecefc2ae0, receiver=receiver@entry=0x41578c0, event=event@entry=0x7ffecefc2710) at kernel/qcoreapplication.cpp:965
#21 0x00007f028a359794 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) (event=0x7ffecefc2710, receiver=0x41578c0) at ../../src/corelib/kernel/qcoreapplication.h:227
#22 0x00007f028a359794 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) (e=0x4cf5250) at kernel/qguiapplication.cpp:2650
#23 0x00007f028a35a42d in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=e@entry=0x4cf5250) at kernel/qguiapplication.cpp:1645
#24 0x00007f028a33fa58 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:625
#25 0x00007f027c749e80 in userEventSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at eventdispatchers/qeventdispatcher_glib.cpp:70
#26 0x00007f0285e9a1a7 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#27 0x00007f0285e9a3d8 in  () at /usr/lib64/libglib-2.0.so.0
#28 0x00007f0285e9a47c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#29 0x00007f0289e684bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x2376810, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#30 0x00007f0289e125ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffecefc29a0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#31 0x00007f0289e1a28d in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229
#32 0x000000000041d964 in  ()
#33 0x00007f02894935b0 in __libc_start_main () at /lib64/libc.so.6
#34 0x000000000041da99 in _start ()

Reported using DrKonqi
Comment 1 jos poortvliet 2016-05-14 14:30:52 UTC
Not entirely fixed but, given it's a Qt 5.5/Plasma 5.6 issue and it should work in Qt 5.6 and Plasma 5.7 there's little point keeping this cluttering the bug tracker.