Bug 413960

Summary: KWin Crash on System Suspend
Product: [Plasma] kwin Reporter: nekonexus
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DOWNSTREAM    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: 5.16.5   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description nekonexus 2019-11-08 20:08:41 UTC
Application: kwin_x11 (5.16.5)

Qt Version: 5.12.4
Frameworks Version: 5.62.0
Operating System: Linux 5.3.0-20-generic x86_64
Distribution: Pop!_OS 19.10

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

Battery was low and so my laptop tried suspending in order to save power.

- Unusual behavior I noticed:

I don't know if it's because I have an Nvidia GPU, but coming back afterwards made the color-background of my login screen look corrupt, somehow.  It doesn't do this after I log in and lock my screen on purpose though.

Also, the same thing happens to the names of anything I have on my desktop at the time (for example, a link to a webpage and the entire textbox where the name of that page would be looks like a visually corrupt mess. Attempting to edit the text makes it look normal again though.

The crash can be reproduced every time.

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5593dca55a74) at ../sysdeps/unix/sysv/linux/futex-internal.h:80
[Current thread is 1 (Thread 0x7f0694550d00 (LWP 2720))]

Thread 8 (Thread 0x7f0690dbc700 (LWP 5420)):
[KCrash Handler]
#6  0x00007f06814ea480 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#7  0x00007f06813d28f0 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#8  0x00007f06813da7e3 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#9  0x00007f068144a793 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#10 0x00007f068144a959 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#11 0x00007f068144d115 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#12 0x00007f068144d88e in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#13 0x00007f06813e03d3 in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#14 0x00007f0680fdc30b in  () at /lib/x86_64-linux-gnu/libnvidia-glcore.so.435.21
#15 0x00007f0698d3f056 in QSGBatchRenderer::Renderer::renderBatches() () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#16 0x00007f0698d448e4 in QSGBatchRenderer::Renderer::render() () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#17 0x00007f0698d35420 in QSGRenderer::renderScene(QSGBindable const&) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#18 0x00007f0698d358e3 in QSGRenderer::renderScene(unsigned int) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#19 0x00007f0698d72a34 in QSGDefaultRenderContext::renderNextFrame(QSGRenderer*, unsigned int) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#20 0x00007f0698dd7cf0 in QQuickWindowPrivate::renderSceneGraph(QSize const&) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#21 0x00007f0698d7ec68 in  () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#22 0x00007f0698d829d8 in  () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#23 0x00007f0699ce6cc2 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#24 0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#25 0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f067bbea700 (LWP 5419)):
#0  0x00007f069b440d26 in __GI_ppoll (fds=0x7f0670000cd8, nfds=1, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39
#1  0x00007f0699f015f9 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f0699f02b64 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f0699eac63b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f0699ce5a75 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f06989f4319 in  () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#6  0x00007f0699ce6cc2 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#8  0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f0682fbe700 (LWP 3143)):
#0  0x00007f069b440d26 in __GI_ppoll (fds=0x7f0674000da8, nfds=1, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39
#1  0x00007f0699f015f9 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f0699f02b64 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f0699eac63b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f0699ce5a75 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f06989f4319 in  () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#6  0x00007f0699ce6cc2 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#8  0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f067b3d9700 (LWP 3009)):
#0  0x00007f069925b2c6 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7f0699869fb8) at ../sysdeps/unix/sysv/linux/futex-internal.h:80
#1  0x00007f069925b2c6 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x7f0699869f68, cond=0x7f0699869f90) at pthread_cond_wait.c:508
#2  0x00007f069925b2c6 in __pthread_cond_wait (cond=0x7f0699869f90, mutex=0x7f0699869f68) at pthread_cond_wait.c:638
#3  0x00007f069977308a in  () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#4  0x00007f06997730af in  () at /lib/x86_64-linux-gnu/libQt5Script.so.5
#5  0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#6  0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f0683fff700 (LWP 2926)):
#0  0x00007ffc906e96cb in  ()
#1  0x00007ffc906e9918 in clock_gettime ()
#2  0x00007f069b45b12b in __GI___clock_gettime (clock_id=1, tp=0x7f0683ffeb70) at ../sysdeps/unix/sysv/linux/clock_gettime.c:33
#3  0x00007f0699f04f85 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f0699f0382d in QTimerInfoList::updateCurrentTime() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f0699f03e09 in QTimerInfoList::timerWait(timespec&) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f0699f02d5c in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f0699eac63b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f0699ce5a75 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f06989f4319 in  () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#10 0x00007f0699ce6cc2 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#12 0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f0692239700 (LWP 2771)):
#0  0x00007f069b440d26 in __GI_ppoll (fds=0x7f068400b3c8, nfds=1, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39
#1  0x00007f0699f015f9 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f0699f02b64 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007f0699eac63b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f0699ce5a75 in QThread::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f0698433efa in  () at /lib/x86_64-linux-gnu/libQt5DBus.so.5
#6  0x00007f0699ce6cc2 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#8  0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f06931d2700 (LWP 2749)):
#0  0x00007f069b440c2f in __GI___poll (fds=0x7f06931d1c28, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f0699c0a917 in  () at /lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f0699c0c53a in xcb_wait_for_event () at /lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f0693509288 in  () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007f0699ce6cc2 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f0699254669 in start_thread (arg=<optimized out>) at pthread_create.c:479
#6  0x00007f069b44d323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f0694550d00 (LWP 2720)):
#0  0x00007f069925b2c6 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5593dca55a74) at ../sysdeps/unix/sysv/linux/futex-internal.h:80
#1  0x00007f069925b2c6 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5593dca55a20, cond=0x5593dca55a48) at pthread_cond_wait.c:508
#2  0x00007f069925b2c6 in __pthread_cond_wait (cond=0x5593dca55a48, mutex=0x5593dca55a20) at pthread_cond_wait.c:638
#3  0x00007f0699cecdef in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f0699cecee1 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f0698d80d87 in  () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f0698d81de7 in  () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f0698d82423 in  () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#8  0x00007f069a2a2b3d in QWindow::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#9  0x00007f0698de367f in QQuickWindow::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5
#10 0x00007f069a8c1a86 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#11 0x00007f069a8cae00 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#12 0x00007f0699eada9a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007f069a2992d6 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#14 0x00007f069a299504 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#15 0x00007f069a27326b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#16 0x00007f069350a657 in  () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#17 0x00007f0699eac63b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00007f0699eb43a6 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007f069b52687d in kdemain () at /lib/x86_64-linux-gnu/libkdeinit5_kwin_x11.so
#20 0x00007f069b3521e3 in __libc_start_main (main=0x5593dc09d060, argc=3, argv=0x7ffc90644148, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc90644138) at ../csu/libc-start.c:308
#21 0x00005593dc09d09e in _start ()
[Inferior 1 (process 2720) detached]

Reported using DrKonqi
Comment 1 Vlad Zahorodnii 2019-11-18 12:49:04 UTC
What decoration theme do you use?
Comment 2 Christoph Feck 2019-12-01 14:37:58 UTC
Crash is in the NVIDIA binary OpenGL drivers. If you can reproduce the issue with newest driver version, please report it directly to NVIDIA developers via https://devtalk.nvidia.com/default/topic/522835/linux/if-you-have-a-problem-please-read-this-first/