this post was submitted on 13 Nov 2023
388 points (97.5% liked)
Linux
46775 readers
2045 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
The holdup has always been NVidia and only NVidia. Roughly 10 or so years ago at some Linux conference (either XDC or Linux Plumbers) all stakeholders were invited to discuss the path for Wayland. Everybody except Nvidia decided to show up (Nvidia wanted to wait and see) and given that attending AMD and Intel already developed their drivers within the regular technology stack, they all agreed that GBM was the easiest way forward. Years (!) later Nvidia decided to act as if they were the champions of open standards and dig up EGLStreams and tried to convince everybody to port their years of work over. Eventually Nvidia realized that porting their driver to support GBM was saner but that took forever.
It's a shame that history has repeated itself with Implicit sync (AMD/Intel) vs Explicit Sync (Nvidia) - except this time Nvidia is still not going to go for Implicit sync (apparently due to the "unified architecture" of their driver, this would mean switching Windows over to implicit sync as well) so they're trying to get support for explicit syncing added into most of the compositors/XWayland.
That one flaw is what finally got me to pickup an AMD card this month. Due to the fact that Nvidia is the odd one out, the result is that when using apps through XWayland, you end up with random spots of the application displaying previous frames making it unusable for my case. Talk about a night and day difference that has been.
From what I understand, Nvidia may be right in this case and explicit sync seems to be the better approach.
There is a nice article on Collabora's blog about it and it sounds plausible to me: https://www.collabora.com/news-and-blog/blog/2022/06/09/bridging-the-synchronization-gap-on-linux/
Sure, but unfortunately from a user-perspective side of things what this meant is that for me XWayland (and thus, Wayland as a whole) has been broken for quite a while just because I happened to use an Nvidia card.
I've mentioned in a previous comment a few weeks ago, I do commend the couple of devs (that Nvidia has so graciously allowed to work on the OSS side of things) work into wiring up support for explicit synchronization and getting support added in upstream - but its been very saddening from my point-of-view to watch the discussion over at the related issue constantly go from "Well Nvidia just needs to support implicit sync" to "Well we can't, but what can we do to get things to work with explicit sync since we do support that" and back and forth on that for a year.
All of this of course, while the community is trying to drop X11 as fast as they possibly can now. If it were just a case of not being able to use Wayland for a bit longer, I would've still been a bit upset by it, but I could've lived with it. Unfortunately, X11 + Nvidia also doesn't work that great in my case. I have two 1080p displays that only run at 60Hz, and I could hardly get the desktop itself to run at a stable 60FPS without it constantly dropping frames from just having a web browser open which should not be difficult at all for an RTX 2080. I tried every single tweak on both the Nvidia X-settings side of things, various compositor options for KWin, Mutter, etc - nothing helped. The closest I got was using KDE's X11 session, disabling compositing from KWin and replacing it with picom... but even that wasn't great, and came with a whole handful of problems too.
Then surprise surprise, I finally get my AMD card (RX 6700XT so pretty much a lateral move), same monitors - X11 runs just fine for the few occasions where I can't use Wayland, and at the same time Wayland runs beautifully.