While the situation has improved a little for NVIDIA and Wayland, they're not really there yet and so NVIDIA are now keeping a public list of the issues split between drivers and either protocol or compositor limitations. This follows on from the huge splash they made recently with their new open source Linux GPU kernel modules, which also improved Wayland support a little too with the 515.43.04 driver that went up at the same time.
NVIDIA said they expect the list to get shorter over time as "missing functionality is implemented both in the driver and in upstream components".
So for those interested, here's things as they stand right now:
NVIDIA DRIVER LIMITATIONS
The VDPAU library, used for hardware accelerated video decoding and presentation, does not have native Wayland support and does not work with Xwayland.
The NvFBC desktop capture library does not have native Wayland support and does not work with Xwayland.
Variable display refresh rate capabilities such as G-Sync are not reported by nvidia-drm module, therefore this functionality is not available on Wayland.
Virtual reality displays, such as the SteamVR platform, require support for DRM display leasing which does not currently work.
EGL_EXT_platform_x11 is not supported with Xwayland.
The nvidia-drm module does not support the GAMMA_LUT, DEGAMMA_LUT, CTM, COLOR_ENCODING, or COLOR_RANGE connector properties, which may impact some compositor features related to color correction.
The nvidia-settings configuration tool has limited functionality on Wayland.
Front-buffer rendering in GLX does not work with Xwayland.
WAYLAND PROTOCOL OR COMPOSITOR LIMITATIONS
The following workstation features are not supported by any Wayland compositors or the Wayland protocol. They will also likely require new EGL extensions or other means to expose the related hardware functionality.
SLI and Multi-GPU Mosaic
Frame Lock and Genlock
Swap Groups
Advanced display pipeline features including warp and blend, pixel shift, and emulated YUV420.
Stereo rendering
There is no established public API through which Wayland compositors can power off video memory via RTD3.
Xwayland does not provide a suitable mechanism for our driver to synchronize application rendering with presentation, which can cause visual corruption in some circumstances.
Display multiplexers (muxes) are typically used in laptops with both integrated and discrete GPUs to provide a direct connection between the discrete GPU and the built-in display (internal mux) or an external display (external mux). On X11, the display mux can be automatically switched when a full-screen application is running on the discrete GPU, enabling enhanced display features and improved performance, but no Wayland compositors currently support this functionality.
Indirect GLX does not work with Xwayland because the Glamor rendering engine is not compatible with our EGL implementation.
Hardware overlays cannot be used by GLX applications with Xwayland.
I imagine the nvidia team is inclined to present their driver as not the stumbling block, insofar as that's possible, and I'm wondering if that's a fair takeaway.
Last edited by anewson on 23 May 2022 at 9:30 am UTC
Quoting: anewsonI wonder if someone could dumb this down a bit; on the driver-side issues things don't actually seem that bad. VDPAU is nice but there are other decoders, and as far as I understand it everyone has issues with screen capture on wayland (sway does, anyway). I don't have VR, and I don't understand the remaining driver-side things.https://www.reddit.com/r/linux/comments/uvazfx/comment/i9k7u4n/?utm_source=share&utm_medium=web2x&context=3
I imagine the nvidia team is inclined to present their driver as not the stumbling block, insofar as that's possible, and I'm wondering if that's a fair takeaway.
Quote:
All of this just shows that the nvidia driver has not kept up with the developments in the linux kernel of the past decade. In the old days, all of these things would have been the job of X and if we lived in the old days they would be the job of wayland compositors now. But linux has long moved on from this mode of operations. WIth KMS, the linux kernel now provides a uniform API that allows userspace software to program the display hardware in a driver-agnostic way.
Nvidia seems to want to go back to the olden days when X had to ship a dedicated driver for each GPU type. Even X has moved on from this to the generic modesetting driver and wayland compositors will never add hardware-specific drivers. Nvidia demanding the opposite is just more of the "add a separate EGLStreams codepath to each wayland compositor" nonsense.
Last edited by Hooly on 23 May 2022 at 9:47 am UTC
I was thinking maybe 1 year but its just such a trash experience in many ways. At least for Plasma.
The only other option is GNOME which is a little better. Until all the other WM/DE catch up its always going to be rather experimental. (and also all apps need to support it)
Quoting: TheRiddickYeah IMO Wayland is still years away from prime time.
I was thinking maybe 1 year but its just such a trash experience in many ways. At least for Plasma.
The only other option is GNOME which is a little better. Until all the other WM/DE catch up its always going to be rather experimental. (and also all apps need to support it)
You mean until Nvidia catches up, right?
Things can improve now may be for real.
Last edited by Shmerl on 23 May 2022 at 7:22 pm UTC
Quoting: melkemindYou mean until Nvidia catches up, right?
Nope, I have a 6800XT and Wayland overall is a mess, BAD desktop experience.
If things don't crash freeze on you, they have config or font dpi issues, or you need to edit DIFFERENT things to get DPI or font things fixed. OR you discover many of your backend tools you enjoyed and used in X11 will simply not work, and there is no substitute under wayland.
The list of little issues that add up to a MASSIVE HEADACHE keeps going on and on... Sorry, no sell for me! I actually need a functional desktop environment!
Doesn't help that every game I try on Wayland the frame pacing and performance is just terrible, Imagine playing a game at 100fps but it feels like 20!!!!
Last edited by TheRiddick on 23 May 2022 at 9:08 pm UTC
I can generate the same issue on X11 in certain games if I enable my second monitor. Yes I know they fixed that sync issue while ago with a xorg conf but its still a issue for some titles.
Reverted back to nouveau, and everything works fine again. Nvidia F*** you.
EDIT: after investigating further, I realized this was not the first time I had this issue but forgot how to fix it. Found the solution again here: https://forums.developer.nvidia.com/t/fixed-suspend-resume-issues-with-the-driver-version-470/187150/3
Basically disable nvidia-suspend.service and nvidia-resume.service.
Last edited by thykr on 31 May 2022 at 7:13 pm UTC
Just a broken Linux thing.
See more from me