KWin crashes when hitting alt-tab

I went with this to KDE bug tracker first, but they pointed me here because it was apparently problem with NVIDIA driver, not KDE/Plasma. so.

when running KDE and switching applications with alt-tab as soon as the little preview boxes appear on the screen, it crashes KDE’s window manager KWin, not too hard, it comes right back, but looses GPU accelerated compositing effects.

hardware is NVidia Geforce 840m
OpenGL version string: 4.5.0 NVIDIA 384.111

here is the original (https://bugs.kde.org/show_bug.cgi?id=389543) report:

Application: kwin_x11 (5.11.5)

Qt Version: 5.9.1
Frameworks Version: 5.41.0
Operating System: Linux 4.13.0-32-generic x86_64
Distribution: Ubuntu 17.10

– Information about the crash:

  • What I was doing when the application crashed:

browsing in google chrome, and hit alt-tab to switch to another application.

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 0x7f1b8596b940 (LWP 1412))]

Thread 5 (Thread 0x7f1b5292e700 (LWP 17957)):
#0 0x00007f1b8291ab25 in QEventDispatcherUNIX::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#1 0x00007f1b828c2e3a in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2 0x00007f1b826e23ca in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3 0x00007f1b826e729d in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007f1b7e3017fc in start_thread (arg=0x7f1b5292e700) at pthread_create.c:465
#5 0x00007f1b85304b5f in clone () at …/sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f1b535ef700 (LWP 1565)):
#0 0x00007f1b7e308072 in futex_wait_cancelable (private=, expected=0, futex_word=0x7f1b81b5afb8) at …/sysdeps/unix/sysv/linux/futex-internal.h:88
#1 0x00007f1b7e308072 in __pthread_cond_wait_common (abstime=0x0, mutex=0x7f1b81b5af68, cond=0x7f1b81b5af90) at pthread_cond_wait.c:502
#2 0x00007f1b7e308072 in __pthread_cond_wait (cond=0x7f1b81b5af90, mutex=0x7f1b81b5af68) at pthread_cond_wait.c:655
#3 0x00007f1b81866bd4 in () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#4 0x00007f1b81866c19 in () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#5 0x00007f1b7e3017fc in start_thread (arg=0x7f1b535ef700) at pthread_create.c:465
#6 0x00007f1b85304b5f in clone () at …/sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f1b61b01700 (LWP 1523)):
#0 0x00007f1b852f8a4b in __GI_ppoll (fds=0x7f1b58000d38, nfds=1, timeout=, sigmask=0x0) at …/sysdeps/unix/sysv/linux/ppoll.c:39
#1 0x00007f1b82919151 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2 0x00007f1b8291a86e in QEventDispatcherUNIX::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3 0x00007f1b828c2e3a in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007f1b826e23ca in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007f1b7ce09f45 in () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#6 0x00007f1b826e729d in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007f1b7e3017fc in start_thread (arg=0x7f1b61b01700) at pthread_create.c:465
#8 0x00007f1b85304b5f in clone () at …/sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f1b63b68700 (LWP 1427)):
#0 0x00007f1b8291a7b5 in QEventDispatcherUNIX::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#1 0x00007f1b828c2e3a in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2 0x00007f1b826e23ca in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3 0x00007f1b7bfcae45 in () at /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#4 0x00007f1b826e729d in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007f1b7e3017fc in start_thread (arg=0x7f1b63b68700) at pthread_create.c:465
#6 0x00007f1b85304b5f in clone () at …/sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f1b8596b940 (LWP 1412)):
[KCrash Handler]
#6 0x00007f1b74794bd0 in () at /usr/lib/nvidia-384/libnvidia-glcore.so.384.111
#7 0x00007f1b7485b063 in () at /usr/lib/nvidia-384/libnvidia-glcore.so.384.111
#8 0x00007f1b7485f864 in () at /usr/lib/nvidia-384/libnvidia-glcore.so.384.111
#9 0x00007f1b74868a84 in () at /usr/lib/nvidia-384/libnvidia-glcore.so.384.111
#10 0x00007f1b74427a5e in () at /usr/lib/nvidia-384/libnvidia-glcore.so.384.111
#11 0x00007f1b7d4b231f in QSGBatchRenderer::Renderer::renderMergedBatch(QSGBatchRenderer::Batch const*) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#12 0x00007f1b7d4b3555 in QSGBatchRenderer::Renderer::renderBatches() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#13 0x00007f1b7d4b8cac in QSGBatchRenderer::Renderer::render() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#14 0x00007f1b7d4a966d in QSGRenderer::renderScene(QSGBindable const&) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#15 0x00007f1b7d4a9b2b in QSGRenderer::renderScene(unsigned int) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#16 0x00007f1b7d4e3f50 in QSGDefaultRenderContext::renderNextFrame(QSGRenderer*, unsigned int) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#17 0x00007f1b7d5409b8 in QQuickWindowPrivate::renderSceneGraph(QSize const&) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#18 0x00007f1b7d4d6399 in () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#19 0x00007f1b7d54ad66 in QQuickWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#20 0x00007f1b51297be3 in PlasmaQuick::Dialog::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libKF5PlasmaQuick.so.5
#21 0x00007f1b8363f46c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007f1b83646d34 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007f1b828c4de8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#24 0x00007f1b82e8fb01 in QWindowPrivate::deliverUpdateRequest() () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#25 0x00007f1b82e90019 in QWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#26 0x00007f1b7d54ad05 in QQuickWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#27 0x00007f1b51297be3 in PlasmaQuick::Dialog::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libKF5PlasmaQuick.so.5
#28 0x00007f1b8363f46c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#29 0x00007f1b83646d34 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#30 0x00007f1b828c4de8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007f1b8291c91e in QTimerInfoList::activateTimers() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007f1b8291aad2 in QEventDispatcherUNIX::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#33 0x00007f1b6b18d9ad in () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#34 0x00007f1b828c2e3a in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#35 0x00007f1b828cbda4 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007f1b855d8db6 in kdemain () at /usr/lib/x86_64-linux-gnu/libkdeinit5_kwin_x11.so
#37 0x00007f1b852111c1 in __libc_start_main (main=0x55b6501d87b0, argc=1, argv=0x7ffdc595f668, init=, fini=, rtld_fini=, stack_end=0x7ffdc595f658) at …/csu/libc-start.c:308
#38 0x000055b6501d87ea in _start ()

Reported using DrKonqi

nvidia-bug-report.log.gz (181 KB)