Bug 348788

Summary: kwin crash - when inserted into docking station
Product: [Plasma] kwin Reporter: Mohammed Arafa <bugzilla>
Component: auroraeAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: christoph
Priority: NOR Keywords: drkonqi
Version: 5.3.0   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=341497
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Mohammed Arafa 2015-06-06 15:52:22 UTC
Application: kwin_x11 (5.3.0)

Qt Version: 5.4.1
Operating System: Linux 4.0.4-303.fc22.x86_64 x86_64
Distribution: "Fedora release 22 (Twenty Two)"

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

i put my laptop to sleep then i plugged it into the docking station, then powered it on. then i plugged in my usb devices; laptop and wireless mouse then unlocked my screen saver and found this bug report

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fc4dc892900 (LWP 1810))]

Thread 4 (Thread 0x7fc4ce12a700 (LWP 1831)):
#0  0x00000031f16f83d3 in select () at /lib64/libc.so.6
#1  0x0000003206cd1dcf in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () at /lib64/libQt5Core.so.5
#2  0x0000003206cd38ce in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) () at /lib64/libQt5Core.so.5
#3  0x0000003206cd3dfe in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x0000003206c7ca8a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x0000003206a9aff4 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x0000003b46cc3935 in QQmlThreadPrivate::run() () at /lib64/libQt5Qml.so.5
#7  0x0000003206a9fede in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#8  0x00000031f1e07555 in start_thread () at /lib64/libpthread.so.0
#9  0x00000031f1701f3d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fc4c5d0b700 (LWP 1858)):
#0  0x00000031f1e0c530 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00000032073806d4 in QTWTF::TCMalloc_PageHeap::scavengerThread() () at /lib64/libQt5Script.so.5
#2  0x0000003207380719 in  () at /lib64/libQt5Script.so.5
#3  0x00000031f1e07555 in start_thread () at /lib64/libpthread.so.0
#4  0x00000031f1701f3d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7fc4bafe6700 (LWP 1960)):
#0  0x00000031f16f83d3 in select () at /lib64/libc.so.6
#1  0x0000003206cd1dcf in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () at /lib64/libQt5Core.so.5
#2  0x0000003206cd38ce in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) () at /lib64/libQt5Core.so.5
#3  0x0000003206cd3dfe in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x0000003206c7ca8a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x0000003206a9aff4 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x0000003b46cc3935 in QQmlThreadPrivate::run() () at /lib64/libQt5Qml.so.5
#7  0x0000003206a9fede in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#8  0x00000031f1e07555 in start_thread () at /lib64/libpthread.so.0
#9  0x00000031f1701f3d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7fc4dc892900 (LWP 1810)):
[KCrash Handler]
#5  0x0000003b3b90baa4 in QScreen::devicePixelRatio() const () at /lib64/libQt5Gui.so.5
#6  0x0000003b4654c1ce in QSGTextMaskMaterial::init(QFontEngine::GlyphFormat) () at /lib64/libQt5Quick.so.5
#7  0x0000003b4654b23a in QSGDefaultGlyphNode::update() () at /lib64/libQt5Quick.so.5
#8  0x0000003b465d7617 in QQuickTextNode::addGlyphs(QPointF const&, QGlyphRun const&, QColor const&, QQuickText::TextStyle, QColor const&, QSGNode*) () at /lib64/libQt5Quick.so.5
#9  0x0000003b465dacc3 in QQuickTextNodeEngine::addToSceneGraph(QQuickTextNode*, QQuickText::TextStyle, QColor const&) () at /lib64/libQt5Quick.so.5
#10 0x0000003b465d84d7 in QQuickTextNode::addTextLayout(QPointF const&, QTextLayout*, QColor const&, QQuickText::TextStyle, QColor const&, QColor const&, QColor const&, QColor const&, int, int, int, int) () at /lib64/libQt5Quick.so.5
#11 0x0000003b465d6c78 in QQuickText::updatePaintNode(QSGNode*, QQuickItem::UpdatePaintNodeData*) () at /lib64/libQt5Quick.so.5
#12 0x0000003b4658f5e7 in QQuickWindowPrivate::updateDirtyNode(QQuickItem*) () at /lib64/libQt5Quick.so.5
#13 0x0000003b4659008b in QQuickWindowPrivate::updateDirtyNodes() () at /lib64/libQt5Quick.so.5
#14 0x0000003b465906fe in QQuickWindowPrivate::syncSceneGraph() () at /lib64/libQt5Quick.so.5
#15 0x0000003b46670e0a in QQuickRenderControl::sync() () at /lib64/libQt5Quick.so.5
#16 0x00007fc4ce147d69 in QtPrivate::QFunctorSlotObject<Aurorae::Decoration::init()::{lambda()#8}, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) () at /usr/lib64/qt5/plugins/org.kde.kdecoration2/kwin5_aurorae.so
#17 0x0000003206cafad7 in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5
#18 0x0000003206cbc638 in QTimer::timerEvent(QTimerEvent*) () at /lib64/libQt5Core.so.5
#19 0x0000003206cb0ac3 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#20 0x0000003b3c9527cc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#21 0x0000003b3c957e70 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#22 0x0000003206c7f24b in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#23 0x0000003206cd555d in QTimerInfoList::activateTimers() () at /lib64/libQt5Core.so.5
#24 0x0000003206cd3d76 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#25 0x00007fc4d5fa297d in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/qt5/plugins/platforms/libqxcb.so
#26 0x0000003206c7ca8a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#27 0x0000003206c845fc in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#28 0x0000003b45605967 in kdemain () at /lib64/libkdeinit5_kwin_x11.so
#29 0x00000031f1620790 in __libc_start_main () at /lib64/libc.so.6
#30 0x0000000000400bc9 in _start ()

Reported using DrKonqi
Comment 1 Thomas Lübking 2015-06-07 13:03:16 UTC
Likely bug #341497 - supposed to be fixed in Qt5.5
Comment 2 Mohammed Arafa 2015-06-07 19:15:00 UTC
it happened again.
just ejecting and reseating the laptop back into the docking station will trigger a crash in kwin
Comment 3 Thomas Lübking 2015-06-07 19:24:12 UTC
It's likely the change of the screen layout and if it is (the forementioned Qt bug) this will happen each and every time, yes.
(Whether it is cannot be said for sure - you'll have to install the debug packages for Qt5 for this)
Comment 4 Thomas Lübking 2015-06-07 19:27:03 UTC
PS: the particular QScreen access is induced by the aurorae decoration, you may try to run "kcmshell5 kwindecoration" and select the breeze decoration.

This may however just move the crash to another position.
Also be prepared for other Qt5 processes (inc. plasmashell or even ksmserver, ie. the entire session) to crash (the Qt bug affects every process - it's just a matter of whether it "somehoe" looks at the screens while there are none for a brief moment)
Comment 5 Christoph Cullmann 2015-10-05 13:20:57 UTC
Thats one of the many variants of

https://bugreports.qt.io/browse/QTBUG-42985

And no, not fixed, not even with all patches in that bug.
Please report more info there, to give them a better chance to fix it and raise awareness, the kde bugtracker doesn't help for that.
Comment 6 Thomas Lübking 2015-10-05 13:27:43 UTC

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