From Fedora Project Wiki

Linux Kernel

This section covers changes and important information regarding the 2.6.27 based kernel in Fedora 25. The 2.6.27 kernel includes:

  • Tickless support for x86 64bit systems (32 bit was added previously), which greatly improves power management.
  • Some elements of the realtime kernel project.
  • The kernel has a new version naming scheme to more closely match the upstream version naming scheme.
  • The kernel spec file is now named kernel.spec rather than kernel-2.6.spec.
  • The kernel spec file has new macros that ease the kernel building process. Refer to http://fedoraproject.org/wiki/Docs/CustomKernel for further information.
  • The kernel in Fedora 25 no longer loads modules by default for ISA sound cards. Load the module by hand using the command modprobe module-name, or put an entry in /etc/modprobe.conf. For example, for the Creative SoundBlaster AWE64, add the following entry:
install snd-sbawe
  • The Fedora kernel offers paravirt_ops support in domU, as part of the kernel team's efforts to reduce the work required to produce current Xen kernels.
  • Xen fully virtualized guests can directly boot a kernel and initrd image and pass kernel boot args. For more details refer to http://fedoraproject.org/wiki/Features/XenFullvirtKernelBoot.

Version

Fedora may include additional patches to the kernel for improvements, bug fixes, or additional features. For this reason, the Fedora kernel may not be line-for-line equivalent to the so-called vanilla kernel from the kernel.org web site:

http://www.kernel.org/

To obtain a list of these patches, download the source RPM package and run the following command against it:

rpm -qpl kernel-<version>.src.rpm

Changelog

To retrieve a log of changes to the package, run the following command:

rpm -q --changelog kernel-<version>

If you need a user friendly version of the changelog, refer to http://wiki.kernelnewbies.org/LinuxChanges. A short and full diff of the kernel is available from http://kernel.org/git. The Fedora version kernel is based on the Linus tree.

Customizations made for the Fedora version are available from http://cvs.fedoraproject.org.

Kernel Flavors

Fedora 25 includes the following kernel builds:

  • Native kernel, for use in most systems. Configured sources are available in the kernel-devel package.
  • The kernel-PAE, for use in 32-bit x86 systems with more than 4GB of RAM, or with CPUs that have a NX (No eXecute) feature. This kernel support both uniprocessor and multi-processor systems. Configured sources are available in the kernel-PAE-devel package.
  • Virtualization kernel for use with the Xen emulator package. Configured sources are available in the kernel-xen-devel package.

You may install kernel headers for all four kernel flavors at the same time. The files are installed in the /usr/src/kernels/<version>[-PAE|-xen|-kdump] -<arch>/ tree. Use the following command:

su -c 'yum install kernel{,-PAE,-xen,-kdump}-devel'

Select one or more of these flavors, separated by commas and no spaces, as appropriate. Enter the root password when prompted.

x86 Kernel Includes Kdump
Both the x86_64 and the i686 kernels are relocatable, so they no longer require a separate kernel for kdump capability. PPC64 still requires a separate kdump kernel.
Default Kernel Provides SMP
There is no separate SMP kernel available for Fedora on i386, x86_64, and ppc64. Multiprocessor support is provided by the native kernel.
PowerPC Kernel Support
There is no support for Xen or kdump for the PowerPC architecture in Fedora. 32-bit PowerPC does still have a separate SMP kernel.

Preparing for Kernel Development

Fedora 25 does not include the kernel-source package provided by older versions since only the kernel-devel package is required now to build external modules. Configured sources are available, as described [#Kernel_Flavors above].

Custom Kernel Building
For information on kernel development and working with custom kernels, refer to http://fedoraproject.org/wiki/Docs/CustomKernel.

Reporting Bugs

Refer to http://kernel.org/pub/linux/docs/lkml/reporting-bugs.html for information on reporting bugs in the Linux kernel. You may also use http://bugzilla.redhat.com for reporting bugs that are specific to Fedora.