-
Official Rust Documentation
- Kernel Rust Docs
- Quick start guide
- Coding guidelines
- Architecture documentation
-
Rust-for-Linux GitHub
- Main Repository
- Source code and development branches
- Issue tracker
- Pull requests and discussions
-
Kernel Mailing Lists
- rust-for-linux@vger.kernel.org
- Primary discussion forum
- Patch submissions
- Technical debates
-
LKML Archives
- Linux Kernel Mailing List
- Historical discussions
- RFC submissions
- Community feedback
-
Kernel Documentation
-
Rust-for-Linux Website
- rust-for-linux.com
- Official project site
- Getting started guides
- News and updates
2021 - Initial Presentation
- "Rust in the Linux Kernel" - Miguel Ojeda
- First major presentation of the project
- Community reception and feedback
- Video
2022 - Progress Update
- "Rust for Linux: Getting Merged" - Miguel Ojeda
- Pre-merge status update
- Technical challenges discussion
- Community Q&A
2023 - Post-Merge Discussion
- "Rust for Linux: One Year In"
- Lessons learned
- Future directions
- Driver development experiences
2024 - Growing Ecosystem
- "Rust Subsystems and Abstractions"
- New driver implementations
- Tooling improvements
- Performance analysis
2021 - Kernel Context
- "Rust in the Linux Kernel: It's Happening!"
- Why Rust for kernel development
- Technical challenges
- Community building
2022 - Deep Dive
- "Writing Linux Drivers in Rust"
- Practical driver development
- Memory safety in kernel context
- Performance considerations
2023 - Real-World Experience
- "Production Rust in the Kernel"
- Case studies
- Lessons learned
- Best practices
FOSDEM
- Regular Rust and kernel talks
- Community presentations
- Developer experience sharing
Kernel Recipes
- Technical deep dives
- Implementation details
- Debugging techniques
Linux Security Summit
- Security benefits of Rust
- Vulnerability reduction
- Memory safety analysis
-
Miguel Ojeda's Blog
- Project updates
- Technical insights
- Development progress
-
Rust-for-Linux Blog Posts
- rust-for-linux.com/blog
- Regular updates
- Tutorials
- News
-
LWN.net Articles
- LWN Rust Coverage
- In-depth analysis
- Community discussions
- Technical reviews
-
Google Security Blog
- Android and Rust
- Security benefits
- Real-world deployments
-
Microsoft Security
- Memory safety research
- Rust adoption
- Industry perspective
-
Red Hat Blog
- Enterprise perspective
- Deployment considerations
- Training resources
- Gary Guo - Compiler insights
- Wedson Almeida Filho - Abstractions design
- Andreas Hindborg - Driver development
- Benno Lossin - Safe wrappers
-
"Memory Safety for Systems Programming"
- Formal analysis of Rust's safety guarantees
- Comparison with C/C++
- Kernel implications
-
"Towards a Verified Rust Compiler"
- Formal verification efforts
- Safety guarantees
- Soundness proofs
-
"Understanding Memory Safety in Rust"
- Type system analysis
- Borrow checker semantics
- Unsafe code patterns
-
"Linux Kernel Vulnerabilities: State of the Art"
- Historical vulnerability analysis
- Memory safety bug statistics
- Mitigation strategies
-
"Safe Systems Programming in Rust"
- Rust for operating systems
- Safety vs. performance
- Case studies
-
"Redox OS: A Rust-based Microkernel"
- Alternative OS design
- Lessons for Linux
- Architecture decisions
-
"Performance of Safe Systems Programming"
- Rust vs. C benchmarks
- Overhead analysis
- Optimization opportunities
-
"Zero-Cost Abstractions in Practice"
- Compiler optimization
- Code generation quality
- Real-world measurements
-
"Writing Linux Drivers in Rust"
- YouTube series
- Step-by-step guides
- Practical examples
-
"Rust-for-Linux Workshop"
- Hands-on tutorials
- Development environment setup
- Common patterns
-
"Kernel Development with Rust"
- Comprehensive course
- Theory and practice
- Real driver examples
-
Linux Foundation YouTube Channel
- Conference talks
- Technical sessions
- Q&A panels
-
Rust YouTube Channel
- RustConf talks
- Community presentations
- Technical deep dives
-
"The Rust Programming Language"
- Official Rust book
- Foundation for kernel work
- Available online
-
"Rust for Rustaceans"
- Advanced Rust techniques
- Unsafe code patterns
- Performance optimization
-
"Programming Rust"
- Comprehensive guide
- Systems programming focus
- Practical examples
-
"Linux Device Drivers"
- Classic driver development guide
- C-based, but concepts apply
- Hardware interaction
-
"Linux Kernel Development"
- Kernel internals
- Subsystems overview
- Development practices
-
"Understanding the Linux Kernel"
- Architecture deep dive
- Memory management
- Process scheduling
-
rust-for-linux@vger.kernel.org
- Main development list
- Patch submissions
- Technical discussions
-
- General kernel list
- Rust-related threads
- Community feedback
-
Zulip
- rust-for-linux.zulipchat.com
- Real-time discussions
- Help and support
- Community chat
-
IRC
- #rust-for-linux on OFTC
- Live developer chat
- Quick questions
- Community presence
-
Twitter/X
- @RustForLinux
- Developer accounts
- News and updates
-
Mastodon
- Rust and Linux communities
- Technical discussions
- Blog post sharing
-
rust-analyzer
- rust-analyzer.github.io
- IDE support
- Code intelligence
- Refactoring
-
bindgen
- rust-lang.github.io/rust-bindgen/
- C binding generation
- Kernel API access
- Automatic wrapper creation
-
Clippy
- github.com/rust-lang/rust-clippy
- Linting tool
- Best practices
- Code quality
-
GDB with Rust Support
- Debugging kernel modules
- Stack traces
- Variable inspection
-
KGDB
- Kernel debugging
- Rust support growing
- Remote debugging
-
BPF Tools
- Dynamic tracing
- Performance analysis
- Rust module profiling
-
samples/rust/
- In-tree examples
- Simple modules
- Basic patterns
-
Rust-for-Linux Examples
- GitHub examples
- Driver templates
- Common patterns
- Best practices
-
Rust Driver Examples
- Community-developed drivers
- Real-world examples
- Learning resources
-
Experimental Projects
- Research implementations
- Proof-of-concept code
- Advanced techniques
-
Google
- Android security
- Kernel development
- Funding and support
-
ARM
- Driver development
- Platform support
- Hardware integration
-
Universities
- MIT: Formal verification
- Stanford: Memory safety
- Cambridge: Security analysis
-
Rust Reference
- doc.rust-lang.org/reference/
- Language semantics
- Memory model
- Type system
-
Unsafe Code Guidelines
- rust-lang.github.io/unsafe-code-guidelines/
- Safety requirements
- Undefined behavior
- Best practices
- Linux Kernel Coding Style
- kernel.org/doc/html/latest/process/coding-style.html
- Adapted for Rust
- Style guidelines
- Conventions
- April 2020: Initial LKML discussions about Rust
- July 2020: Miguel Ojeda begins serious infrastructure work
- October 2020: First RFC patches posted
- April 2021: RFC v1 with basic infrastructure
- July 2021: Linux Plumbers Conference presentation
- October 2021: RFC v2 with improved abstractions
- December 2021: RFC v3 addressing feedback
- April 2022: RFC v4 nearing merge-ready state
- September 2022: Final merge preparations
- October 2022: Rust support merged for 6.1
- December 2022: Linux 6.1 released with Rust
- February 2023: Linux 6.2 with improvements
- April 2023: Linux 6.3 continued development
- June 2023: Linux 6.4 expanding support
- August 2023: Linux 6.5 with more abstractions
- October 2023: Linux 6.6 new driver examples
- December 2023: Linux 6.7 refinements
- January 2024: Linux 6.7 released
- March 2024: Linux 6.8 with expanded subsystem support
- May 2024: Linux 6.9 continued growth
- July 2024: Linux 6.10 more real-world drivers
- September 2024: Linux 6.11 DRM subsystem support
- November 2024: Linux 6.12 enhanced abstractions
- Ongoing: Rapid maturation of Rust ecosystem
- Production use: Multiple drivers in production
- Community growth: Expanding contributor base
- Tool improvements: Better IDE support and debugging
- Enterprise interest: Growing industry adoption
- Start with "The Rust Programming Language"
- Study rust-for-linux.com quick start
- Read samples/rust/ code
- Build simple driver
- Join community on Zulip/IRC
- Submit first patch
- Study Linux Device Drivers book
- Learn kernel build system
- Understand kernel memory model
- Read existing Rust drivers
- Build kernel with Rust enabled
- Experiment with simple modules
- Read academic papers on memory safety
- Study Rust-for-Linux design decisions
- Analyze vulnerability statistics
- Measure performance characteristics
- Publish findings
- Contribute insights back
- LWN.net weekly: Kernel news
- LKML archives: Latest discussions
- Rust blog: Language updates
- Rust-for-Linux blog: Project news
- GitHub watch: Rust-for-Linux repo
- Mailing list subscription: rust-for-linux@vger.kernel.org
- Zulip notifications: Important discussions
- Twitter/Mastodon: Developer accounts
- Attend conferences: Linux Plumbers, RustConf
- Join discussions: Mailing lists, Zulip
- Contribute code: Start small, grow gradually
- Help others: Answer questions, write docs
- Improve existing docs
- Write tutorials
- Create examples
- Translate resources
- Fix bugs
- Add features
- Write drivers
- Improve abstractions
- Test on hardware
- Report bugs
- Verify patches
- Performance benchmarking
- Answer questions
- Review patches
- Mentor newcomers
- Organize events
The Rust-for-Linux ecosystem has extensive resources:
- Official documentation for getting started
- Conference talks for deep insights
- Academic papers for theoretical foundation
- Community channels for support
- Development tools for productivity
The key is to start with the basics and gradually build up knowledge through practice and community engagement.
| Resource | URL |
|---|---|
| Official Docs | https://docs.kernel.org/rust/ |
| GitHub Repo | https://github.com/Rust-for-Linux/linux |
| Mailing List | https://lore.kernel.org/rust-for-linux/ |
| Zulip Chat | https://rust-for-linux.zulipchat.com/ |
| Project Site | https://rust-for-linux.com/ |
| Rust Book | https://doc.rust-lang.org/book/ |
| LWN Coverage | https://lwn.net/Kernel/Index/#Rust |
Last Updated: January 2026
This document is a living resource. Contributions and updates are welcome!