Bug 360216

Summary: Random kwin crash
Product: [Plasma] kwin Reporter: Laurent Bonnaud <L.Bonnaud>
Component: auroraeAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Laurent Bonnaud 2016-03-07 17:11:05 UTC
Application: kwin_x11 (5.6.90)

Qt Version: 5.5.1
Frameworks Version: 5.20.0
Operating System: Linux 4.4.4-040404-generic x86_64
Distribution: Ubuntu 15.10

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

I was replying to an email in Thunderbird.  Probably Thunderbird triggered the crash by opening a new window.

This is with KDE neon and packages versions from today:

Package: kwin
Version: 4:5.5.4+git20160303.0038+15.10-0

-- 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 0x7fc59de00840 (LWP 12455))]

Thread 3 (Thread 0x7fc56298e700 (LWP 12469)):
#0  0x00007fc5b42cf6f3 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fc5b289db6f in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) (nfds=18, fdread=fdread@entry=0x7fc55c000a78, fdwrite=fdwrite@entry=0x7fc55c000d08, fdexcept=fdexcept@entry=0x7fc55c000f98, orig_timeout=orig_timeout@entry=0x0) at kernel/qcore_unix.cpp:75
#2  0x00007fc5b289f66e in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (timeout=0x0, exceptfds=0x7fc55c000f98, writefds=0x7fc55c000d08, readfds=0x7fc55c000a78, nfds=<optimized out>, this=0x7fc55c0008c0) at kernel/qeventdispatcher_unix.cpp:320
#3  0x00007fc5b289f66e in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (this=this@entry=0x7fc55c0008e0, flags=..., flags@entry=..., timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:196
#4  0x00007fc5b289fb9e in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fc55c0008c0, flags=...) at kernel/qeventdispatcher_unix.cpp:607
#5  0x00007fc5b284950a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fc56298dd60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007fc5b2665ac4 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007fc5acf63105 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007fc5b266aa6e in QThreadPrivate::start(void*) (arg=0x15cdf90) at thread/qthread_unix.cpp:331
#9  0x00007fc5b38c36aa in start_thread (arg=0x7fc56298e700) at pthread_create.c:333
#10 0x00007fc5b42d8e9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fc54f5a2700 (LWP 12471)):
#0  0x00007fc5b38c8da0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fc5b17ef194 in QTWTF::TCMalloc_PageHeap::scavengerThread() (this=0x7fc5b18d7ee0 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007fc5b17ef1d9 in QTWTF::TCMalloc_PageHeap::runScavengerThread(void*) (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007fc5b38c36aa in start_thread (arg=0x7fc54f5a2700) at pthread_create.c:333
#4  0x00007fc5b42d8e9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fc59de00840 (LWP 12455)):
[KCrash Handler]
#6  0x00007fc5acefca74 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007fc5acefa430 in QQmlMetaType::qmlSingletonTypes() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007fc5acece6b8 in QQmlEngine::~QQmlEngine() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#9  0x00007fc5acece859 in QQmlEngine::~QQmlEngine() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#10 0x00007fc5b420bd32 in __run_exit_handlers (status=status@entry=1, listp=0x7fc5b4596698 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:82
#11 0x00007fc5b420bd85 in __GI_exit (status=status@entry=1) at exit.c:104
#12 0x00007fc58cc550a2 in _intel_batchbuffer_flush (brw=0x7fc56ab69038) at ../../../../../../../src/mesa/drivers/dri/i965/intel_batchbuffer.c:341
#13 0x00007fc58cc550a2 in _intel_batchbuffer_flush (brw=brw@entry=0x7fc56ab69038, file=file@entry=0x7fc58cd51828 "../../../../../../../src/mesa/drivers/dri/i965/intel_pixel_read.c", line=line@entry=166) at ../../../../../../../src/mesa/drivers/dri/i965/intel_batchbuffer.c:388
#14 0x00007fc58cc5558d in _intel_batchbuffer_flush (brw=brw@entry=0x7fc56ab69038, file=file@entry=0x7fc58cd51828 "../../../../../../../src/mesa/drivers/dri/i965/intel_pixel_read.c", line=line@entry=166) at ../../../../../../../src/mesa/drivers/dri/i965/intel_batchbuffer.c:353
#15 0x00007fc58cc60f89 in intelReadPixels (pack=0x7fc56ab843c8, pixels=0x7fc4b9bc1010, type=33639, format=32993, height=1032, width=1920, yoffset=0, xoffset=0, ctx=0x7fc56ab69038) at ../../../../../../../src/mesa/drivers/dri/i965/intel_pixel_read.c:166
#16 0x00007fc58cc60f89 in intelReadPixels (ctx=0x7fc56ab69038, x=0, y=0, width=1920, height=1032, format=32993, type=33639, pack=0x7fc56ab843c8, pixels=0x7fc4b9bc1010) at ../../../../../../../src/mesa/drivers/dri/i965/intel_pixel_read.c:261
#17 0x00007fc58c972904 in _mesa_ReadnPixelsARB (x=0, y=0, width=1920, height=1032, format=32993, type=33639, bufSize=2147483647, pixels=0x7fc4b9bc1010) at ../../../../src/mesa/main/readpix.c:1120
#18 0x00007fc58c972bb2 in _mesa_ReadPixels (x=<optimized out>, y=<optimized out>, width=<optimized out>, height=<optimized out>, format=<optimized out>, type=<optimized out>, pixels=0x7fc4b9bc1010) at ../../../../src/mesa/main/readpix.c:1128
#19 0x00007fc5b2e7f2b5 in qt_gl_read_framebuffer(QSize const&, GLenum, bool, bool) (pixels=<optimized out>, type=<optimized out>, format=<optimized out>, height=<optimized out>, width=<optimized out>, y=<optimized out>, x=<optimized out>, this=<optimized out>) at ../../include/QtGui/5.5.1/QtGui/private/../../../../../src/gui/opengl/qopenglfunctions.h:939
#20 0x00007fc5b2e7f2b5 in qt_gl_read_framebuffer(QSize const&, GLenum, bool, bool) (context=<optimized out>, include_alpha=<optimized out>, size=...) at opengl/qopenglframebufferobject.cpp:1154
#21 0x00007fc5b2e7f2b5 in qt_gl_read_framebuffer(QSize const&, GLenum, bool, bool) (size=..., internal_format=<optimized out>, include_alpha=include_alpha@entry=true, flip=flip@entry=true) at opengl/qopenglframebufferobject.cpp:1183
#22 0x00007fc5b2e828e2 in QOpenGLFramebufferObject::toImage(bool) const (this=<optimized out>, flipped=flipped@entry=true) at opengl/qopenglframebufferobject.cpp:1261
#23 0x00007fc5b2e82972 in QOpenGLFramebufferObject::toImage() const (this=<optimized out>) at opengl/qopenglframebufferobject.cpp:1280
#24 0x00007fc58ec4c39c in  () at /usr/lib/x86_64-linux-gnu/qt5/plugins/org.kde.kdecoration2/kwin5_aurorae.so
#25 0x00007fc5b287a767 in QMetaObject::activate(QObject*, int, int, void**) (a=0x7fff592db350, r=0x4486d60, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#26 0x00007fc5b287a767 in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x46b3de0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3698
#27 0x00007fc5b287b0d7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x46b3de0, m=m@entry=0x7fc5b2a957a0 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#28 0x00007fc5b28fa3a0 in QTimer::timeout(QTimer::QPrivateSignal) (this=this@entry=0x46b3de0) at .moc/moc_qtimer.cpp:197
#29 0x00007fc5b2887188 in QTimer::timerEvent(QTimerEvent*) (this=0x46b3de0, e=<optimized out>) at kernel/qtimer.cpp:247
#30 0x00007fc5b287b753 in QObject::event(QEvent*) (this=0x46b3de0, e=<optimized out>) at kernel/qobject.cpp:1261
#31 0x00007fc5b31409dc in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x12bbd90, receiver=receiver@entry=0x46b3de0, e=e@entry=0x7fff592db680) at kernel/qapplication.cpp:3716
#32 0x00007fc5b3145ea6 in QApplication::notify(QObject*, QEvent*) (this=0x7fff592db8e0, receiver=0x46b3de0, e=0x7fff592db680) at kernel/qapplication.cpp:3499
#33 0x00007fc5b284bd7b in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7fff592db8e0, receiver=0x46b3de0, event=event@entry=0x7fff592db680) at kernel/qcoreapplication.cpp:965
#34 0x00007fc5b28a12fd in QTimerInfoList::activateTimers() (event=0x7fff592db680, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:224
#35 0x00007fc5b28a12fd in QTimerInfoList::activateTimers() (this=0x1305fa8) at kernel/qtimerinfo_unix.cpp:637
#36 0x00007fc5b289f0a0 in QEventDispatcherUNIX::activateTimers() (this=this@entry=0x12ef4e0) at kernel/qeventdispatcher_unix.cpp:549
#37 0x00007fc5b289fb16 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x12ef4e0, flags=flags@entry=...) at kernel/qeventdispatcher_unix.cpp:611
#38 0x00007fc59daa3d4d in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at eventdispatchers/qunixeventdispatcher.cpp:62
#39 0x00007fc5b284950a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff592db7d0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#40 0x00007fc5b28515dc in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229
#41 0x00007fc5b45a19cf in kdemain () at /usr/lib/x86_64-linux-gnu/libkdeinit5_kwin_x11.so
#42 0x00007fc5b41f2a40 in __libc_start_main (main=0x400830 <main>, argc=3, argv=0x7fff592dba68, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff592dba58) at libc-start.c:289
#43 0x0000000000400869 in _start ()

Reported using DrKonqi
Comment 1 Thomas Lübking 2016-03-07 17:25:37 UTC
crash on exit, exit apparently caused by QtQuick reading into no gl context - or similar (as if qtquick needed a particular reason to crash)

Use the breeze decoration...