Project:Kernel

With an ever increasing user-base demanding a higher quality of stable, production-ready kernel sources and featureful desktop support the professionalism and staffing of the kernel project is very important. Because we as users want the best from Gentoo Linux we supply a selection of both generic and specialized sources capable of handling the day-to-day grind to make life a little easier.

In order to provide a rich choice of high quality kernel trees Gentoo Linux must apply, write and test several kernel patches to the official upstream releases before they can offer finished ebuilds to the users. This is where the Gentoo Kernel project comes into play. By maintaining quality control, clearly defined road maps, highly skilled developers and a standard base across all of our kernels the project will help bring the end-user experience of our kernels to even higher levels.

Subprojects
The kernel project has the following subprojects:

gentoo-sources
Full sources including the Gentoo patchset for the 3.4.x to 4.x kernel tree. [4.0]

Lead: Mike Pagano

mips-sources
Gentoo Kernel based from the 2.4 branch supporting MIPS processors. [2.4/2.6]

Lead: The MIPS project, see the MIPS project for a list of members.

Other Kernels
The Gentoo Kernel project maintains the following list of kernels currently in portage. Additional kernels in portage that are not listed below are not maintained under the kernel project.


 * ck-sources: Con Kolivas' kernel sources.
 * git-sources: Git sources, the absolute latest kernel available.
 * hardened-sources: Sources based upon genpatches-base along with the grsecurity patch which includes Pax.
 * tuxonice-sources: TuxOnIce (formerly Suspend2) sources and the Gentoo patchset.
 * usermode-sources: Full sources for the User Mode Linux kernel.
 * vanilla-sources: Full prepatched/rc sources for the Linux kernel.
 * xbox-sources: Full sources for the Xbox Linux kernel.
 * pf-sources: Linux kernel fork with new features, including the -ck patchset (BFS), BFQ, TuxOnIce and UKSM.

Genpatches
Many kernels in Gentoo include part or all of the genpatches patchset. genpatches is focused on being a minimal patchset mostly focused on bugfixes, with minimal deviation from the upstream Linux kernel.

The genpatches homepage can be found at http://dev.gentoo.org/~mpagano/genpatches.

Maintainers guide
In order to encourage new contributors, we have documented the procedures used when maintaining gentoo-sources.

The document can be found here.

Documentation

 * Gentoo Linux Kernel Guide
 * Gentoo Linux Kernel Upgrade Guide
 * Gentoo Linux Kernel Configuration Guide
 * Gentoo Linux 2.4 to 2.6 Kernel Migration Guide
 * Gentoo Linux 4.7 releasing explanation
 * Kernel CI

Kernel stabilization
The following policy is in place for kernel stabilization that can be performed by members of the kernel team without opening a stabilization bug. For this to occur, the following procedures must be followed:

For new kernel major point releases (e.g. 4.9.X)


 * A stable request bug is opened and arch teams stabilize as per existing policy. No auto stabilizing occurs here as only the arch teams can really determine if the kernel is working on their own arch.

For subsequent security related releases of a kernel point release 4.9.X.Y


 * If the kernel team determines a significant security fix is included for a kernel release of 4.9.X.y where 4.9.X or 4.9.X.(Y-1) has already been stabilized per the first bullet, the kernel team can auto stabilize that specific version.
 * Dependent upon the severity of the security bug, (root exploit, minor module) the kernel team will remove stable keywords from earlier versions of the same 4.9.X series within a reasonable time frame.

gentoo-kernel@gentoo.org
The Gentoo Kernel Mailing List is a public mailing list for the discussion of project related topics and release announcements for genpatches, vesafb-tng, and fbsplash.

Gentoo maintains a a full listing of all public Gentoo mailing lists as well as information on how to subscribe and unsubscribe.

External resources

 * Doing a Kernel_git-bisect to find a bad kernel commit that causes your problem; for an alternative version, see this article.
 * Using ketchup to quickly install kernel sources. (Deprecated)