Bug 358133 - KWin Crashed After Resuming from Idle
Summary: KWin Crashed After Resuming from Idle
Status: RESOLVED DUPLICATE of bug 355103
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 5.5.3
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
: 364101 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-01-17 16:33 UTC by kerrylange
Modified: 2016-06-17 14:26 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:
thomas.luebking: NVIDIA+


Attachments
Additionnal information for bug kde#358133. Output file KWin supportInformation (5.68 KB, text/plain)
2016-05-09 17:05 UTC, Thierry
Details

Note You need to log in before you can comment on or make changes to this bug.
Description kerrylange 2016-01-17 16:33:49 UTC
Application: kwin_x11 (5.5.3)

Qt Version: 5.5.1
Operating System: Linux 4.1.13-5-default x86_64
Distribution: "openSUSE Leap 42.1 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
The computer "awoke" (monitors came back on) and as soon as it did, KWin had crashed.

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

Thread 5 (Thread 0x7fce34ebd700 (LWP 1605)):
#0  0x00007fce520e32b3 in select () at /lib64/libc.so.6
#1  0x00007fce4ff13179 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () at /usr/lib64/libQt5Core.so.5
#2  0x00007fce4ff14af5 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) () at /usr/lib64/libQt5Core.so.5
#3  0x00007fce4ff14f3b in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007fce4febdd53 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#5  0x00007fce4fcdf61a in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#6  0x00007fce4a1e5df8 in  () at /usr/lib64/libQt5Qml.so.5
#7  0x00007fce4fce432f in  () at /usr/lib64/libQt5Core.so.5
#8  0x00007fce517150a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007fce520ea04d in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7fce1ffff700 (LWP 1666)):
#0  0x00007fce5171905f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fce4ec6986b in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007fce4ec69899 in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007fce517150a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007fce520ea04d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fce26e7e700 (LWP 19343)):
#0  0x00007fce520e32b3 in select () at /lib64/libc.so.6
#1  0x00007fce4ff13179 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () at /usr/lib64/libQt5Core.so.5
#2  0x00007fce4ff14af5 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) () at /usr/lib64/libQt5Core.so.5
#3  0x00007fce4ff14f3b in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007fce4febdd53 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#5  0x00007fce4fcdf61a in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#6  0x00007fce4a1e5df8 in  () at /usr/lib64/libQt5Qml.so.5
#7  0x00007fce4fce432f in  () at /usr/lib64/libQt5Core.so.5
#8  0x00007fce517150a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007fce520ea04d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7fce35acd700 (LWP 19344)):
#0  0x00007fce5171905f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fce4fce534b in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQt5Core.so.5
#2  0x00007fce4a8d825b in  () at /usr/lib64/libQt5Quick.so.5
#3  0x00007fce4a8d86f3 in  () at /usr/lib64/libQt5Quick.so.5
#4  0x00007fce4fce432f in  () at /usr/lib64/libQt5Core.so.5
#5  0x00007fce517150a4 in start_thread () at /lib64/libpthread.so.0
#6  0x00007fce520ea04d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7fce52769840 (LWP 1575)):
[KCrash Handler]
#6  0x00007fce52094e19 in __memcpy_sse2_unaligned () at /lib64/libc.so.6
#7  0x00007fce4b049193 in KWin::GLVertexBuffer::setData(int, int, float const*, float const*) () at /usr/lib64/libkwinglutils.so.7
#8  0x00007fce51cb81bd in  () at /usr/lib64/libkwin.so.5
#9  0x00007fce51cbe805 in  () at /usr/lib64/libkwin.so.5
#10 0x00007fce51caa8c3 in  () at /usr/lib64/libkwin.so.5
#11 0x00007fce51cb9f83 in  () at /usr/lib64/libkwin.so.5
#12 0x00007fce51ca7465 in  () at /usr/lib64/libkwin.so.5
#13 0x00007fce51cce2b0 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#14 0x00007fce4f47728f in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwineffects.so.7
#15 0x00007fce51cce270 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#16 0x00007fce4f47728f in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwineffects.so.7
#17 0x00007fce51cce270 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#18 0x00007fce51ca70fa in  () at /usr/lib64/libkwin.so.5
#19 0x00007fce51cbf357 in  () at /usr/lib64/libkwin.so.5
#20 0x00007fce51c9f7a8 in KWin::Compositor::performCompositing() () at /usr/lib64/libkwin.so.5
#21 0x00007fce4fef08bc in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#22 0x00007fce50ba3e7c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#23 0x00007fce50ba8cc8 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#24 0x00007fce4febfe95 in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#25 0x00007fce4ff1677d in QTimerInfoList::activateTimers() () at /usr/lib64/libQt5Core.so.5
#26 0x00007fce4ff14fc8 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#27 0x00007fce38ee633d in  () at /usr/lib64/libQt5XcbQpa.so.5
#28 0x00007fce4febdd53 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#29 0x00007fce4fec58f6 in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#30 0x00007fce523b1887 in kdemain () at /usr/lib64/libkdeinit5_kwin_x11.so
#31 0x00007fce52026b05 in __libc_start_main () at /lib64/libc.so.6
#32 0x000000000040085e in _start ()

