Into the Jungle - How to write a Linux kernel driver for any subsystem
summary
Shows how to pick a real example, vet it with license and checkpatch, and iterate until usable: an initial 13,000-line driver example is too big, a blog example yields ~100 checkpatch errors and silent failures, and one driver has kfree_skb called immediately so packets never transmit causing timeouts. The workable path is to use a working kernel driver (virtwifi wraps ethernet), split Wi‑Fi and MAC layers, build an out-of-tree split between wifi and ethernet, refactor one change at a time, run connectivity tests after each step.
AI-written summary · about
chapters (8)
- 0:00Linux kernel jungle intro
- 4:27Complex driver example
- 16:52Existing driver start
- 25:55First driver testing
- 32:56Better driver search
- 38:46Driver refactoring
- 44:16Kernel dev key takeaways
- 47:34Q&A
related talks
48mUnpacking the Linux WiFi Stack: Writing and Integrating Wireless Drivers
10mUpstreaming a linux kernel driver.
52mIn the Kernel Trenches: Mastering Ethernet Drivers on Linux
52mIn the Kernel Trenches: Mastering Ethernet Drivers on Linux
55mReliable Linux Wireless - Techniques for Debugging Wireless Module Integrations
42mWhen a Simple Network Bug Takes You into the Guts of Linux
55mThe Embedded Linux Problem
20mTeach an Old Network Driver New Tricks
