Working with the kernel development community¶
So you want to be a Linux kernel developer? Welcome! While there is a lot to be learned about the kernel in a technical sense, it is also important to learn about how our community works. Reading these documents will make it much easier for you to get your changes merged with a minimum of trouble.
An introduction to how kernel development works¶
Read these documents first: an understanding of the material here will ease your entry into the kernel community.
Tools and technical guides for kernel developers¶
This is a collection of material that kernel developers should be familiar with.
- Minimal requirements to compile the Kernel
- Programming Language
- Linux kernel coding style
- Kernel Maintainer PGP guide
- Email clients info for Linux
- Applying Patches To The Linux Kernel
- Backporting and conflict resolution
- Adding a New System Call
- Why the “volatile” type class should not be used
- (How to avoid) Botching up ioctls
Policy guides and developer statements¶
These are the rules that we try to live by in the kernel community (and beyond).
- Linux kernel licensing rules
- Contributor Covenant Code of Conduct
- Linux Kernel Contributor Covenant Code of Conduct Interpretation
- Linux Kernel Contribution Maturity Model
- Linux Kernel Enforcement Statement
- Kernel Driver Statement
- The Linux Kernel Driver Interface
- Everything you ever wanted to know about Linux -stable releases
- Linux kernel management style
- Researcher Guidelines
Dealing with bugs¶
Bugs are a fact of life; it is important that we handle them properly. The documents below provide general advice about debugging and describe our policies around the handling of a couple of special classes of bugs: regressions and security problems.
Maintainer information¶
How to find the people who will accept your patches.
Other material¶
Here are some other guides to the community that are of interest to most developers: