Bug 502769 - X11 window resize/moving causes high CPU usage and system hang. Wayland+Nvidia
Summary: X11 window resize/moving causes high CPU usage and system hang. Wayland+Nvidia
Status: RESOLVED WORKSFORME
Alias: None
Product: kwin
Classification: Plasma
Component: performance (other bugs)
Version First Reported In: 6.3.4
Platform: NixOS Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-04-14 05:17 UTC by coufdamien
Modified: 2025-05-15 03:46 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description coufdamien 2025-04-14 05:17:31 UTC
SUMMARY:
Recently both in Kde neon and nixOS when I move/resize a x11 window a few times or once, it hangs my entier system.
I didn't experience this issue 2 weeks ago.
I sadly cannot get any log as my system hangs.

STEPS TO REPRODUCE
1. Open a x11 window (I use SDL3 for that)
2. Move/resize the window once or a few time


OBSERVED RESULT
-System hangs require force shutdown.
-Or extreme lag if you can close

EXPECTED RESULT
No system hang after interacting with the window

SOFTWARE/OS VERSIONS
Operating System: NixOS 25.05
KDE Plasma Version: 6.3.4
KDE Frameworks Version: 6.12.0
Qt Version: 6.8.2
Kernel Version: 6.12.23 (64-bit)
Graphics Platform: Wayland
Processors: 12 × 12th Gen Intel® Core™ i5-12400F
Memory: 15.4 Gio of RAM
Graphics Processor: NVIDIA GeForce GTX 1060 3GB

ADDITIONAL INFORMATION
NVIDIA-SMI 570.133.07             Driver Version: 570.133.07     CUDA Version: 12.8
Comment 1 TraceyC 2025-04-14 21:37:41 UTC
I tested with Xournal++ in KDE Neon User running Plasma 6.3.4, but I'm not able to reproduce the hang. I'd like to ask a few questions to help narrow down the cause.

Does this happen on your system with X11 apps other than SDL3?

If you open the Crashed Process Viewer, do you see anything with a timestamp from around the time your system hung?

If there aren't crashes around that time, please try getting logs of the hang by running these two commands:

echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
sudo gdb -pid $(pidof kwin_wayland) -batch -ex "set logging file kwin_wayland.gdb" -ex "set logging enabled on" -ex "continue" -ex "thread apply all backtrace" -ex "quit"

After you reboot, you should have a log file "kwin_wayland.gdb" in your home directory

