NVIDIA Is Working On DMA-BUF Passing That Should Help Improve Their Wayland Support

Written by Michael Larabel in NVIDIA on 1 December 2020 at 04:55 PM EST. 104 Comments
NVIDIA
NVIDIA is working on allowing their proprietary driver to support passing buffers as DMA-BUF. In turn this should allow for better supporting their proprietary driver on Wayland compared to the EGLStreams mess.

A Phoronix reader tipped us off to NVIDIA developer comments last month in response to a KDE EGLStreams bug. A bug report was opened regarding that restarting the compositing breaks the EGLStreams back-end for KDE's KWin.

NVIDIA developer Erik Kurzinger acknowledged that their EGL Wayland code isn't setup to handle compositor restarting. So at least for now the EGLStreams back-end should avoid applying settings that require a compositor restart until the next time the user is logging in. But here's the interesting remarks:
Incidentally, we're currently working on driver-side support for passing buffers as dma-bufs, and once that's ready we could transition egl-wayland away from using EGLStreams. Then it should be possible to remove all of the EglStreamTexture stuff from kwin.

It's worth noting that Erik is the NVIDIA developer who originally wrote the EGLStreams back-end for KDE's KWin Wayland compositor for allowing their current proprietary driver stack to function.

As we roll into 2021 it's nice to see NVIDIA finally working on driver-side support for DMA-BUF buffer passing... (Note: Not to be confused with a GBM implementation that they have refrained from supporting for various reasons and the main targt of Wayland compositors.) It's only been many years now that DMA-BUF has been around and widely supported by most Linux drivers. Work is also being done on Linux for DMA-BUF support with RDMA and other areas that may interest them for the enterprise angle with buffer sharing -- in addition to improving the Wayland support by allowing some of their EGLStreams mess to be removed.

It was just a few years ago that NVIDIA wasn't too eager about DMA-BUF as part of their multi-year effort on a Unix Device Memory Allocator API that has seemingly installed.

For now that's all we know: NVIDIA is currently working on driver-side support for passing of DMA-BUF buffers but to the extent they will be supporting DMA-BUF or when we may see such a supported driver released is currently unknown.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week