https://bugs.kde.org/show_bug.cgi?id=522005
--- Comment #4 from Simeon Andreev <[email protected]> --- Created attachment 193657 --> https://bugs.kde.org/attachment.cgi?id=193657&action=edit Periodic gstack calls for kwin_wayland process, when no hang is seen. I decreased the sleep to 1 sec and captured some stack traces with downgraded packages (and so without a hang). The "Thread 1" stack trace with the downgraded packages: Thread 1 (Thread 0x7f4d348a1c80 (LWP 174024) "kwin_wayland"): #0 0x00007f4d3e7c6244 in ??? () at /usr/lib/libkwin.so.6 #1 0x00007f4d3e7c6602 in KWin::Region::sliceBand(QSpan<KWin::Rect const, 18446744073709551615ul>, int, int, KWin::Region::BandRef const&) () at /usr/lib/libkwin.so.6 #2 0x00007f4d3e7c6a78 in KWin::Region::unite(QSpan<KWin::Rect const, 18446744073709551615ul>, QSpan<KWin::Rect const, 18446744073709551615ul>) () at /usr/lib/libkwin.so.6 #3 0x00007f4d3e7c6ee0 in KWin::Region::united(KWin::Region const&) const () at /usr/lib/libkwin.so.6 #4 0x00007f4d3e7bb7b9 in ??? () at /usr/lib/libkwin.so.6 #5 0x00007f4d3e975731 in KWin::SurfaceItemXwayland::opaque() const () at /usr/lib/libkwin.so.6 #6 0x00007f4d3e97f47b in ??? () at /usr/lib/libkwin.so.6 #7 0x00007f4d3e97f889 in ??? () at /usr/lib/libkwin.so.6 #8 0x00007f4d3e97f889 in ??? () at /usr/lib/libkwin.so.6 #9 0x00007f4d3e97fccc in KWin::WorkspaceScene::preparePaintSimpleScreen() () at /usr/lib/libkwin.so.6 #10 0x00007f4d3e97a126 in KWin::WorkspaceScene::prePaint(KWin::SceneView*) () at /usr/lib/libkwin.so.6 #11 0x00007f4d3e79b978 in KWin::Compositor::composite(KWin::RenderLoop*) () at /usr/lib/libkwin.so.6 #12 0x00007f4d3bbf081b in ??? () at /usr/lib/libQt6Core.so.6 #13 0x00007f4d3e7cc5db in KWin::RenderLoop::frameRequested(KWin::RenderLoop*) () at /usr/lib/libkwin.so.6 #14 0x00007f4d3bbe7cf9 in QObject::event(QEvent*) () at /usr/lib/libQt6Core.so.6 #15 0x00007f4d3cf0411f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt6Widgets.so.6 #16 0x00007f4d3bb83658 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt6Core.so.6 #17 0x00007f4d3bd6b2f5 in QTimerInfoList::activateTimers() () at /usr/lib/libQt6Core.so.6 #18 0x00007f4d3bd76bd2 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6 #19 0x00007f4d3cb83543 in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Gui.so.6 #20 0x00007f4d3bb91983 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6 #21 0x00007f4d3bb86eaa in QCoreApplication::exec() () at /usr/lib/libQt6Core.so.6 #22 0x000055c0ff36601e in ??? () #23 0x00007f4d3b227741 in ??? () at /usr/lib/libc.so.6 #24 0x00007f4d3b227879 in __libc_start_main () at /usr/lib/libc.so.6 #25 0x000055c0ff36a485 in ??? () >From the hanging session, the stack traces look like this: Thread 1 (Thread 0x7fbfa423a180 (LWP 1224) "kwin_wayland"): #0 0x00007fbfae3e3174 in KWin::RegionF::coalesceBands(KWin::RegionF::BandRef const&, KWin::RegionF::BandRef const&) () from /usr/lib/libkwin.so.6 #1 0x00007fbfae3e3ea1 in KWin::RegionF::sliceBand(QSpan<KWin::RectF const, 18446744073709551615ul>, double, double, KWin::RegionF::BandRef const&) () from /usr/lib/libkwin.so.6 #2 0x00007fbfae3e42fc in KWin::RegionF::unite(QSpan<KWin::RectF const, 18446744073709551615ul>, QSpan<KWin::RectF const, 18446744073709551615ul>) () from /usr/lib/libkwin.so.6 #3 0x00007fbfae3e4873 in KWin::RegionF::united(KWin::RegionF const&) const () from /usr/lib/libkwin.so.6 #4 0x00007fbfae6dee54 in KWin::X11Window::updateShapeRegion() () from /usr/lib/libkwin.so.6 #5 0x00007fbfae6ca1fa in KWin::X11Window::windowEvent(xcb_generic_event_t*) () from /usr/lib/libkwin.so.6 #6 0x00007fbfae6ca433 in KWin::Workspace::workspaceEvent(xcb_generic_event_t*) () from /usr/lib/libkwin.so.6 #7 0x00005625538b8efe in ?? () #8 0x00007fbfab7f081b in ?? () from /usr/lib/libQt6Core.so.6 #9 0x00007fbfab803dc0 in QSocketNotifier::event(QEvent*) () from /usr/lib/libQt6Core.so.6 #10 0x00007fbfac90411f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt6Widgets.so.6 #11 0x00007fbfab783658 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt6Core.so.6 #12 0x00007fbfab976277 in QEventDispatcherUNIXPrivate::activateSocketNotifiers() () from /usr/lib/libQt6Core.so.6 #13 0x00007fbfab976ea4 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Core.so.6 #14 0x00007fbfac583543 in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Gui.so.6 #15 0x00007fbfab791983 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Core.so.6 #16 0x00007fbfab786eaa in QCoreApplication::exec() () from /usr/lib/libQt6Core.so.6 #17 0x00005625538a2020 in ?? () #18 0x00007fbfaae27741 in ?? () from /usr/lib/libc.so.6 #19 0x00007fbfaae27879 in __libc_start_main () from /usr/lib/libc.so.6 #20 0x00005625538a6635 in ?? () I'm not sure this helps much. I did follow the guide to compile plasma-desktop here: https://github.com/KDE/kwin/blob/master/CONTRIBUTING.md I now have a developer session I can log into, I do see the hang in the session. I assume I can also change kwin code, e.g. adding extra log entries, checking out / reverting commits and so on - anything that helps. Bisecting will probably be too much for me, considering how long it takes to start a session, test for the hang, reboot my PC from the power button (I try not to do that often also). -- You are receiving this mail because: You are watching all bug changes.