Reported using DrKonqi
Comment 1 Thomas Lübking 2016-01-17 16:40:20 UTC
please attach the output of
   qdbus org.kde.KWin /KWin supportInformation
Comment 2 kerrylange 2016-01-17 16:52:39 UTC
(In reply to Thomas Lübking from comment #1)
> please attach the output of
>    qdbus org.kde.KWin /KWin supportInformation

How do I get that output?
Comment 3 Thomas Lübking 2016-01-17 17:36:34 UTC
run "konsole" and there enter

   qdbus org.kde.KWin /KWin supportInformation > kwin.support

kwin.support will contain the output.
Ensure to not have suspended the compositor when running this (it'd be worthless)
Comment 4 Thierry 2016-05-08 07:10:15 UTC
Hi!
kwin is still crashes when I go to a full screen application.
I think of a memory access problem ...
Here is the error report:

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

 Thread 5 (Thread 0x7fde7c1c2700 (LWP 9721)):
 #0  0x00007fde96164bbd in poll () at /lib64/libc.so.6
 #1  0x00007fde93a97422 in  () at /usr/lib64/libxcb.so.1
 #2  0x00007fde93a9900f in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
 #3  0x00007fde7d098d69 in  () at /usr/lib64/libQt5XcbQpa.so.5
 #4  0x00007fde93d5b079 in  () at /usr/lib64/libQt5Core.so.5
 #5  0x00007fde9577f0a4 in start_thread () at /lib64/libpthread.so.0
 #6  0x00007fde9616cfed in clone () at /lib64/libc.so.6
 

 Thread 4 (Thread 0x7fde7a0b5700 (LWP 9728)):
 #0  0x00007fde96166253 in select () at /lib64/libc.so.6
 #1  0x00007fde93f688e9 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () at /usr/lib64/libQt5Core.so.5
 #2  0x00007fde93f6a1b5 in  QEventDispatcherUNIXPrivate::doSelect(QFlags<QEven   tLoop::ProcessEventsFlag>, timespec*) () at  /usr/lib64/libQt5Core.so.5
 #3  0x00007fde93f6a5f7 in  QEventDispatcherUNIX::processEvents(QFlags<QEventL   oop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
 #4  0x00007fde93f1a04b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsF  lag>) () at /usr/lib64/libQt5Core.so.5
 #5  0x00007fde93d565da in QThread::exec() () at /usr/lib64/libQt5Core.so.5
 #6  0x00007fde8cda3095 in  () at /usr/lib64/libQt5DBus.so.5
 #7  0x00007fde93d5b079 in  () at /usr/lib64/libQt5Core.so.5
 #8  0x00007fde9577f0a4 in start_thread () at /lib64/libpthread.so.0
 #9  0x00007fde9616cfed in clone () at /lib64/libc.so.6
 

 Thread 3 (Thread 0x7fde6bfff700 (LWP 9730)):
 #0  0x00007fde96166253 in select () at /lib64/libc.so.6
 #1  0x00007fde93f688e9 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () at /usr/lib64/libQt5Core.so.5
 #2  0x00007fde93f6a1b5 in  QEventDispatcherUNIXPrivate::doSelect(QFlags<QEven   tLoop::ProcessEventsFlag>, timespec*) () at  /usr/lib64/libQt5Core.so.5
 #3  0x00007fde93f6a5f7 in  QEventDispatcherUNIX::processEvents(QFlags<QEventL   oop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
 #4  0x00007fde93f1a04b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsF  lag>) () at /usr/lib64/libQt5Core.so.5
 #5  0x00007fde93d565da in QThread::exec() () at /usr/lib64/libQt5Core.so.5
 #6  0x00007fde8de1c4d8 in  () at /usr/lib64/libQt5Qml.so.5
 #7  0x00007fde93d5b079 in  () at /usr/lib64/libQt5Core.so.5
 #8  0x00007fde9577f0a4 in start_thread () at /lib64/libpthread.so.0
 #9  0x00007fde9616cfed in clone () at /lib64/libc.so.6
 

 Thread 2 (Thread 0x7fde68ce0700 (LWP 9733)):
 #0  0x00007fde9578303f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
 #1  0x00007fde92cd197b in  () at /usr/lib64/libQt5Script.so.5
 #2  0x00007fde92cd19a9 in  () at /usr/lib64/libQt5Script.so.5
 #3  0x00007fde9577f0a4 in start_thread () at /lib64/libpthread.so.0
 #4  0x00007fde9616cfed in clone () at /lib64/libc.so.6
 

 Thread 1 (Thread 0x7fde967ed840 (LWP 9717)):
 [KCrash Handler]
 #6  0x00007fde96117d79 in __memcpy_sse2_unaligned () at /lib64/libc.so.6
 #7  0x00007fde8ee79643 in KWin::GLVertexBuffer::setData(int, int, float  const*, float const*) () at /usr/lib64/libkwinglutils.so.8
 #8  0x00007fde95d3482e in  () at /usr/lib64/libkwin.so.5
 #9  0x00007fde95d3a935 in  () at /usr/lib64/libkwin.so.5
 #10 0x00007fde95d2701e in  () at /usr/lib64/libkwin.so.5
 #11 0x00007fde95d34323 in  () at /usr/lib64/libkwin.so.5
 #12 0x00007fde95d28315 in  () at /usr/lib64/libkwin.so.5
 #13 0x00007fde95d4a9f0 in KWin::EffectsHandlerImpl::paintScreen(int,  QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
 #14 0x00007fde934e246f in KWin::Effect::paintScreen(int, QRegion,  KWin::ScreenPaintData&) () at /usr/lib64/libkwineffects.so.8
 #15 0x00007fde95d4a9b0 in KWin::EffectsHandlerImpl::paintScreen(int,  QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
 #16 0x00007fde934e246f in KWin::Effect::paintScreen(int, QRegion,  KWin::ScreenPaintData&) () at /usr/lib64/libkwineffects.so.8
 #17 0x00007fde95d4a9b0 in KWin::EffectsHandlerImpl::paintScreen(int,  QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
 #18 0x00007fde934e246f in KWin::Effect::paintScreen(int, QRegion,  KWin::ScreenPaintData&) () at /usr/lib64/libkwineffects.so.8
 #19 0x00007fde95d4a9b0 in KWin::EffectsHandlerImpl::paintScreen(int,  QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
 #20 0x00007fde95d27fb8 in  () at /usr/lib64/libkwin.so.5
 #21 0x00007fde95d3b4d4 in  () at /usr/lib64/libkwin.so.5
 #22 0x00007fde95d1c588 in KWin::Compositor::performCompositing() () at /usr/lib64/libkwin.so.5
 #23 0x00007fde93f46fc4 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
 #24 0x00007fde94c2060c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
 #25 0x00007fde94c24a22 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
 #26 0x00007fde93f1c005 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
 #27 0x00007fde93f6bd4e in QTimerInfoList::activateTimers() () at /usr/lib64/libQt5Core.so.5
 #28 0x00007fde93f6a698 in  QEventDispatcherUNIX::processEvents(QFlags<QEventL   oop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
 #29 0x00007fde7d0fa7dd in  () at /usr/lib64/libQt5XcbQpa.so.5
 #30 0x00007fde93f1a04b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsF  lag>) () at /usr/lib64/libQt5Core.so.5
 #31 0x00007fde93f21f56 in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
 #32 0x00007fde96435d6a in kdemain () at /usr/lib64/libkdeinit5_kwin_x11.so
 #33 0x00007fde960a9b05 in __libc_start_main () at /lib64/libc.so.6
 #34 0x00000000004007fe in _start ()
Comment 5 Thomas Lübking 2016-05-08 09:46:34 UTC
see comment #3 (and better also list the Qt version)
Comment 6 Thierry 2016-05-09 05:45:22 UTC
Hi!
I performed the operation above. I hope it worked.
Interestingly, I have no error with kwin since I disabled kscreen.
I disabled kscreen because the double screen configuration was not retained.
Would the two errors?
Greetings
Comment 7 Thomas Lübking 2016-05-09 06:16:28 UTC
I'd like to see the output of the command ;-)

Disabling kscreen will prevent the screen re-layout;
Qt is known to be über-crashy on randr events but this one might rather relate to a memory transferral between system and video RAM by the GPU driver.
Comment 8 Thierry 2016-05-09 17:05:28 UTC
Created attachment 98858 [details]
Additionnal information for bug kde#358133. Output file KWin supportInformation

Hi!
I put the output file attached to this message.
Regards,
Comment 9 Thomas Lübking 2016-05-09 18:38:40 UTC
Yupp, fits pattern of bug #355103 and friends.
I attached you there, since we need a reply from the OP to dupe this bug (but he's likely on nvidia as well ;-)

> Compositing Type: OpenGL
> OpenGL vendor string: NVIDIA Corporation
> OpenGL renderer string: GeForce GTX 560/PCIe/SSE2
> OpenGL version string: 3.1.0 NVIDIA 361.42
> OpenGL platform interface: GLX
> OpenGL shading language version string: 1.40 NVIDIA via Cg compiler
> Driver: NVIDIA
> Driver version: 361.42
> GPU class: GF100
Comment 10 Thomas Lübking 2016-06-08 16:17:18 UTC
*** Bug 364101 has been marked as a duplicate of this bug. ***
Comment 11 Thierry 2016-06-10 19:34:12 UTC
Hi Thomas!
Big update yesterday including the Nvidia drivers on openSUSE 42.1 Leap.
What gives me as config:
    KDE Plasma: 5.6.4
    KDE Frameworks: 5.22.0
    Qt: 5.6.0
    Kernel: 4.1.21-14-default
    Nvidia driver: 367.18
I can not reproduce the bug despite a dozen tests.
The old version of the driver is, for me, the cause of the problems.
Thank you for your help and consideration bug!
Cordially
Comment 12 Thomas Lübking 2016-06-10 21:13:29 UTC
Thanks for the update, however please notice that this bug can be heuristic (due to memory decay in the GPU)
#344326 will likely be resolved by listening to NV_robustness_video_memory_purge once it's provided and utilized in kwin. For the time being, let's hope nvidia acts more robust wrt to their memory.
Comment 13 Thomas Lübking 2016-06-17 14:26:35 UTC

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