From C to Rust: Bringing Rust Abstractions to Embedded Linux
summary
Linux v6.0 provides only Linux v6.0 minimal Rust support so Rust can build modules but not kernel frameworks; the work actually implements regulator and DSi panel drivers using the rmap field API, platform, i2c and regulator abstractions, with the goal of landing small, minimally dependent drivers upstream. Development shows Rust shortens code and forces error handling but reveals real problems: ownership and move semantics cause a crash when C-initialized linked lists are moved, and GCC RS / unstable Rust features block broader framework use.
AI-written summary · about
chapters (13)
- 0:00Introduction
- 1:38Why Rust
- 9:29Learning Rust
- 15:02Bringing Rust to Linux
- 20:32What did I learn
- 24:32What I liked
- 29:34Why not R
- 30:37Drivers
- 32:04Spy
- 32:35Maintenance Cycles
- 34:24Cargo in the Kernel
- 35:30Size implications
- 37:02Autogenerate abstractions
related talks
39mFrom C to Rust: Bringing Rust Abstractions to Embedded Linux
35mRUST Meets Embedded Linux: Build Memory Safe and Reliable Kernel Modules, Applications
37mRust for Linux
46mRust for Linux
24mRust for Linux: Status Update
27mRust in the Linux kernel
20mKEYNOTE
18mKeynote: Rust and Linux: How the Rust Language is Going to Help Linux Succeed in the Future