Then start SDL3 and cause the bug to happen.
Comment 2 TraceyC 2025-04-14 22:12:00 UTC
I did have plasmashell freeze back in February when moving a FreeTube window around, but that was with plasma Version 6.2.4, and the problem stopped happening in later plasma versions
Comment 3 coufdamien 2025-04-15 05:28:06 UTC
(In reply to TraceyC from comment #1)
> I tested with Xournal++ in KDE Neon User running Plasma 6.3.4, but I'm not
> able to reproduce the hang. I'd like to ask a few questions to help narrow
> down the cause.
> 
> Does this happen on your system with X11 apps other than SDL3?
> 
> If you open the Crashed Process Viewer, do you see anything with a timestamp
> from around the time your system hung?
> 
> If there aren't crashes around that time, please try getting logs of the
> hang by running these two commands:
> 
> echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
> sudo gdb -pid $(pidof kwin_wayland) -batch -ex "set logging file
> kwin_wayland.gdb" -ex "set logging enabled on" -ex "continue" -ex "thread
> apply all backtrace" -ex "quit"
> 
> After you reboot, you should have a log file "kwin_wayland.gdb" in your home
> directory
> 
> Then start SDL3 and cause the bug to happen.

So when it happens it leave no errors in the log. If I move the window then resize to trigger it and then click on any X11 window or spawn the right click on any other app the session hangs. I can hear it when it trigger since it pins a core at 100%.

[New LWP 2464]
[New LWP 2463]
[New LWP 2462]
[New LWP 2461]
[New LWP 1306]
[New LWP 1297]
[New LWP 1296]
[New LWP 1268]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/nix/store/rmy663w9p7xb202rcln4jjzmvivznmz8-glibc-2.40-66/lib/libthread_db.so.1".
0x00007f157570d34e in ppoll () from /nix/store/rmy663w9p7xb202rcln4jjzmvivznmz8-glibc-2.40-66/lib/libc.so.6
warning: File "/nix/store/vi9n40g3814x3f7sqnc3jvmrhr4n3ij9-glib-2.82.5/lib/libgobject-2.0.so.0.8200.5-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load:/nix/store/ik84lbv5jvjm1xxvdl8mhg52ry3xycvm-gcc-14-20241116-lib".
To enable execution of this file add
        add-auto-load-safe-path /nix/store/vi9n40g3814x3f7sqnc3jvmrhr4n3ij9-glib-2.82.5/lib/libgobject-2.0.so.0.8200.5-gdb.py
line to your configuration file "/root/.config/gdb/gdbinit".
To completely disable this security protection add
        set auto-load safe-path /
line to your configuration file "/root/.config/gdb/gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
        info "(gdb)Auto-loading safe path"
warning: File "/nix/store/vi9n40g3814x3f7sqnc3jvmrhr4n3ij9-glib-2.82.5/lib/libglib-2.0.so.0.8200.5-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load:/nix/store/ik84lbv5jvjm1xxvdl8mhg52ry3xycvm-gcc-14-20241116-lib".
[New Thread 0x7f151f6f26c0 (LWP 2751)]
[New Thread 0x7f151eef16c0 (LWP 2752)]
[New Thread 0x7f151e6f06c0 (LWP 2754)]
[New Thread 0x7f151dea66c0 (LWP 2758)]
[Detaching after vfork from child process 2761]
[Thread 0x7f151e6f06c0 (LWP 2754) exited]
[Thread 0x7f151dea66c0 (LWP 2758) exited]
[Thread 0x7f151f6f26c0 (LWP 2751) exited]
[Thread 0x7f1539fa86c0 (LWP 2464) exited]
[Thread 0x7f151eef16c0 (LWP 2752) exited]
[Thread 0x7f15397a76c0 (LWP 2463) exited]
[Thread 0x7f1533fff6c0 (LWP 2462) exited]
[Thread 0x7f153a7a96c0 (LWP 2461) exited]
[New Thread 0x7f153a7a96c0 (LWP 2776)]
[New Thread 0x7f151eef16c0 (LWP 2777)]
[New Thread 0x7f1539fa86c0 (LWP 2778)]
[New Thread 0x7f15397a76c0 (LWP 2779)]
[Thread 0x7f1539fa86c0 (LWP 2778) exited]
[Thread 0x7f15397a76c0 (LWP 2779) exited]
[Thread 0x7f151eef16c0 (LWP 2777) exited]
[Thread 0x7f153a7a96c0 (LWP 2776) exited]
[New Thread 0x7f15397a76c0 (LWP 3216)]
[New Thread 0x7f1539fa86c0 (LWP 3217)]
[New Thread 0x7f153a7a96c0 (LWP 3218)]
[New Thread 0x7f151eef16c0 (LWP 3219)]

I clicked the close button when I triggered (no response of course) it and I think its [Detaching after vfork from child process 2761].
Comment 4 TraceyC 2025-04-15 16:42:51 UTC
Thanks for that information. The detail about this being related to CPU usage is helpful.

Can you run a tool like top that will show process usage in a window alongside the xwayland application, and then cause the bug to happen?
Capture the screen with your phone if you need to in order to get a screenshot, and attach that to this report. This will help us narrow down the process that's causing the problem.

Thanks!
Comment 5 Bug Janitor Service 2025-04-30 03:47:29 UTC
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 6 Bug Janitor Service 2025-05-15 03:46:50 UTC
🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.