https://bugs.kde.org/show_bug.cgi?id=523508

Petr N. <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEEDSINFO                   |REPORTED
         Resolution|WAITINGFORINFO              |---

--- Comment #3 from Petr N. <[email protected]> ---
(In reply to TraceyC from comment #2)
> https://community.kde.org/Plasma/Debugging#Attach_gdb_to_the_plasmashell_process

Should that page "gdb" commands be prefixed with sudo for convenience? Without
sudo it fails "ptrace: Operation not permitted."
Also another thing is:
"Warning: 'set logging on', an alias for the command 'set logging enabled', is
deprecated.
Use 'set logging enabled on'.
"
Please see if you can improve the page.

Regarding issue itself, AI was able to figure out "Thread 1 (main kwin_wayland
thread) is stuck inside libgallium". Following text contains two backtraces,
you may save time first reading my text before studying the backtraces.

I have tried command (suggested on above linked /Debugging page):
sudo gdb -pid $(pidof plasmashell) -batch -ex "set logging file
plasmashell.txt" -ex "set logging on" -ex "continue" -ex "th
read apply all backtrace" -ex "quit"

reproduced issue (around the time 08:20:20 it freezed Plasma UI) and did Ctrl+C
wanting to stop. Checked the file plasmashell.txt ( https://justpaste.it/dh020
) and attaching it to AI, which says:

"
the bigger issue is timing of the capture. Since the freeze is intermittent and
you're manually interrupting, you may be capturing a post-recovery state. If
the freezes keep happening, a better approach would be catching it during the
hang (e.g., triggering the backtrace automatically via a watchdog script that
detects the freeze).

This backtrace does not  capture the freeze. All threads are in normal idle
states (poll, futex_wait, pthread_cond_wait). No thread  is spinning or stuck.

You're probably attaching to the wrong process. Plasma UI freezes on Wayland
are almost always in kwin_wayland (the compositor), not plasmashell.
"

So I have replaced $(pidof plasmashell) with $(pidof kwin_wayland) in my
command:
$ sudo gdb -pid $(pidof kwin_wayland) -batch -ex "set logging file
plasmashell_$(date --rfc-3339 date).txt" -ex "set logging on" -ex "printf \"===
TIMESTAMP: %s ===\\n\", asctime(localtime(time(NULL)))" -ex "set print elements
0" -ex "continue" -ex "printf \"=== TIMESTAMP: %s ===\\n\",
asctime(localtime(time(NULL)))" -ex "info threads" -ex "thread apply all
backtrace" -ex "quit"

And executed it during freeze 1:

8:50:22 - freeze1
8:50:34 - freeze2

Resulting log file: https://justpaste.it/fnb4o

AI summary:
"
This backtrace captured the freeze. This is exactly what was needed.
What the backtrace shows
Thread 1 (main kwin_wayland thread) is stuck inside libgallium (Mesa OpenGL
driver) during frame compositing:
#0  syscall () #1-#5  ??? () at libgallium-25.2.8-0ubuntu0.24.04.2.so    ←
stuck here#6  KWin::GLVertexBuffer::endOfFrame()#7 
KWin::ItemRendererOpenGL::endFrame()#8  KWin::WorkspaceScene::paint(...)#10
KWin::Compositor::composite(KWin::RenderLoop*)

The compositor's main render loop is blocked waiting for the GPU driver to
finish a GL operation. This is a Mesa/Gallium driver issue, not a KDE bug.
"

Can anyone skilled verify that this is not a KDE issue?

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to