In dual-monitor setup turning off one screen makes kwin_wayland crash, following is backtrace. Steps to reproduce: - Login into kwin session - Turnoff monitor - crash Backtrace: #0 0x0000000000000031 in ?? () #1 0x00007ffb90265ea0 in KWin::DrmBuffer::releaseGbm (this=0x2275ff0) at /home/bshah/kdesrc/source/kwin/plugins/platforms/drm/drm_buffer.cpp:136 #2 0x00007ffb90265e6a in KWin::DrmBuffer::~DrmBuffer (this=0x2275ff0) at /home/bshah/kdesrc/source/kwin/plugins/platforms/drm/drm_buffer.cpp:109 #3 0x00007ffb90265d27 in KWin::gbmCallback (bo=0x17cda20, data=0x16bac70) at /home/bshah/kdesrc/source/kwin/plugins/platforms/drm/drm_buffer.cpp:68 #4 0x00007ffb9763ee93 in gbm_bo_destroy () from /usr/lib/libgbm.so.1 #5 0x00007ffb9c67318f in ?? () from /usr/lib/libEGL.so.1 #6 0x00007ffb9c66b675 in ?? () from /usr/lib/libEGL.so.1 #7 0x00007ffb9c660c53 in eglMakeCurrent () from /usr/lib/libEGL.so.1 #8 0x00007ffb9026e4f3 in KWin::EglGbmBackend::makeContextCurrent (this=0x17d3750, output=...) at /home/bshah/kdesrc/source/kwin/plugins/platforms/drm/egl_gbm_backend.cpp:180 #9 0x00007ffb9026ea7a in KWin::EglGbmBackend::prepareRenderingForScreen (this=0x17d3750, screenId=0) at /home/bshah/kdesrc/source/kwin/plugins/platforms/drm/egl_gbm_backend.cpp:265 #10 0x00007ffb9026ebc6 in non-virtual thunk to KWin::EglGbmBackend::prepareRenderingForScreen(int) () at /home/bshah/kdesrc/source/kwin/plugins/platforms/drm/egl_gbm_backend.cpp:262 #11 0x00007ffbabdba5e4 in KWin::SceneOpenGL::paint (this=0x1947af0, damage=..., toplevels=...) at /home/bshah/kdesrc/source/kwin/scene_opengl.cpp:701 #12 0x00007ffbabd9530b in KWin::Compositor::performCompositing (this=0x17d6cd0) at /home/bshah/kdesrc/source/kwin/composite.cpp:737 #13 0x00007ffbabd965c8 in KWin::Compositor::timerEvent (this=0x17d6cd0, te=0x7ffc3c171050) at /home/bshah/kdesrc/source/kwin/composite.cpp:625 #14 0x00007ffba27e0303 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5 #15 0x00007ffba3493e3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5 #16 0x00007ffba349b5b1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5 #17 0x00007ffba27b3c80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5 #18 0x00007ffba280751e in QTimerInfoList::activateTimers() () from /usr/lib/libQt5Core.so.5 #19 0x00007ffba28054a8 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5 #20 0x00007ffb9204f45d in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/kde/lib64/plugins/platforms/KWinQpaPlugin.so #21 0x00007ffba27b20da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5 #22 0x00007ffba27ba5cc in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5 #23 0x000000000040c6f4 in main (argc=4, argv=0x7ffc3c171c78) at /home/bshah/kdesrc/source/kwin/main_wayland.cpp:741
How did you turn off the screen? Asking as that's something I actually tested, so I assume you turn it off differently.
On Sat, Oct 08, 2016 at 01:22:31PM +0000, Martin Gräßlin via KDE Bugzilla wrote: > How did you turn off the screen? Asking as that's something I actually tested, > so I assume you turn it off differently. Umm, well I just used the power button on my external screen.. nothing more special..
The DRM plugin was refactored a lot. I don't think the backtrace applies at all anymore - even if the crash still exists.