Chapter 36. Manually Upgrading the Kernel

The Red Hat Enterprise Linux kernel is custom built by the Red Hat kernel team to ensure its integrity and compatibility with supported hardware. Before Red Hat releases a kernel, it must first pass a rigorous set of quality assurance tests.
Red Hat Enterprise Linux kernels are packaged in RPM format so that they are easy to upgrade and verify using the Red Hat User Agent, or the up2date command. The Red Hat User Agent automatically queries the Red Hat Network servers and determines which packages need to be updated on your machine, including the kernel. This chapter is only useful for those individuals that require manual updating of kernel packages, without using the up2date command.

Warning

Please note, that building a custom kernel is not supported by the Red Hat Global Services Support team, and therefore is not explored in this manual.

Note

Use of up2date is highly recommended by Red Hat for installing upgraded kernels.
For more information on Red Hat Network, the Red Hat User Agent, and up2date, refer to Chapter 16, Red Hat Network.

36.1. Overview of Kernel Packages

Red Hat Enterprise Linux contains the following kernel packages (some may not apply to your architecture):
  • kernel — Contains the kernel and the following key features:
    • Uniprocessor support for x86 and Athlon systems (can be run on a multi-processor system, but only one processor is utilized)
    • Multi-processor support for all other architectures
    • For x86 systems, only the first 4 GB of RAM is used; use the kernel-hugemem package for x86 systems with over 4 GB of RAM
  • kernel-devel — Contains the kernel headers and makefiles sufficient to build modules against the kernel package.
  • kernel-hugemem — (only for i686 systems) In addition to the options enabled for the kernel package, the key configuration options are as follows:
    • Support for more than 4 GB of RAM (up to 64 GB for x86)

      Note

      kernel-hugemem is required for memory configurations higher than 16 GB.
    • PAE (Physical Address Extension) or 3 level paging on x86 processors that support PAE
    • Support for multiple processors
    • 4GB/4GB split — 4GB of virtual address space for the kernel and almost 4GB for each user process on x86 systems
  • kernel-hugemem-devel — Contains the kernel headers and makefiles sufficient to build modules against the kernel-hugemem package.
  • kernel-smp — Contains the kernel for multi-processor systems. The following are the key features:
    • Multi-processor support
    • Support for more than 4 GB of RAM (up to 16 GB for x86)
    • PAE (Physical Address Extension) or 3 level paging on x86 processors that support PAE
  • kernel-smp-devel — Contains the kernel headers and makefiles sufficient to build modules against the kernel-smp package.
  • kernel-utils — Contains utilities that can be used to control the kernel or system hardware.
  • kernel-doc — Contains documentation files from the kernel source. Various portions of the Linux kernel and the device drivers shipped with it are documented in these files. Installation of this package provides a reference to the options that can be passed to Linux kernel modules at load time.
    By default, these files are placed in the /usr/share/doc/kernel-doc-<version>/ directory.

Note

The kernel-source package has been removed and replaced with an RPM that can only be retrieved from Red Hat Network. This *.src.rpm must then be rebuilt locally using the rpmbuild command. Refer to the latest distribution Release Notes, including all updates, at https://www.redhat.com/docs/manuals/enterprise/ for more information on obtaining and installing the kernel source package.