Bug 352423

Summary: Kwin crash on resume from sleep
Product: [Plasma] kwin Reporter: David <davidsboogs>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description David 2015-09-08 06:55:14 UTC
Application: kwin_x11 (5.2.2)

Qt Version: 5.4.1
Operating System: Linux 3.19.0-22-generic x86_64
Distribution: Ubuntu 15.04

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

When I unlocked the screen after resuming from sleep (Suspend to RAM), I saw the crash reporting assistant, and no window decorations initially, although kwin restarted by itself while the crash handler was still open.

- Unusual behavior I noticed:

The lock dialog (sddm) had some display corruption in the clock. It sometimes does on resume from sleep.

-- 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 0x7fd64c712800 (LWP 2057))]

Thread 8 (Thread 0x7fd62679f700 (LWP 2078)):
#0  0x00007fd64c1fc743 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fd64aa46101 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) (nfds=20, fdread=fdread@entry=0x7fd61c000a98, fdwrite=fdwrite@entry=0x7fd61c000d28, fdexcept=fdexcept@entry=0x7fd61c000fb8, orig_timeout=orig_timeout@entry=0x0) at kernel/qcore_unix.cpp:75
#2  0x00007fd64aa47cd2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (timeout=0x0, exceptfds=0x7fd61c000fb8, writefds=0x7fd61c000d28, readfds=0x7fd61c000a98, nfds=<optimized out>, this=0x7fd61c0008e0) at kernel/qeventdispatcher_unix.cpp:320
#3  0x00007fd64aa47cd2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (this=this@entry=0x7fd61c000900, flags=..., flags@entry=..., timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:196
#4  0x00007fd64aa48275 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fd61c0008e0, flags=...) at kernel/qeventdispatcher_unix.cpp:607
#5  0x00007fd64a9ef3e2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fd62679eda0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007fd64a7aeb44 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007fd644661f65 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007fd64a7b3b0e in QThreadPrivate::start(void*) (arg=0x2901c30) at thread/qthread_unix.cpp:337
#9  0x00007fd64382e6aa in start_thread (arg=0x7fd62679f700) at pthread_create.c:333
#10 0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7fd60f635700 (LWP 2166)):
#0  0x00007fd643833da0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fd6495b8644 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#2  0x00007fd6495b8689 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#3  0x00007fd64382e6aa in start_thread (arg=0x7fd60f635700) at pthread_create.c:333
#4  0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7fd58cb3f700 (LWP 2199)):
#0  0x00007fd64c1fc743 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fd64aa46101 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) (nfds=30, fdread=fdread@entry=0x7fd588093b88, fdwrite=fdwrite@entry=0x7fd588093e18, fdexcept=fdexcept@entry=0x7fd5880940a8, orig_timeout=orig_timeout@entry=0x0) at kernel/qcore_unix.cpp:75
#2  0x00007fd64aa47cd2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (timeout=0x0, exceptfds=0x7fd5880940a8, writefds=0x7fd588093e18, readfds=0x7fd588093b88, nfds=<optimized out>, this=0x7fd58800a070) at kernel/qeventdispatcher_unix.cpp:320
#3  0x00007fd64aa47cd2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (this=this@entry=0x7fd5880939f0, flags=..., flags@entry=..., timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:196
#4  0x00007fd64aa48275 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fd58800a070, flags=...) at kernel/qeventdispatcher_unix.cpp:607
#5  0x00007fd64a9ef3e2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fd58cb3eda0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007fd64a7aeb44 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007fd644661f65 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007fd64a7b3b0e in QThreadPrivate::start(void*) (arg=0x31787f0) at thread/qthread_unix.cpp:337
#9  0x00007fd64382e6aa in start_thread (arg=0x7fd58cb3f700) at pthread_create.c:333
#10 0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7fd625115700 (LWP 15022)):
#0  0x00007fd643833da0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fd64a7b4c6b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0xefa5de0) at thread/qwaitcondition_unix.cpp:128
#2  0x00007fd64a7b4c6b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x1028f5f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:200
#3  0x00007fd64983ffab in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#4  0x00007fd6498403a0 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007fd64a7b3b0e in QThreadPrivate::start(void*) (arg=0x1028f570) at thread/qthread_unix.cpp:337
#6  0x00007fd64382e6aa in start_thread (arg=0x7fd625115700) at pthread_create.c:333
#7  0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7fd624914700 (LWP 31043)):
#0  0x00007fd643833da0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fd64a7b4c6b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x499a520) at thread/qwaitcondition_unix.cpp:128
#2  0x00007fd64a7b4c6b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x11753980, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:200
#3  0x00007fd64983ffab in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#4  0x00007fd6498403a0 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007fd64a7b3b0e in QThreadPrivate::start(void*) (arg=0x11753900) at thread/qthread_unix.cpp:337
#6  0x00007fd64382e6aa in start_thread (arg=0x7fd624914700) at pthread_create.c:333
#7  0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fd4c64dc700 (LWP 17535)):
#0  0x00007fd64c1fc743 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fd64aa46101 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) (nfds=34, fdread=fdread@entry=0x7fd4c0000a78, fdwrite=fdwrite@entry=0x7fd4c0000d08, fdexcept=fdexcept@entry=0x7fd4c0000f98, orig_timeout=orig_timeout@entry=0x0) at kernel/qcore_unix.cpp:75
#2  0x00007fd64aa47cd2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (timeout=0x0, exceptfds=0x7fd4c0000f98, writefds=0x7fd4c0000d08, readfds=0x7fd4c0000a78, nfds=<optimized out>, this=0x7fd4c00008c0) at kernel/qeventdispatcher_unix.cpp:320
#3  0x00007fd64aa47cd2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) (this=this@entry=0x7fd4c00008e0, flags=..., flags@entry=..., timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:196
#4  0x00007fd64aa48275 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fd4c00008c0, flags=...) at kernel/qeventdispatcher_unix.cpp:607
#5  0x00007fd64a9ef3e2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fd4c64dbda0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007fd64a7aeb44 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007fd644661f65 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007fd64a7b3b0e in QThreadPrivate::start(void*) (arg=0x111a6a70) at thread/qthread_unix.cpp:337
#9  0x00007fd64382e6aa in start_thread (arg=0x7fd4c64dc700) at pthread_create.c:333
#10 0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fd627cdd700 (LWP 9299)):
#0  0x00007fd643833da0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fd64a7b4c6b in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x1f886db0) at thread/qwaitcondition_unix.cpp:128
#2  0x00007fd64a7b4c6b in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x1d9409c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:200
#3  0x00007fd64983ffab in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#4  0x00007fd6498403a0 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007fd64a7b3b0e in QThreadPrivate::start(void*) (arg=0x1d940940) at thread/qthread_unix.cpp:337
#6  0x00007fd64382e6aa in start_thread (arg=0x7fd627cdd700) at pthread_create.c:333
#7  0x00007fd64c205eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fd64c712800 (LWP 2057)):
[KCrash Handler]
#6  0x00007fd64c19ef79 in __memcpy_sse2_unaligned () at ../sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S:35
#7  0x00007fd644ab2516 in KWin::GLVertexBuffer::setData(int, int, float const*, float const*) (this=this@entry=0xdd21d10, vertexCount=24, dim=dim@entry=2, vertices=0x1c524648, texcoords=texcoords@entry=0x0) at ../../libkwineffects/kwinglutils.cpp:2242
#8  0x00007fd64bdc1d3d in KWin::SceneOpenGL2::doPaintBackground(QVector<float> const&) (this=<optimized out>, vertices=...) at ../scene_opengl.cpp:1039
#9  0x00007fd64bdc7475 in KWin::SceneOpenGL::paintBackground(QRegion) (this=this@entry=0xf5f5a30, region=...) at ../scene_opengl.cpp:732
#10 0x00007fd64bdb0e6c in KWin::Scene::paintSimpleScreen(int, QRegion) (this=this@entry=0xf5f5a30, orig_mask=orig_mask@entry=8, region=...) at ../scene.cpp:369
#11 0x00007fd64bdc1513 in KWin::SceneOpenGL2::paintSimpleScreen(int, QRegion) (this=this@entry=0xf5f5a30, mask=mask@entry=8, region=...) at ../scene_opengl.cpp:1005
#12 0x00007fd64bdae205 in KWin::Scene::finalPaintScreen(int, QRegion, KWin::ScreenPaintData&) (this=0xf5f5a30, mask=mask@entry=8, region=..., data=...) at ../scene.cpp:199
#13 0x00007fd64bde4cff in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=0xf5f09b0, mask=mask@entry=8, region=..., data=...) at ../effects.cpp:393
#14 0x00007fd649fbf57f in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=this@entry=0xde627d0, mask=mask@entry=8, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:535
#15 0x00007fd64bde4cad in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=0xf5f09b0, mask=mask@entry=8, region=..., data=...) at ../effects.cpp:390
#16 0x00007fd649fbf57f in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=this@entry=0x6ece8d0, mask=mask@entry=8, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:535
#17 0x00007fd64bde4cad in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=0xf5f09b0, mask=mask@entry=8, region=..., data=...) at ../effects.cpp:390
#18 0x00007fd649fbf57f in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=this@entry=0x4237fc0, mask=mask@entry=8, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:535
#19 0x00007fd64bde4cad in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) (this=0xf5f09b0, mask=8, region=..., data=...) at ../effects.cpp:390
#20 0x00007fd64bdade6a in KWin::Scene::paintScreen(int*, QRegion const&, QRegion const&, QRegion*, QRegion*) (this=this@entry=0xf5f5a30, mask=mask@entry=0x7ffd8711f09c, damage=..., repaint=..., updateRegion=updateRegion@entry=0x7ffd8711f0b0, validRegion=validRegion@entry=0x7ffd8711f0c0) at ../scene.cpp:149
#21 0x00007fd64bdc7da7 in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) (this=0xf5f5a30, damage=..., toplevels=...) at ../scene_opengl.cpp:651
#22 0x00007fd64bda7973 in KWin::Compositor::performCompositing() (this=0x27fec80) at ../composite.cpp:658
#23 0x00007fd64aa236f3 in QObject::event(QEvent*) (this=0x27fec80, e=<optimized out>) at kernel/qobject.cpp:1267
#24 0x00007fd64b2fbb2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=0x2594740, receiver=0x27fec80, e=0x7ffd8711f4d0) at kernel/qapplication.cpp:3720
#25 0x00007fd64b301000 in QApplication::notify(QObject*, QEvent*) (this=0x7ffd8711f710, receiver=0x27fec80, e=0x7ffd8711f4d0) at kernel/qapplication.cpp:3503
#26 0x00007fd64a9f1c2b in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffd8711f710, receiver=0x27fec80, event=event@entry=0x7ffd8711f4d0) at kernel/qcoreapplication.cpp:935
#27 0x00007fd64aa49ae5 in QTimerInfoList::activateTimers() (event=0x7ffd8711f4d0, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
#28 0x00007fd64aa49ae5 in QTimerInfoList::activateTimers() (this=0x269d8b8) at kernel/qtimerinfo_unix.cpp:635
#29 0x00007fd64aa476a0 in QEventDispatcherUNIX::activateTimers() (this=this@entry=0x269c330) at kernel/qeventdispatcher_unix.cpp:549
#30 0x00007fd64aa48243 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x269c330, flags=flags@entry=...) at kernel/qeventdispatcher_unix.cpp:611
#31 0x00007fd6359c896d in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at eventdispatchers/qunixeventdispatcher.cpp:62
#32 0x00007fd64a9ef3e2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffd8711f630, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#33 0x00007fd64a9f702c in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1188
#34 0x00007fd64ad3631c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1510
#35 0x00007fd64b2f77a5 in QApplication::exec() () at kernel/qapplication.cpp:2956
#36 0x00007fd64c4cd8c3 in kdemain(int, char**) (argc=1, argv=0x7ffd8711f868) at ../main_x11.cpp:294
#37 0x00007fd64c11fa40 in __libc_start_main (main=0x400790 <main(int, char**)>, argc=3, argv=0x7ffd8711f868, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd8711f858) at libc-start.c:289
#38 0x00000000004007c9 in _start ()

Reported using DrKonqi
Comment 1 Martin Flöser 2015-09-08 12:25:05 UTC

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