Rust4Linux with Danilo Krummrich
Update: 2025-12-11
Description
Bringing Rust into the Linux kernel is one of the most ambitious modernization efforts in open source history. The Linux kernel, with its decades of C code and deeply ingrained development practices, is now opening its doors to a memory-safe language. It's the first time in over 30 years that a new programming language has been officially adopted for kernel development. But the journey is far from straightforward.
In this episode, we speak with Danilo Krummrich, Linux kernel maintainer and Rust for Linux core team member, about the groundbreaking work of integrating Rust into the Linux kernel. Among other things, we talk about the Nova GPU driver, a Rust-based successor to Nouveau for NVIDIA graphics cards, and discuss the technical challenges and cultural shifts required for large-scale Rust adoption in the kernel as well as the future of the Rust4Linux project.
About Rust for Linux
Rust for Linux is a project aimed at bringing the Rust programming language into the Linux kernel. Started to improve memory safety and reduce vulnerabilities in kernel code, the project has been gradually building the infrastructure, abstractions, and tooling necessary for Rust to coexist with the kernel's existing C codebase.
About Danilo Krummrich
Danilo Krummrich is a software engineer at Red Hat and a core contributor to the Rust for Linux project. His fundamental contribution to Rust for Linux is the driver-core infrastructure, the foundational framework that makes it possible to write drivers in Rust at all. This includes both C and Rust code that provides the core abstractions for device drivers in the kernel. Danilo is a maintainer for multiple critical kernel subsystems, including Driver Core, DRM (GPUVM, Rust, GPU Scheduler), GPU drivers for NVIDIA GPUs (Nova, Nouveau), Firmware Loader API, as well as Rust bindings for PCI, DMA, and ALLOC. He is the primary developer of the Nova GPU driver, a fully Rust-based driver for modern NVIDIA GPUs.
Links From The Episode
- AOSP - The Android Open Source Project
- Kernel Mailing Lists - Where the Linux development happens
- Miguel Ojeda - Rust4Linux maintainer
- Wedson Almeida Filho - Retired Rust4Linux maintainer
- noveau driver - The old driver for NVIDIA GPUs
- Vulkan - A low level graphics API
- Mesa - Vulkan and OpenGL implementation for Linux
- vtable - Indirect function call, a source of headaches in nouveau
- DRM - Direct Rendering Manager, Linux subsystem for all things graphics
- Monolithic Kernel - Linux' kernel architecture
- The Typestate Pattern in Rust - A very nice way to model state machines in Rust
- pinned-init - The userspace crate for pin-init
- rustfmt - Free up space in your brain by not thinking about formatting
- kunit - Unit testing framework for the kernel
- Rust core crate - The only part of the Rust Standard Library used in the Linux kernel
- Alexandre Courbot - NVIDIA employed co-maintainer of nova-core
- Greg Kroah-Hartman - Linux Foundation fellow and major Linux contributor
- Dave Airlie - Maintainer of the DRM tree
- vim - not even neovim
- mutt - classic terminal e-mail client
- aerc - a pretty good terminal e-mail client
- Rust4Linux Zulip - The best entry point for the Rust4Linux community
Official Links
Comments
In Channel




