https://bugs.kde.org/show_bug.cgi?id=363809

            Bug ID: 363809
           Summary: occasionally, screen briefly freezes, followed by kwin
                    5.5.5 crashing
           Product: kwin
           Version: 5.5.5
          Platform: Ubuntu Packages
                OS: Linux
            Status: UNCONFIRMED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: kwin-bugs-n...@kde.org
          Reporter: d...@ptmx.org

Application: kwin_x11 (5.5.5)

Qt Version: 5.5.1
Operating System: Linux 4.4.0-22-generic x86_64
Distribution: Ubuntu 16.04 LTS

-- Information about the crash:
- Unusual behavior I noticed:

Sometimes I notice that the screen freezes for a brief moment (~500ms),
followed by a kwin crash. I noticed this on two machines with Kubuntu 16.04
installed, one with an nvidia card and the closed-source drive, another with an
intel graphics chipset (using the driver that was preconfigured by the Kubuntu
setup). I've also noticed that sometimes the glyphs on window titles appear
"smeared" and unrecognizable.  Backtrace also suggests a problem with the glyph
cache in Qt5.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f9f5a046900 (LWP 1700))]

Thread 4 (Thread 0x7f9f3b345700 (LWP 1755)):
#0  0x00007f9f59b3bd13 in select () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f9f5834010f in qt_safe_select(int, fd_set*, fd_set*, fd_set*,
timespec const*) (nfds=13, fdread=fdread@entry=0x7f9f2c000a78,
fdwrite=fdwrite@entry=0x7f9f2c000d08, fdexcept=fdexcept@entry=0x7f9f2c000f98,
orig_timeout=orig_timeout@entry=0x0) at kernel/qcore_unix.cpp:75
#2  0x00007f9f58341c0e in
QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>,
timespec*) (timeout=0x0, exceptfds=0x7f9f2c000f98, writefds=0x7f9f2c000d08,
readfds=0x7f9f2c000a78, nfds=<optimized out>, this=0x7f9f2c0008c0) at
kernel/qeventdispatcher_unix.cpp:320
#3  0x00007f9f58341c0e in
QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>,
timespec*) (this=this@entry=0x7f9f2c0008e0, flags=..., flags@entry=...,
timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:196
#4  0x00007f9f5834213e in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7f9f2c0008c0, flags=...) at kernel/qeventdispatcher_unix.cpp:607
#5  0x00007f9f582ebdea in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f9f3b344ca0, flags=..., flags@entry=...) at
kernel/qeventloop.cpp:204
#6  0x00007f9f581088a4 in QThread::exec() (this=this@entry=0x1aba3f0) at
thread/qthread.cpp:503
#7  0x00007f9f52c1e3c5 in QQmlThreadPrivate::run() (this=0x1aba3f0) at
qml/ftw/qqmlthread.cpp:141
#8  0x00007f9f5810d84e in QThreadPrivate::start(void*) (arg=0x1aba3f0) at
thread/qthread_unix.cpp:331
#9  0x00007f9f53ac16fa in start_thread (arg=0x7f9f3b345700) at
pthread_create.c:333
#10 0x00007f9f59b45b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f9f33056700 (LWP 1780)):
#0  0x00007f9f53ac73a0 in pthread_cond_wait@@GLIBC_2.3.2 () at
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f9f57295bd4 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#2  0x00007f9f57295c19 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#3  0x00007f9f53ac16fa in start_thread (arg=0x7f9f33056700) at
pthread_create.c:333
#4  0x00007f9f59b45b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f9ea5aeb700 (LWP 2113)):
#0  0x00007f9f59b3bd13 in select () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f9f5834010f in qt_safe_select(int, fd_set*, fd_set*, fd_set*,
timespec const*) (nfds=26, fdread=fdread@entry=0x7f9ea00aeef8,
fdwrite=fdwrite@entry=0x7f9ea00af188, fdexcept=fdexcept@entry=0x7f9ea00af418,
orig_timeout=orig_timeout@entry=0x0) at kernel/qcore_unix.cpp:75
#2  0x00007f9f58341c0e in
QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>,
timespec*) (timeout=0x0, exceptfds=0x7f9ea00af418, writefds=0x7f9ea00af188,
readfds=0x7f9ea00aeef8, nfds=<optimized out>, this=0x7f9ea0089890) at
kernel/qeventdispatcher_unix.cpp:320
#3  0x00007f9f58341c0e in
QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>,
timespec*) (this=this@entry=0x7f9ea00aed60, flags=..., flags@entry=...,
timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:196
#4  0x00007f9f5834213e in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7f9ea0089890, flags=...) at kernel/qeventdispatcher_unix.cpp:607
#5  0x00007f9f582ebdea in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f9ea5aeaca0, flags=..., flags@entry=...) at
kernel/qeventloop.cpp:204
#6  0x00007f9f581088a4 in QThread::exec() (this=this@entry=0x202a970) at
thread/qthread.cpp:503
#7  0x00007f9f52c1e3c5 in QQmlThreadPrivate::run() (this=0x202a970) at
qml/ftw/qqmlthread.cpp:141
#8  0x00007f9f5810d84e in QThreadPrivate::start(void*) (arg=0x202a970) at
thread/qthread_unix.cpp:331
#9  0x00007f9f53ac16fa in start_thread (arg=0x7f9ea5aeb700) at
pthread_create.c:333
#10 0x00007f9f59b45b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f9f5a046900 (LWP 1700)):
[KCrash Handler]
#6  0x0000000040ebb5fb in  ()
#7  0x00007f9f392cc9a4 in  () at /usr/lib/nvidia-361/libnvidia-glcore.so.361.42
#8  0x00007f9f392d1c08 in  () at /usr/lib/nvidia-361/libnvidia-glcore.so.361.42
#9  0x00007f9f38ec7c68 in  () at /usr/lib/nvidia-361/libnvidia-glcore.so.361.42
#10 0x00007f9f58946756 in QOpenGLTextureGlyphCache::resizeTextureData(int, int)
(count=4, first=0, mode=6, this=0x2a2a0c0) at
../../include/QtGui/../../src/gui/opengl/qopenglfunctions.h:716
#11 0x00007f9f58946756 in QOpenGLTextureGlyphCache::resizeTextureData(int, int)
(this=0x2b69b80, width=<optimized out>, height=<optimized out>) at
opengl/qopengltextureglyphcache.cpp:299
#12 0x00007f9f588d32aa in QTextureGlyphCache::fillInPendingGlyphs()
(height=<optimized out>, width=<optimized out>, this=0x2b69b80) at
painting/qtextureglyphcache_p.h:124
#13 0x00007f9f588d32aa in QTextureGlyphCache::fillInPendingGlyphs()
(this=this@entry=0x2b69b80) at painting/qtextureglyphcache.cpp:233
#14 0x00007f9f530e8db7 in QSGTextMaskMaterial::populate(QPointF const&,
QVector<unsigned int> const&, QVector<QPointF> const&, QSGGeometry*, QRectF*,
QPointF*, QMargins const&) (this=0x2700560, p=..., glyphIndexes=...,
glyphPositions=..., geometry=geometry@entry=0x29235b0,
boundingRect=boundingRect@entry=0x7ffd8cbc4e30, baseLine=0x2923598,
margins=...) at scenegraph/qsgdefaultglyphnode_p.cpp:446
#15 0x00007f9f530e6c4c in QSGDefaultGlyphNode::update() (this=0x29234a0) at
scenegraph/qsgdefaultglyphnode.cpp:121
#16 0x00007f9f53170677 in QQuickTextNode::addGlyphs(QPointF const&, QGlyphRun
const&, QColor const&, QQuickText::TextStyle, QColor const&, QSGNode*)
(this=this@entry=0x2b68730, position=..., glyphs=..., color=...,
style=style@entry=QQuickText::Normal, styleColor=..., parentNode=0x0) at
items/qquicktextnode.cpp:153
#17 0x00007f9f53174a9c in
QQuickTextNodeEngine::addToSceneGraph(QQuickTextNode*, QQuickText::TextStyle,
QColor const&) (this=0x2bf84e0, parentNode=parentNode@entry=0x2b68730,
style=style@entry=QQuickText::Normal, styleColor=...) at
items/qquicktextnodeengine.cpp:767
#18 0x00007f9f53171547 in QQuickTextNode::addTextLayout(QPointF const&,
QTextLayout*, QColor const&, QQuickText::TextStyle, QColor const&, QColor
const&, QColor const&, QColor const&, int, int, int, int)
(this=this@entry=0x2b68730, position=...,
textLayout=textLayout@entry=0x2a29b20, color=..., style=QQuickText::Normal,
styleColor=..., anchorColor=..., selectionColor=..., selectedTextColor=...,
selectionStart=-1, selectionEnd=-1, lineStart=0, lineCount=1) at
items/qquicktextnode.cpp:304
#19 0x00007f9f5316fcb8 in QQuickText::updatePaintNode(QSGNode*,
QQuickItem::UpdatePaintNodeData*) (this=0x2a26540, oldNode=<optimized out>,
data=<optimized out>) at items/qquicktext.cpp:2313
#20 0x00007f9f5312e2d8 in QQuickWindowPrivate::updateDirtyNode(QQuickItem*)
(this=this@entry=0x229e730, item=item@entry=0x2a26540) at
items/qquickwindow.cpp:2984
#21 0x00007f9f5312eb4b in QQuickWindowPrivate::updateDirtyNodes()
(this=this@entry=0x229e730) at items/qquickwindow.cpp:2722
#22 0x00007f9f5312ecc0 in QQuickWindowPrivate::syncSceneGraph()
(this=0x229e730) at items/qquickwindow.cpp:341
#23 0x00007f9f5320d4fa in QQuickRenderControl::sync() (this=<optimized out>) at
items/qquickrendercontrol.cpp:256
#24 0x00007f9f3b57a31a in
QtPrivate::QFunctorSlotObject<Aurorae::Decoration::init()::<lambda()>, 0,
QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *,
void **, bool *) (__closure=<synthetic pointer>) at
/build/kwin-2AFxJo/kwin-5.5.5/clients/aurorae/src/aurorae.cpp:362
#25 0x00007f9f3b57a31a in
QtPrivate::QFunctorSlotObject<Aurorae::Decoration::init()::<lambda()>, 0,
QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *,
void **, bool *) (arg=<optimized out>, f=...) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:495
#26 0x00007f9f3b57a31a in
QtPrivate::QFunctorSlotObject<Aurorae::Decoration::init()::<lambda()>, 0,
QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *,
void **, bool *) (arg=<optimized out>, f=...) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:552
#27 0x00007f9f3b57a31a in
QtPrivate::QFunctorSlotObject<Aurorae::Decoration::init()::<lambda()>, 0,
QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *,
void **, bool *) (which=<optimized out>, this_=<optimized out>, r=<optimized
out>, a=<optimized out>, ret=<optimized out>) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:192
#28 0x00007f9f5831ce4f in QMetaObject::activate(QObject*, int, int, void**)
(a=0x7ffd8cbc6e40, r=0x2a31f20, this=<optimized out>) at
../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#29 0x00007f9f5831ce4f in QMetaObject::activate(QObject*, int, int, void**)
(sender=sender@entry=0x24d52f0, signalOffset=<optimized out>,
local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at
kernel/qobject.cpp:3698
#30 0x00007f9f5831d7d7 in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (sender=sender@entry=0x24d52f0, m=m@entry=0x7f9f58537840
<QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0,
argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#31 0x00007f9f5839c6d0 in QTimer::timeout(QTimer::QPrivateSignal)
(this=this@entry=0x24d52f0) at .moc/moc_qtimer.cpp:197
#32 0x00007f9f58329878 in QTimer::timerEvent(QTimerEvent*) (this=0x24d52f0,
e=<optimized out>) at kernel/qtimer.cpp:247
#33 0x00007f9f5831de53 in QObject::event(QEvent*) (this=0x24d52f0, e=<optimized
out>) at kernel/qobject.cpp:1261
#34 0x00007f9f58be105c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=this@entry=0x1959150, receiver=receiver@entry=0x24d52f0,
e=e@entry=0x7ffd8cbc7170) at kernel/qapplication.cpp:3716
#35 0x00007f9f58be6516 in QApplication::notify(QObject*, QEvent*)
(this=0x7ffd8cbc73a0, receiver=0x24d52f0, e=0x7ffd8cbc7170) at
kernel/qapplication.cpp:3499
#36 0x00007f9f582ee62b in QCoreApplication::notifyInternal(QObject*, QEvent*)
(this=0x7ffd8cbc73a0, receiver=0x24d52f0, event=event@entry=0x7ffd8cbc7170) at
kernel/qcoreapplication.cpp:965
#37 0x00007f9f5834389d in QTimerInfoList::activateTimers()
(event=0x7ffd8cbc7170, receiver=<optimized out>) at
../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:224
#38 0x00007f9f5834389d in QTimerInfoList::activateTimers() (this=0x19a7848) at
kernel/qtimerinfo_unix.cpp:637
#39 0x00007f9f58341640 in QEventDispatcherUNIX::activateTimers()
(this=this@entry=0x19940c0) at kernel/qeventdispatcher_unix.cpp:549
#40 0x00007f9f583420b6 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x19940c0, flags=flags@entry=...) at kernel/qeventdispatcher_unix.cpp:611
#41 0x00007f9f43cf84ed in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...) at
eventdispatchers/qunixeventdispatcher.cpp:62
#42 0x00007f9f582ebdea in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7ffd8cbc72c0, flags=..., flags@entry=...) at
kernel/qeventloop.cpp:204
#43 0x00007f9f582f3e8c in QCoreApplication::exec() () at
kernel/qcoreapplication.cpp:1229
#44 0x00007f9f58627c3c in QGuiApplication::exec() () at
kernel/qguiapplication.cpp:1542
#45 0x00007f9f58bdd495 in QApplication::exec() () at
kernel/qapplication.cpp:2976
#46 0x00007f9f59e0d504 in kdemain(int, char**) (argc=1, argv=0x7ffd8cbc7508) at
/build/kwin-2AFxJo/kwin-5.5.5/main_x11.cpp:308
#47 0x00007f9f59a5f830 in __libc_start_main (main=0x400780 <main(int, char**)>,
argc=1, argv=0x7ffd8cbc7508, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7ffd8cbc74f8) at ../csu/libc-start.c:291
#48 0x00000000004007b9 in _start ()

Reported using DrKonqi

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to