VOOZH about

URL: https://www.phoronix.com/news/Linux-6.15-Rust

⇱ Many Rust Changes Submitted For Linux 6.15 - Phoronix


👁 Phoronix

Many Rust Changes Submitted For Linux 6.15

Written by Michael Larabel in Programming on 30 March 2025 at 08:06 PM EDT. 33 Comments
All of the Rust programming language infrastructure updates for the Linux 6.15 kernel have now been submitted. In addition to a lot of technical Rust improvements for the Linux kernel, this cycle also marks the first time Rust Linux maintainer Miguel Ojeda has taken a pull request directly from another contributor as they prepare to work out sub-trees for the Rust ecosystem.

Moving forward the Rust Linux developers will be working toward maintaining sub-trees for different areas of the Rust kernel code. With Linux 6.15 is the first time the Rust code has pulled from a repository for introducing new Rust code rather than just layering on patches directly. Expect more activity here moving forward.

👁 Rust for Linux


As for the Rust changes in Linux 6.15, there are various crate changes, new HRTIMER and DMA modules for the kernel crate, error handling sections to the documentation, Danilo Krummrich being added as a reviewer for the Rust code, recognition as the previously-controversial DMA mapping helpers device driver API for Rust being part of the new Rust alloc sub-tree, and preparations for other Rust sub-trees.

Separately, via the DRM subsystem pull, is also the very early NOVA core driver code for an open-source NVIDIA driver written in the Rust programming language. That's very initial code for NOVA-Core in Linux 6.15 but begins laying the foundation as the first in-tree Rust kernel graphics/display driver.

More details on the many Rust code changes for the Linux 6.15 kernel via this pull request.

Update: The new Rust code for Linux 6.15 happened to be merged a few minutes after this article... Linus Torvalds also commented on the need for assistance in dealing with Rust code merge issues given his inexperience with the Rust programming language:
"Thanks. I decided to try to do the merge on my own, but failed. I came close, but it was good to have your example merge to see what I got wrong.

The pin_init becoming a crate of its own, but 'pin::Pin' being in the core crate ended up messing with my "monkey see, monkey do" approach to Rust merges.

I'll learn eventually, in the meantime please do continue to give me example merges and I'll use them as training wheels."

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.