-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
stuttery hardware cursor under high GPU load #4763
Comments
This doesn't happen with |
I don't think Plasma uses the DRM atomic interface. Can you report this bug to AMD? https://gitlab.freedesktop.org/drm/amd/issues |
This probably isn't an AMD bug. With the atomic interface, cursor updates are synchronized with the primary plane update. If you run https://github.com/ascent12/compositor-killer/ and get the same symptoms, it's the issue I think it is. |
Could also be due to our atomic test-only commits for cursor updates. |
The cursor is hardly moveable with I could identify my custom kernel with PDS scheduler as culprit for the stuttery cursor in Heroes of the Storm XWayland. With mainline 5.4 kernel, it runs fine. Though Shadow of the Tomb Raider (native Wayland) is unchanged. It runs with much lower fps (way below refresh rate) than the other game, if that makes a difference. |
When starting Sway with |
I see this increasingly often on my Intel setup. |
@emersion Can the missing stutter with |
I suppose this is also the reason why the cursor has more input latency than without This makes me wonder why it was designed that way in the kernel. It totally defeats the purpose of a hardware cursor and basically turns it into a software one. How utterly dumb. |
You can just use
It's working as intended. Atomic updates are required for 'frame perfect' presentation if we're using hardware overlays, and the cursor counts as one. Without it, we can get tearing. It also saves us from some of the nightmare of partial-state updates that are all too easy to get into the the legacy interface. But yes, everyone agrees that it doesn't lead to the best user experience for cursors in heavy-load situations. From what I'm aware, there are 3 ways this can be fixed:
My preference is towards the third, and what swaywm/wlroots#894 is about. |
Thanks a lot for your explanation! |
I'm seeing the same behavior on Intel graphics, so it's probably not AMD-specific. My use case - rendening a clip in Blender using the EEVEE renderer. |
When playing games that trigger high GPU load, the hardware cursor visibly skips frames when moving it. The hardware cursor is smooth on Xorg in the games.
It doesn't seem to matter if native Wayland or XWayland. Tested with Shadow of the Tomb Raider (native Linux Wayland Vulkan fullscreen window) and Heroes of the Storm (Wine XWayland Vulkan fullscreen window).
sway version 1.2-1a579780 (Nov 27 2019, branch 'master') (also tested latest stable from Arch repo with same result)
Log:
sway.txt
Config:
config.txt
RX 570, mesa-git 20, radv
Afair the cursor doesn't stutter on Plasma Wayland.
The text was updated successfully, but these errors were encountered: