Product SiteDocumentation Site

8.1. General Kernel Feature Support

  • Asymmetric Logical Unit Access (ALUA) support in device-mapper-multipath has been updated, adding explicit ALUA support for Clariion storage. Earlier versions of Red Hat Enterprise Linux 5 added support for implicit ALUA (i.e. the operating system is not aware of which storage device paths have optimized performance and which have non-optimized performance). If the operating system consistently sends I/O on a non-optimized path, then the storage device may transparently make that path optimized, improving performance and causing idle paths to become non-optimized.
    Red Hat Enterprise Linux 5.4 introduces explicit ALUA support for Clariion storage (i.e. the operating system exchanges information with the storage device and is able to select the paths that have optimized performance). (BZ#482737)
  • Previously, support for raw devices in the upstream kernel was deprecated. However, this support has been returned to the kernel. Consequently, in Red Hat Enterprise Linux 5.4, support for raw devices has also been returned. Additionally, the initscripts packages have been updated, adding the previously dropped functionality of raw devices.(BZ#472891)
  • KVM guest-smp tlb flushing without mmu-notifiers could corrupt memory as a KVM may add pages to the kernel freelist while another vcpu may still be writing to them through guest mode. This update adds mmu-notifier support to the kernel and also corrects a bug found in an earlier patch wherein mm_struct was grown by existing drivers and caused a failed kABI check. This bug has been corrected by using an index that resides in an unused padding hole to avoid expanding the structure size.(Bugzilla #485718)
  • Pointer and signed arithmetic overflow wrapping has not previously been defined in the Linux kernel. This could cause GCC (GNU C Compiler) to assume that wrapping does not occur and attempt to optimize the arithmetic that the kernel may require for overflow testing. This update adds the -fwrapv variable to GCC CFLAGS in order to define wrapping behavior.(Bugzilla #491266)
  • An issue of contention between processes vying for the same memory space in high end systems was recently identified by TPC-C (Transaction Processing Council) benchmarking. This update includes fast-gup patches which use direct IO and provide a significant (up to 9-10%) performance improvement. This update has been tested thoroughly and is used in the 5.4 kernel to improve scalability. For further information, see this article. (Bugzilla #474913)
  • A new tunable parameter has been added to this kernel, allowing system administrators to change the maximum number of modified pages kupdate writes to disk per iteration each time it runs. This new tunable /proc/sys/vm/max_writeback_pages defaults to 1024 or 4MB so that a maximum of 1024 pages get written out by each iteration of kupdate. (Bugzilla #479079).
  • A new option (CONFIG_TASK_IO_ACCOUNTING=y) has been added to kernel to assist in monitoring IO statistics per process. This assists with troubleshooting in a production environment. (Bugzilla #461636)
  • In previous kernels, back-up processes were deteriorating DB2 server responsiveness. This was caused by /proc/sys/vm/dirty_ratio preventing processes writing to pagecache memory when more than half of the unmapped pagecache memory was dirty (even if dirty_ratio was set to 100%). A change made in this kernel update overrides this limiting behavior. Now, when the dirty_ratio is set to 100%, the system will no longer limit writing to pagecache memory. (Bugzilla #295291)
  • The rd_blocksize option found in the previous kernel's ramdisk driver was causing data corruption when using large ramdisks under a reasonable system load. This update removes the unnecessary option and resolves the data corruption issues. (Bugzilla #480663)
  • The function getrusage is used to examine the resource usage of a process. It is useful in diagnosing problems and gathering data on resource usage. In instances where a process interrogated by getrusage was spawning child process threads, however, the results would be in incorrect as getrusage would examine only the parent process and not interrogate its children. This update implements rusadge_thread to allow for accurate resource usage results in these instances. (Bugzilla #451063)
  • The header /usr/include/linux/futex.h would previously interfere with compiling C source code files, resulting in an error. This update includes a patch which corrects problematic kernel only definitions and resolves the compiling error. (Bugzilla #475790)
  • In previous kernels the kernel version was not identified in panic or oops output messages. This update adds the kernel version details to oops and panic output. (Bugzilla #484403)
  • During release 2.6.18, the kernel was configured to provide kernel-headers for the package glibc. That process caused various files to be improperly marked for inclusion. The serial_reg.h file was incorrectly marked and not included in the kernel_headers rpm. This, in turn, caused problems with building other rpms. This update adds the serial_reg.h file and corrects the problem. (Bugzilla #463538)
  • In some circumstances upcrund, the process manager in the HP Unified Parallel C (UPC) product, returned an ESRCH result and failed when calling setpgid() for a child process forked by a sub-thread. This update includes a patch to fix for this problem. (Bugzilla #472433)
  • Functionality has been added to sysrq-t to display backtrace information about running processes. This will assist in debugging hung systems. (Bugzilla #456588)

8.1.1. Debugging

In Red Hat Enterprise Linux 5.4, debugging the kernel has been improved with added features for generating core dumps. Core dumps (memory snapshots) are useful for debugging system and kernel crashes. With this update, it is now possible to perform a core dump on systems that utilize hugepages.(BZ#470411) Additionally, kernel panic messages can now be extracted from a core dump file (vmcore) using the makedumpfile command. (BZ#485308)

8.1.2. Security

  • This update increases the maximum length of the kernel key field from the arbitrary 32 character length set in previous kernels to 255 characters. (Bugzilla #475145)
  • This kernel update addresses the security concern arising from non-root users being able to create device nodes on filesystems exported using NFSD (Network File System daemon). This update returns the CAP_MKNOD and CAP_LINUX_IMMUTABLE) capabilities to the user with the FSUID of 0 in the file system mask. (Bugzilla #497272 and Bugzilla #499076)
  • In keeping with Federal Information Processing Standardization 140 (FIPS140) certification requirements, this update includes:

8.2. General Platform Support

Throttling State (T-State) notification support has been added to the Advanced Configuration and Power Interface (ACPI) implementation in the kernel. Adding T-State notification enhances the use of Intel® Intelligent Power Node Manager technology for power management in data centers.(BZ#487567).

8.3. Driver Updates

8.3.1. Open Fabrics Enterprise Distribution (OFED) Drivers

The OpenFabrics Alliance Enterprise Distribution (OFED) is a collection of Infiniband and iWARP hardware diagnostic utilities, the Infiniband fabric management daemon, Infiniband/iWARP kernel module loader, and libraries and development packages for writing applications that use Remote Direct Memory Access (RDMA) technology. Red Hat Enterprise Linux uses the OFED software stack as its complete stack for Infiniband/iWARP/RDMA hardware support.
In Red Hat Enterprise Linux 5.4, the following portions of OFED have been updated to the upstream version 1.4.1-rc3
Additionally, the following OFED drivers have been updated to the upstream version 1.4.1-rc3:


Red Hat closely tracks the upstream OFED code base in order to provide a maximal level of enablement for this still evolving technology. As a consequence, Red Hat can only preserve API/ABI compatibility across minor releases to the degree that the upstream project does. This is an exception from the general practice in the development of Red Hat Enterprise Linux.

8.3.2. General Driver Updates

  • The i5400 driver for Intel 5400 class Memory Controllers has been updated with added support for Error Detection And Correction (EDAC). (BZ#462895)
  • the i2c driver for the iic-bus interface has been updated, adding support for the AMD SB800 Family of products.
  • The i2c-piix4 driver has been updated with support for the Broadcom HT1100 chipset. (BZ#474240)
  • The hpilo driver has been updated.(BZ#488964).
  • The dm9601 for Davicom Ethernet Adaptors has been updated.

8.3.3. Network Driver Updates

  • Red Hat is no longer able to responsibly support the ipw3945 wireless laptop network driver to the full levels of service, as the upstream company responsible for that driver has suspended maintenance efforts on the driver.
    Red Hat, following the guidance of the company responsible for the driver has migrated over to the iwl3945 driver (first introduced in Red Hat Enterprise Linux 5.3). Ongoing maintenance of driver issues associated with the 3945 hardware will be provided on the iwl3945 driver. All fresh/full installations of Red Hat Enterprise Linux 5.4 on systems with 3945 hardware will install the iwl3945 driver.
    Red Hat continues to provide the ipw3945 driver in Red Hat Enterprise Linux 5.4 as a migration convenience. It is recommended that customers transition to the iwl3945 driver. Refer to the Red Hat Knowledgebase for details on how to transition if you are doing an update install from a system that had its full installation prior to Red Hat Enterprise Linux 5.4.
    Customers who report issues with the ipw3945 driver may be referred to migrate to the iwl3945 driver for resolution. For example, there are known issues connecting to VPN concentrators present in the ipw3945 driver which are resolved in the iwl3945 driver.


    the use of the iwl3945 driver requires installing the iwl3945-firmware package from the supplementary RHN channel. Package version or later is required. (ie iwl3945-firmware- or later)
    Additionally, the device name, for example as it appears in the output of the `ifconfig` command appears as eth0 (or eth1) when using the ipw3945 driver, when using the iwl3945 driver it is identified as wlan0.
  • the bonding driver has been updated to the latest upstream version. This update, however has introduced symbol/ipv6 module dependency capabilities. Therefore, if IPv6 has been previously disabled (by inserting the install ipv6 /bin/false line in the /etc/modprobe.conf file) an upgrade to the bonding driver in 5.4 will result in the bonding kernel module failing to load. The install ipv6 /bin/false line needs to be replaced with options ipv6 "disable=1 for the module to load properly.
  • The drivers in the kernel for Intel® I/O Acceleration Technology (Intel® I/OAT) have been updated to version 2.6.24.(BZ#436048).
  • the igb driver for Intel® Gigabit Ethernet Adapters has been updated to version 1.3.16-k2. This update also enables GRO support for the igb driver. (BZ#484102, BZ#474881, BZ#499347).
  • The igbvf driver has been updated, providing Virtual Function support for Intel 82576 Gigabit Ethernet Controllers. (BZ#480524)
  • the ixgbe driver for Intel 10 Gigabit PBetaCI Express network devices has been updated to version 2.0.8-k2. This update also enables GRO support for the ixgbe driver. (BZ#472547, BZ#499347).
  • The bnx2 driver for Broadcom NetXtreme II network devices has been updated to version 1.9.3 (BZ#475567 BZ#476897 BZ#489519)
  • The tg3 driver for Broadcom Tigon3 ethernet devices has been updated to version 3.96. (BZ#481715, BZ#469772). This driver update adds support for 5785F and 50610M devices. (BZ#506205)
  • The cnic driver has been added, providing Internet Small Computer System Interface (iSCSI) support for bnx2 network devices. (BZ#441979).
  • The bnx2x driver for Broadcom Everest network devices has been updated to version 1.48.105.(BZ#475481).
  • The bnx2i driver has been added, providing iSCSI support for bnx2x network devices. (BZ#441979).
  • The cxgb3 driver for the Chelsio T3 Family of network devices has been updated, enabling iSCSI TCP Offload Engines (TOE) and Generic Receive Offload (GRO) support. (BZ#439518, BZ#499347)
  • The forcedeth ethernet driver for NVIDIA nForce devices has been updated to version 0.62. (BZ#479740).
  • The sky2 driver for ethernet controllers using the Marvell Yukon 2 chipset has been updated. (BZ#484712).
  • The enic driver for Cisco 10G ethernet devices has been updated to version (BZ#484824)
  • The e1000e driver for Intel PRO/1000 ethernet devices has been updated to the upstream version 1.0.2-k2. (BZ#480241)
  • The be2net driver for Emulex Tiger Shark converged network adapters has been added as a Technology Preview.

8.3.4. Storage Driver Updates

  • The bnx2 driver now supports iSCSI. The bnx2i driver will access the bnx2 driver through the cnic module to provide iSCSI offload support. To manage bnx2i, use the iscsi-initiator-utils package. For instructions on bnx2i configuration, please refer to section 5.1.2 of the /usr/share/docs/iscsi-initiator-utils-<version>/README file. (BZ#441979 and BZ#441979)
    Note that the bnx2i version included in this release does not support IPv6.
  • The md driver has been updated to provide support for bitmap merging. This feature eliminates the need for full resync when performing data replication. (BZ#481226)
  • The scsi layer in this release features the following updates:
    • The scsi driver now includes the upstream scsi_dh_alua module. This adds explicit asymmetric logical unit access (ALUA) support with this release. To utilize the scsi_dh_alua module when using dm-multipath, specify alua as the hardware_handler type in multipah.conf. (BZ#482737)
      Note that for EMC Clariion devices, using only scsi_dh_alua or dm-emc alone is supported. Using both scsi_dh_alua and dm-emc is not supported.
    • The rdac_dev_list structure now includes md3000 and md3000i entries. This allows users to benefit from the advantages provided by the iscsi_dh_rdac module. (BZ#487293)
    • A bug that caused iSCSI iBFT installations to panic during disk formatting is now fixed. (BZ#436791)
    • A bug in the iscsi_r2t_rsp struct that caused kernel panics during iSCSI failovers in some multipathed environments is now fixed. (BZ#484455)
  • The cxgb3 driver has been updated to apply several upstream fixes and provide support for iSCSI TOE devices. (BZ#439518)
    Note that the cxgb3i version included in this release does not support IPv6.
  • This release includes the new mpt2sas driver. This driver supports the SAS-2 family of adapters from LSI Logic. SAS-2 increases the maximum data transfer rate from 3Gb/s to 6Gb/s.
    The mpt2sas driver is located in the drivers/scsi/mpt2sas directory, as opposed to the older mpt drivers that are located in drivers/message/fusion directory. (BZ#475665)
  • The aacraid driver has now been updated to version 1.1.5-2461. This update applies several upstream fixes for bugs affecting queued scans, controller boot problems, and other issues. (BZ#475559)
  • The aic7xxx driver now features an increased maximum I/O size. This allows supported devices (such as SCSI tape devices) to perform writes with larger buffers.
  • The cciss driver has been updated to apply upstream fixes for bugs affecting memory BAR discovery, the rebuild_lun_table and the MSA2012 scan thread. This update also applies several configuration changes to cciss.
  • The fnic driver has been updated to version This applies several upstream bug fixes, updates the libfc and fcoe modules, and adds a new module parameter that controls debug logging at runtime. (BZ#484438)
  • The ipr driver now supports MSI-X interrupts. (BZ#475717)
  • The lpfc driver has been updated to version This enables hardware support for upcoming OEM programs. In addition, this update also applies the following bug fixes (among others):(BZ#476738 and BZ#509010)
    • Virtualized fibre-channel switches are now supported.
    • Polling for error attention interrupts are now available.
    • A bug that caused memory leaks in vport create and delete loop is now resolved.
    With this update, the lpfc driver now also supports HBAnyware 4.1 and OneConnect UCNA. (BZ#498524)
  • The MPT fusion driver is now updated to version 3.04.07rh v2. This applies several bug fixes, including: (BZ#475455)
    • An MPT fusion driver bug that prevented the system from booting with the PAE kernel is now fixed.
    • Controllers are now set to READY_STATE when the driver unloads.
    • The mptsas driver now issues TUR (Test Unit Ready) and Report LUN commands before adding a device to the transport layer.
    In addition, a patch that unexpectedly caused mptctl_ioctl() to issue numerous yet benign kernel error messages is now reverted. With this release, mptctl_ioctl() no longer issues these kernel error messages.
  • The megaraid_sas driver is now updated to version 4.08-RH1. This update applies the following upstream enhancements and fixes (among others):(BZ#475574)
    • This upate adds a polling mode to the driver.
    • A bug affecting supported tape drives is now fixed. With this release, the pthru timeout value is now set to the O/S layer timeout value for commands sent to tape drives.
  • The mvsas driver is now updated to version 0.5.4. This applies several fixes and enhancements from upstream, and adds support for Marvell RAID bus controllers MV64460, MV64461, and MV64462. (BZ#485126)
  • The qla2xxx driver has been updated to version, and now supports Fibre Channel over Convergence Enhanced Ethernet adapters. With this release, qla2xxx also applies several bug fixes from upstream, including: (BZ#471900, BZ#480204, BZ#495092, and BZ#495094)
    • Discrepancies detected during OVERRUN handling on 4GB and 8GB adapters are now corrected.
    • All vports are now alerted of any asynchronous events.
    • A bug that caused kernel panics with the QLogic 2472 card is now fixed.
    • The stop_firmware command is no longer retried if the first attempt results in a times out.
    • The sector mask value is no longer based on the fixed optrom size.
    • A bug that caused frequent path failures during I/O on multipathed devices is now fixed. (BZ#244967)
    • The driver source code is now kABI-compliant.
    • dcbx pointers are now set to NULL after freeing memory.
    In addition to these updates, the qla24xx and qla25xx firmwares included in the qla2xxx driver are now updated to version 4.04.09.
  • The qla4xxx driver now features improved driver fault recovery. This update fixes a bug in the driver that prevented adapter recovery if there were outstanding commands detected on the host adapter. (BZ#497478)
  • This release includes the new qlge driver. This driver adds ethernet support for QLogic FCoE 10GB adapters. (BZ#479288)

Note: This documentation is provided {and copyrighted} by Red Hat®, Inc. and is released via the Open Publication License. The copyright holder has added the further requirement that Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder. The CentOS project redistributes these original works (in their unmodified form) as a reference for CentOS-5 because CentOS-5 is built from publicly available, open source SRPMS. The documentation is unmodified to be compliant with upstream distribution policy. Neither CentOS-5 nor the CentOS Project are in any way affiliated with or sponsored by Red Hat®, Inc.