From Fedora Project Wiki

Revision as of 00:58, 3 August 2010 by Davej (talk | contribs) (update for dist-git)

Assorted information related to the Fedora Linux kernel.

Current versions

Information on kernel versions, rebases in progress, etc. can be found on the KernelStatus page

Fedora kernel mailing list

For discussion about Fedora related kernel package issues only. For "my kernel module doesn't work" type messages, see the http://kernelnewbies.org list, or linux-kernel.

http://admin.fedoraproject.org/mailman/listinfo/kernel

IRC

Join the #fedora-kernel channel on IRC Freenode (irc.freenode.net).

Source checkout info

fedpkg clone kernel
cd kernel
git checkout -b f13 origin/f13/master
git checkout -b f14 origin/f14/master

This gets you the git checkout and sets up branches for f13, f14, and master (devel). Once you have switched to the branch you care about (with git checkout branchname), fedpkg prep will create a tree.

You'll then be left with a kernel-2.6.? directory, containing both an unpatched 'vanilla-2.6.?' dir, and a linux-2.6.?-noarch hardlinked dir which has the Fedora patches applied.

Contributing to the Fedora kernel

  • For one-off fixes, send them to the fedora-kernel mailing list, or if they are relevant upstream, send them directly to linux-kernel@vger.kernel.org and Fedora will inherit them on the next rebase
  • If you are sending lots of changes to the Fedora kernel, then it may make more sense for you to get commit access. (Note, for most things, sending them upstream is far more preferable).
  • To request commit access to the Fedora kernel:
  • Get a fedora account if you don't already have one
  • Visit the package db entry for the kernel and request access for the branch(es) which interest you.
  • Once approved, replace the :pserver:anonymous part of the cvs line above with :ext:YOURUSERNAME
  • Please subscribe to the mailing list above. Important announcements regarding rebases, builds, patches being disabled, and much more happen there.
  • If you're interested in adding an out-of-tree driver or similar to the Fedora kernel, please read KernelDriverPolicy first. See KernelStagingPolicy also.

Building

Commit access also gives you the ability to build kernels that go out to end-users when you 'make build'. Please note the caveats.

  • The kernel package currently builds many rpms, which means it ties up the build system for hours at a time. For this reason, coordinate with other developers on irc/fedora-kernel-list to be sure there isn't more than one build happening at once.
  • Rawhide gets pushed once a day. If you think a build may occur later in the day for some reason, hold off on building. If in doubt, ask.
  • If you are checking in patches for any branch other than rawhide, the build won't automatically go out to users, it needs to be processed through bodhi . Consider the negative effect of flooding end-users with too many updates, and coordinate your builds with others so that we push updates containing more than one fix.
  • For the end-user who wants to build a custom kernel, we offer a separate wiki page with complete instructions.

Other handy links