About dang time the Wayland crew did this and stopped blaming NVidia.
I’m pretty sure it was an nvidia employee who was working on this for the last year.
This is the best summary I could come up with:
It’s a pretty big deal and should make NVIDIA GPU users especially happy in future.
Xwayland will likely remain an important component in that stack for some time yet, and therefore I feel that this work will be of long-term benefit to the community more broadly.
The design takes inspiration from the proposed Wayland wp_linux_explicit_sync_v2 protocol [1], making use of DRM syncobjs as the main primitive.
One, having both X11 and Wayland use a similar mechanism for explicit sync will simplify development for client-side drivers, and two, it will also hopefully make it fairly straight-forward for Xwayland itself to add support for the Wayland explicit sync protocol, presumably once it’s more widely implemented by compositors.
I’ve tried to keep this initial proposal focused on getting a usable GPU synchronization primitive in place, and adding support for it to the PresentPixmap request, believing this to be the most important part of the presentation pipeline.
Not much is left to get everything all hooked up nicely, with an upcoming NVIDIA beta driver that should have support for it next month.
The original article contains 340 words, the summary contains 178 words. Saved 48%. I’m a bot and I’m open source!
This is pretty huge. Only waiting for Kwin and wlr now
I thought this also would need the next Nvidia driver version 555. Am I missing something?
The explicit sync stuff can still fix a few games, best to try it for yourself. Of course, the driver side changes will be required to completely fix the issue, but for me with just the XWayland patches, doom eternal, Elden ring and Skyrim are playable again for me!!
Does this help in any way with turning VSync off in Wayland environments? I’m guessing no.
No
No, that’s a different protocol, the tearing patches, already merged, but i believe we’re still waiting on some patches to the kernel to get them fully working(i think it was kernel 6.8 that had them), Nvidia’s drivers also need to add support for it, they’ve given no timeline for that so far however
https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/65
I get the feeling this was the pragmatic winning over the perfectionist.