Linux's VGEM Kernel Driver Being Rewritten In Rust

Written by Michael Larabel in Linux Kernel on 1 March 2023 at 07:25 AM EST. 37 Comments
In addition to the in-development Apple M1/M2 DRM kernel graphics/display driver being written in Rust, there is now a second graphics-related kernel driver seeing early work in Rust. The existing VGEM driver is being rewritten in the Rust programming language.

VGEM is the Virtual GEM provider and has been around for a while as a minimal non-hardware backed Graphics Execution Manager (GEM) memory management service. It's used by LLVMpipe and other non-native 3D driver scenarios for buffer sharing. VGEM is good for improved software rasterizer performance and has been part of the mainline kernel for the better part of a decade.


VGEM doesn't garner much thought these days and obviously isn't as exciting as some shiny new hardware GPU driver. But open-source developer MaĆ­ra Canal recently begun hacking on a Rust-ified VGEM as this second Rust effort within the Direct Rendering Manager (DRM) subsystem.

The Rust VGEM work is still in the early stages but most of the IGT test cases are passing. Those wishing to learn more about the effort can see this blog post.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week