Chapter 1. Important Changes to External Kernel Parameters

This chapter provides system administrators with a summary of significant changes in the kernel shipped with Red Hat Enterprise Linux 6.3. These changes include added or updated procfs entries, sysfs default values, boot parameters, kernel configuration options, or any noticeable behavior changes. For more details on the features added and bugs fixed in the Red Hat Enterprise Linux 6.3 kernel, refer to the Kernel chapter in the 6.3 Release Notes, or Section 5.135.14, “ RHSA-2012:0862 — Moderate: Red Hat Enterprise Linux 6.3 kernel security, bug fix, and enhancement update ” in this book.
The pci=use_crs boot parameter no longer needs to be specified to force PCI resource allocations to correspond to a specific host bridge the device resides on. It is now the default behavior.
The high-resolution timer's capacity to remap the HPET registers into the memory of a user process has been enabled via the CONFIG_HPET_MMAP option. Additionally, the hpet_mmap kernel parameter has been added.
The pcie_p=nomsi kernel parameter has been added to allow users to disable MSI/MSI-X for PCI Express Native Hotplug (that is, the pciehp driver). When enabled all PCIe ports use INTx for hotplug services.
A per-PCI device subdirectory has been added to sysfs: /sys/bus/pci/devices/<device>/msi_irqs. This subdirectory exports the set of MSI vectors allocated by a given PCI device, by creating a numbered subdirectory for each vector under msi_irqs. For each vector, various attributes can be exported. Currently the only attribute, named mode, tracks the operational mode of that vector (MSI versus MSI-X).
When the CONFIG_PCI_DEBUG=y option is configured, the -DDEBUG flag is automatically added to the EXTRA_CFLAGS compilation flags.
The CONFIG_STRICT_DEVMEM option is enabled by default for the PowerPC architecture. This option restricts access to the /dev/mem device. If this option is disabled, userspace access to all memory is allowed, including kernel and userspace memory, and accidental memory (write) access could potentially be harmful.
kdump/kexec configuration options
The following kernel configuration options were enabled for the kdump/kexec kernel dumping mechanism on IBM System z:
The default value for the KEXEC_AUTO_THRESHOLD option has been lowered to 2 GB.
The /proc/mounts file now shows the following mount options for CIFS under the dir_mode= parameter:
Writing to the /proc/sys/kernel/dmesg_restrict file is only allowed for a root user that has the CAP_SYS_ADMIN identifier set.
A new kernel parameter, printk.always_kmsg_dump, has been added to save the final kernel messages to the reboot, halt, poweroff, and emergency_restart paths. For usage information, refer to the /usr/share/doc/kernel-doc-<version>/Documentation/kernel-parameters.txt file.
The default hard ulimit on the number of files has been increased to 4096:
~]$ ulimit -Hn
A watchdog module parameter, soft_panic, has been added. When soft_panic is set to 1, it causes softdog to invoke kernel panic instead of a reboot when the softdog timer expires. By invoking kernel panic, the system executes kdump, if kdump is configured. Kdump then generates a vmcore which provides additional information on the reasons of the failure.
perf examples
The /usr/share/doc/perf-<version>/examples.txt documentation file has been added to the perf package.
Support for the shm_rmid_forced sysctl option has been added. When set to 1, all shared memory objects not referenced in current ipc namespace (with no tasks attached to it) will be automatically forced to use IPC_RMID. For more information refer to /usr/share/doc/kernel-doc-<version>/Documentation/sysctl/kernel.txt file.
UV systems reduced boot time
A number of patches have been applied to the kernel in Red Hat Enterprise Linux 6.3 to improve overall performance and reduce boot time on extremely large UV systems (patches were tested on a system with 2048 cores and 16 TB of memory). Additionally, boot messages for the SGI UV2 platform were updated.
The /proc/sys/net/ipv4/conf/*/accept_local sysctl setting has been added to allow a system to receive packets it sent itself. This is needed in order to work with certain load balancing solutions that load balance to themselves.
The CONFIG_VGA_SWITCHEROO configuration option is now enabled by default to allow switching between two graphics cards.
Support for the O_DIRECT flag for files in FUSE (File system in Userspace) has been added.
The CONFIG_IP_MROUTE_MULTIPLE_TABLES=y has been added to enable support for multiple independent multicast routing instances.
The nfs.max_session_slots module/kernel boot parameter has been added. This parameter sets the maximum number of session slots that an NFS client attempts to negotiate with the server.
Default mount option for /proc
In Red Hat Enterprise Linux 6.3, the default mount option of /proc during boot up has been changed to:
~]# mount -t proc -o nosuid,noexec,nodev proc /proc
For third party modules which create devices via procfs, please remount procfs with the old option:
~]# mount -t proc /proc /proc