From Fedora Project Wiki

(updating link to custom kernel doc to the new page name)
(putting in note that content is out of date; trimming out deprecated content as directed by previous writer's assessment; wondering if there is anything much relevant here?)
Line 1: Line 1:
==Linux Kernel==
== Linux Kernel ==
 
{{admon/note|Deprecated or out of date content?|This content may be deprecated or out of date, it has not been updated since the Fedora 9 release notes.}}


This section covers changes and important information regarding the {{Template:DocsDict/KernelVer}} based kernel in Fedora {{Template:DocsDict/BeatsVer}}.  The {{Template:DocsDict/KernelVer}} kernel includes:
This section covers changes and important information regarding the {{Template:DocsDict/KernelVer}} based kernel in Fedora {{Template:DocsDict/BeatsVer}}.  The {{Template:DocsDict/KernelVer}} kernel includes:
 
 
<!-- The following is not new but we can retain for people moving to Fedora 9 from Fedora 7.  Remove for Fedora 10.  PWF 2008-03-17
<!-- is this information relevant ~~~~ -->
-->
* 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 <code>kernel.spec</code> rather than <code>kernel-2.6.spec</code>.
* 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 {{Template:DocsDict/BeatsVer}} no longer loads modules by default for ISA sound cards.  Load the module by hand using the command <code>modprobe module-name</code>, or put an entry in <code>/etc/modprobe.conf</code>.  For example, for the Creative SoundBlaster AWE64, add the following entry:
<pre>install snd-sbawe
</pre>
<!-- End stuff to be removed for Fedora 10.  PWF 2008-03-17
-->
* The Fedora kernel offers <code>paravirt_ops</code> support in <code>domU</code>, as part of the kernel team's efforts to reduce the work required to produce current Xen kernels.
* The Fedora kernel offers <code>paravirt_ops</code> support in <code>domU</code>, as part of the kernel team's efforts to reduce the work required to produce current Xen kernels.
<!-- end of relevancy question -->
<!-- is this information relevant ~~~~ -->
* Xen fully virtualized guests can directly boot a kernel and <code>initrd</code> image and pass kernel boot args.  For more details refer to http://fedoraproject.org/wiki/Features/XenFullvirtKernelBoot.
* Xen fully virtualized guests can directly boot a kernel and <code>initrd</code> image and pass kernel boot args.  For more details refer to http://fedoraproject.org/wiki/Features/XenFullvirtKernelBoot.
<!-- end of relevancy question -->


=== Version ===
=== Version ===
Line 39: Line 33:


=== Kernel Flavors ===
=== Kernel Flavors ===
<!-- is this information relevant ~~~~ -->


{{Anchor|Kernel_Flavors}}
{{Anchor|Kernel_Flavors}}
Line 61: Line 56:


{{Admon/note|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.}}
{{Admon/note|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.}}
<!-- end of relevancy question -->


=== Preparing for Kernel Development ===
=== Preparing for Kernel Development ===

Revision as of 18:14, 9 October 2008

Linux Kernel

Note.png
Deprecated or out of date content?
This content may be deprecated or out of date, it has not been updated since the Fedora 9 release notes.

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

  • 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.

Note.png
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.
Note.png
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.
Note.png
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].

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

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.