LPC 2022: Rust Linux Drivers Capable Of Achieving Performance Comparable To C Code

Miguel Ojeda who has led the "Rust for Linux" effort presented with a status update on the Linux kernel work. There is the slide deck but basically goes over how the newest patch series has been slimmed down to ease the upstreaming effort, various progress over the past year, and new Rust abstractions continue to be worked on for broadening the possible usage of Rust code within the kernel. Then there is the matter of when the code will be mainlined, hopefully sooner rather than later, particularly now with the initial slimmed-down approach.
While right now Rust's official LLVM-based compiler is needed, there was also a presentation around the ongoing work of the initial GCC Rust support planned for GCC 13. There is still a long journey on that front before the GCC Rust support will have all features implemented and comparable to the LLVM-based compiler.
Of much interest was a talk by Andreas Hindborg of Western Digital around a Rust-based NVMe driver. While the Linux kernel already has its great C-written NVMe driver, experimenting with a Rust-written NVMe driver is interesting due to the driver being widely-used and important. It's also easy for testing and evaluating the Rust driver performance.
While the Rust NVMe driver is still in early stages, the benchmark results are already very promising as shown by Andreas Hindborg with Western Digital:
The results look mighty fine for a still-experimental driver. See all the details via Hindborg's slides. The express conclusions of the NVMe Rust talk?
Other Rust micro-conference talks can be found via the LPC sessions page. Embedded below is the YouTube livestream recording for all of today's Rust talks:
56 Comments