NVIDIA Proposes Mesa Patches To Support Alternative GBM Back-Ends

Written by Michael Larabel in NVIDIA on 29 March 2021 at 02:26 PM EDT. 44 Comments
NVIDIA has proposed a merge request to Mesa that would lay the infrastructure for allowing alternative GBM (Generic Buffer Manager) back-ends to be loaded, such as for NVIDIA's proprietary driver should it presumably implement GBM in the future.

It looks like NVIDIA is finally taking the GBM route for supporting Wayland compositors with their proprietary driver... For years NVIDIA was against using GBM and instead proposed using EGLStreams. Some compositors like GNOME's Mutter implemented EGLStreams support but that has only been a mild success with Wayland compositors not liking that rather NVIDIA-specific solution while the open-source GPU drivers all support GBM. NVIDIA also was working on an EGLStreams back-end for KDE and more. The Generic Buffer Management interface is a means of allocating graphics buffers and can be used with EGL. Most Wayland compositors use GBM for their buffer handling given its an abstraction that works across GPU drivers.

For years NVIDIA was pursuing alternative ways to support Wayland rather than going the GBM route... But it looks like they are going to be supporting GBM after all.

For years NVIDIA was also pursuing a new Unix Device Memory Allocator interface to address their viewed shortcomings of GBM, building off what they learned from EGLStreams, and incorporating other design improvements. However, there hasn't been much to report on in that front in years.

Now ahead of the NVIDIA 470 driver series where Wayland improvements are expected and they will finally be introducing DMA-BUF buffer passing support we have the clearest sign yet they appear to be finally going down the GBM route.

NVIDIA's James Jones who has been involved with their Linux driver / Wayland-related efforts for years sent out a work-in-progress merge request that would allow Mesa to discover and load alternative GBM back-ends.

This MR adds that ability to Mesa's GBM infrastructure for handling other back-ends besides the built-in DRI back-end. The only reason they would be working on this GBM back-end discovery/loading code was if they were planning to -- already done so internally -- implemented GBM support for their proprietary Linux driver. NVIDIA implementing GBM support within their proprietary driver would in turn allow Wayland compositors to more easily work with their driver stack.
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