A Guide To The Linux Kernel Development Process
The purpose of "A guide to the Linux Kernel development process" is to help developers (and their managers) work with the development community with a minimum of frustration. It is an attempt to document how this community works in a way which is accessible to those who are not intimately familiar with Linux kernel development (or, indeed, free software development in general). While there is some technical material here, this is very much a process-oriented discussion which does not require a deep knowledge of kernel programming to understand. Homepage Based on Linux Kernel Commit ID 75b021468368288ac8fec1a86a13f5cf2229139e
Go to the Linux Kernel Source Code
Let’s get started
The Linux Foundation (LF) is dedicated to building sustainable ecosystems around open source projects to accelerate technology development and commercial adoption. The largest open source non-profit organization, it works to promote, protect, and advance Linux and collaborative development and support the "greatest shared technology resources in history." Wikipedia
Ask Wikipedia about Linux Kernel
How many files in total?
How many collaborations in total?
What Linux Kernel development process is about?
Watch “How Linux is built” by LinuxFoundation
The importance of “getting” code into the mainline
Go to mainline, the main repository of the Linux Kernel source code and get used to the interface, find out about the different sections mainline
Extra Reading
Read how changes can influence the direction of the Linux Kernel http://marc.info/?l=linux-kernel&m=128979084506774
Read how delayed code changes make kernel developers angry
Read how unprepared code submissions make Linus Torvalds mad
http://thread.gmane.org/gmane.linux.kernel/1114495/focus=112007
Licensing
Ask Wikipedia about Free Software
Ask Wikipedia about GNU General Public License
How the process development works
The big picture
Nobody knows when a kernel will be released, because it's released according to perceived bug status, not according to a preconceived timeline.
4.x Kernel Tree
4.x.y -Stable Kernel Tree
-Next Kernel Tree
>
Go to mainline, the main repository of the Linux Kernel source code
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git
Review section “tags”
What is the latest version of the Linux Kernel?
How many Release Candidates the Kernel has had in the last 2 cycles?
Find out more about the Merge Window cycle
Find out more about some concerns on Merge Window cycle
Read Linus’ message celebrating the final release of a version
The lifecycle of a patch
checkout version 3.5 and generate top patch where version is changed
Mailing lists
How patches get into the kernel
None
Other Trees
None
Next trees
None
Staging trees
None
Tools
None
Getting started with Kernel development
None
Early stage planning
Early Stage Planning
None
Early Discussion
None
Who do you talk to?
$ scripts/get_maintainer.pl -f drivers/input/… $ git log | grep Morton
When to post?
None
Getting official buy-in
None
Getting the code right
Posting patches
Followthrough
None
Advanced Topics
None
Conclusion
Last updated