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.4. These changes include added or updated
procfs
entries, sysfs
default values, boot parameters, kernel configuration options, or any noticeable behavior changes.
intel_idle.max_cstate
- A new kernel parameter,
intel_idle.max_cstate
, has been added to specify the maximum depth of a C-state, or to disableintel_idle
and fall back toacpi_idle
. For more information, refer to the/usr/share/doc/kernel-doc-<version>/Documentation/kernel-parameters.txt
file. nobar
- The new
nobar
kernel parameter, specific to the AMD64 / Intel 64 architecture, can be used to not assign address space to the Base Address Registers (BARs) that were not assigned by the BIOS. noari
- The new
noari
kernel parameter can disable the use of PCIe Alternative Routing ID Interpretation (ARI). - MD
state
file - The
state
file of an MD array component device (found in the/sys/block/md<md_number>/md/dev-<device_name>
directory) can now contain additional device states. For more information, refer to the/usr/share/doc/kernel-doc-<version>/Documentation/md.txt
file. route_localnet
- The
route_localnet
kernel parameter can be used to enable the use of 127/8 for local routing purposes. For more information, refer to the/usr/share/doc/kernel-doc-<version>/Documentation/networking/ip-sysctl.txt
file. pf_retrans
- The
pf_retrans
kernel parameter specifies the number of re-transmissions that will be attempted on a given path before traffic is redirected to an alternate transport (should one exist). For more information, refer to the/usr/share/doc/kernel-doc-<version>/Documentation/networking/ip-sysctl.txt
file. traceevent
- The new
traceevent
library, used by perf, uses the following sysfs control files:/sys/kernel/debug/tracing/events/header_page /sys/kernel/debug/tracing/events/.../.../format /sys/bus/event_source/devices/<dev>/format /sys/bus/event_source/devices/<dev>/events /sys/bus/event_source/devices/<dev>/type
/sys/kernel/fadump_*
- On 64-bit IBM POWER machines, the following control files have been added to be used by the firmware-assisted dump feature:
/sys/kernel/fadump_enabled /sys/kernel/fadump_registered /sys/kernel/fadump_release_mem
For more information about these files, refer to/usr/share/doc/kernel-doc-<version>/Documentation/powerpc/firmware-assisted-dump.txt
. - Transparent Hugepages
- The
/sys/kernel/mm/transparent_hugepage symbolic
link, which points to/sys/kernel/mm/redhat_transparent_hugepage
, has been added for consistency purposes.Documentation for transparent hugepages has been added to the following file:/usr/share/doc/kernel-doc-<version>/Documentation/vm/transhuge.txt
- vmbus_show_device_attr
- The
vmbus_show_device_attr
attribute of the Hyper-Vvmbus
driver shows the device attribute in sysfs. This is invoked when the/sys/bus/vmbus/devices/<busdevice>/<attr_name>
file is read. - BNA debugfs Interface
- The BNA debugfs interface can be accessed through the
bna/pci_dev:<pci_name>
hierarchy (note that the debugfs file system must be mounted). The following debugging services are available for eachpci_dev>
:fwtrc
— used to collect current firmware trace.fwsave
— used to collect last-saved firmware trace as a result of firmware crash.regwr
— used to write one word to the chip register.regrd
— used to read one or more words from the chip register.
iwlegacy
debug_level
- The
iwlegacy
driver includes a new sysfs control file,/sys/bus/pci/drivers/iwl/debug_level
, to control per-device level of debugging. TheCONFIG_IWLEGACY_DEBUG
option enables this feature. iwlwifi
debug_level
- The
iwlwifi
driver includes a new sysfs control file,/sys/class/net/wlan0/device/debug_level
, to control per-device level of debugging. TheCONFIG_IWLWIFI_DEBUG
option enables this feature. ie6xx_wdt
- If debugfs is mounted, the new
/sys/kernel/debug/ie6xx_wdt
file contains a value that determines whether the system was rebooted by watchdog. supported_krb5_enctypes
- The new
/proc/fs/nfsd/supported_krb5_enctypes
proc file lists the encryption types supported by the kernel'sgss_krb5
code. usbmixer
- The
/proc/asound/card<card_number>/usbmixer
proc file has been added. It contains a mapping between the ALSA control API and the USB mixer control units. This file can be used debugging and problem diagnostics. codec#<number>
- The
/proc/asound/card<card_number>/codec#<number>
proc files now contain information about the D3cold power state, the deepest power-saving state for a PCIe device. Thecodec#<number>
files now also contain additional power state information, specifically:reset status
,clock stop ok
, andpower states error
. The following is an example output:Power: setting=D0, actual=D0, Error, Clock-stop-OK, Setting-reset
cgroup.procs
- The
cgroup.procs
file is now writable. Writing a TGID into the cgroup.procs file of a cgroup moves that thread group into that cgroup. sysfs_dirent
- The last
sysfs_dirent
, which represents a single sysfs node, is now cached to improve scalability of thereaddir
function. iov
- The
iov
sysfs directory was added under theib
device. This directory is used to manage and examine the port P_Key and guid paravirtualization. - FDMI attributes
- Fabric Device Management Interface (FDMI) attributes can now be exposed to the
fcoe
driver via thefc_host
class object. ltm_capable
- The
/sys/bus/usb/devices/<device>/ltm_capable
file has been added to show whether a device supports Latency Tolerance Messaging (LTM). This file is present for both USB 2.0 and USB 3.0 devices. fwdump_state
- The
/sys/class/net/eth<number>/device/fwdump_state
file has been added to determine whether the firmware dump feature is enabled or disabled. flags
,registers
- The
Commands in Q
item was added to the/sys/block/rssd<number>/registers
file. This file's output was also re-formatted. Also, a new/sys/block/rssd<number>/flags
file has been added. This read-only file dumps the flags in a port and driver data structure. duplex
- The
/sys/class/net/eth<number>/duplex
file now reportsunknown
when the NIC duplex state isDUPLEX_UNKNOWN
. - Mountpoint Interface
- A sysfs mountpoint interface was added to the perf tool.
TCP_USER_TIMEOUT
TCP_USER_TIMEOUT
is a TCP level socket option that specifies the maximum amount of time (in milliseconds) that transmitted data may remain unacknowledged before TCP will forcefully close the corresponding connection and return ETIMEDOUT to the application. If the value0
is specified, TCP will continue to use the system default.IPPROTO_ICMP
- The
IPPROTO_ICMP
socket option makes it possible to sendICMP_ECHO
messages and receive the correspondingICMP_ECHOREPLY
messages without any special privileges. - Increased Default in
ST_MAX_TAPES
- In Red Hat Enterprise Linux 6.4, the number of supported tape drives has increased from 128 to 512.
- Increased Number of Supported IOMMUs
- The number of supported input/output memory management units (IOMMUs) has been increased to be the same as the number of I/O Advanced Programmable Interrupt Controllers (APICs; defined in
MAX_IO_APICS
). - New Module Parameters
- The following list summarizes new command line arguments passed to various kernel modules. For more information about the majority of these module parameters, refer to the output of the
modinfo <module>
command, for example,modinfo bna
.- New
kvm
module parameter:module_param(min_timer_period_us, uint, S_IRUGO | S_IWUSR);
min_timer_period_us
— Do not allow the guest to program periodic timers with small interval, since the hrtimers are not throttled by the host scheduler, and allow tuning the interval with this parameter. The default value is500us
.
- New
kvm-intel
module parameter:module_param_named(eptad, enable_ept_ad_bits, bool, S_IRUGO);
enable_ept_ad_bits
— Parameter to control enabling/disabling A/D bits, if supported by CPU. The default value isenabled
.
- New
ata_piix
module parameter:module_param(prefer_ms_hyperv, int, 0);
prefer_ms_hyperv
— On Hyper-V Hypervisors, the disks are exposed on both the emulated SATA controller and on the paravirtualized drivers. The CD/DVD devices are only exposed on the emulated controller. Request to ignore ATA devices on this host. The default value isenabled
.
- New
drm
module parameters:module_param_named(edid_fixup, edid_fixup, int, 0400); module_param_string(edid_firmware, edid_firmware, sizeof(edid_firmware), 0644);
edid_fixup
— Minimum number of valid EDID header bytes (0-8). The default value is6
.edid_firmware
— Do not probe monitor, use specified EDID blob from built-in data or/lib/firmware
instead.
- New
i915
module parameters:module_param_named(lvds_channel_mode, i915_lvds_channel_mode, int, 0600); module_param_named(i915_enable_ppgtt, i915_enable_ppgtt, int, 0600); module_param_named(invert_brightness, i915_panel_invert_brightness, int, 0600);
- New
nouveau
module parameter:module_param_named(vram_type, nouveau_vram_type, charp, 0400);
- New
radeon
module parameter:module_param_named(lockup_timeout, radeon_lockup_timeout, int, 0444);
- New
i2c-ismt
module parameters:module_param(stop_on_error, uint, S_IRUGO); module_param(fair, uint, S_IRUGO);
- New
iw-cxgb4
module parameters:module_param(db_delay_usecs, int, 0644); module_param(db_fc_threshold, int, 0644);
- New
mlx4_ib
module parameter:module_param_named(sm_guid_assign, mlx4_ib_sm_guid_assign, int, 0444);
- New
ib_qib
module parameter:module_param_named(cc_table_size, qib_cc_table_size, uint, S_IRUGO);
- New
bna
module parameter:module_param(bna_debugfs_enable, uint, S_IRUGO | S_IWUSR);
- New
cxgb4
module parameters:module_param(dbfifo_int_thresh, int, 0644); module_param(dbfifo_drain_delay, int, 0644);
- New
e1000e
module parameter:module_param(debug, int, 0);
- New
igb
module parameter:module_param(debug, int, 0);
- New
igbvf
module parameter:module_param(debug, int, 0);
- New
ixgbe
module parameter:module_param(debug, int, 0);
- New
ixgbevf
module parameter:module_param(debug, int, 0);
- New
hv_netvsc
module parameter:module_param(ring_size, int, S_IRUGO);
- New
mlx4_core
module parameter:module_param(enable_64b_cqe_eqe, bool, 0444);
enable_64b_cqe_eqe
— Enable 64 byte CQEs/EQEs when the firmware supports this.
- New
sfc
module parameters:module_param(vf_max_tx_channels, uint, 0444); module_param(max_vfs, int, 0444);
- New
ath5k
module parameter:module_param_named(no_hw_rfkill_switch, ath5k_modparam_no_hw_rfkill_switch, bool, S_IRUGO);
- New
iwlegacy
module parameters:module_param(led_mode, int, S_IRUGO); module_param(bt_coex_active, bool, S_IRUGO);
- New
wlcore
module parameter:module_param(no_recovery, bool, S_IRUSR | S_IWUSR);
- New s390
scm_block
module parameters:module_param(nr_requests, uint, S_IRUGO); module_param(write_cluster_size, uint, S_IRUGO)
- New s390
zfcp
module parameters:module_param_named(no_auto_port_rescan, no_auto_port_rescan, bool, 0600); module_param_named(datarouter, enable_multibuffer, bool, 0400); module_param_named(dif, enable_dif, bool, 0400);
- New
aacraid
module parameters:module_param(aac_sync_mode, int, S_IRUGO|S_IWUSR); module_param(aac_convert_sgl, int, S_IRUGO|S_IWUSR);
- New
be2iscsi
module parameter:module_param(beiscsi_##_name, uint, S_IRUGO);
- New
lpfc
module parameter:module_param(lpfc_req_fw_upgrade, int, S_IRUGO|S_IWUSR);
- New
megaraid_sas
module parameters:module_param(msix_vectors, int, S_IRUGO); module_param(throttlequeuedepth, int, S_IRUGO); module_param(resetwaittime, int, S_IRUGO);
- New
qla4xxx
module parameters:module_param(ql4xqfulltracking, int, S_IRUGO | S_IWUSR); module_param(ql4xmdcapmask, int, S_IRUGO); module_param(ql4xenablemd, int, S_IRUGO | S_IWUSR);
- New
hv_storvsc
module parameter:module_param(storvsc_ringbuffer_size, int, S_IRUGO);
- New
ehci-hcd
driver parameter:module_param(io_watchdog_force, uint, S_IRUGO);
io_watchdog_force
— Force I/O watchdog to be ON for all devices.
- New
ie6xx_wdt
module parameters:module_param(timeout, uint, 0); module_param(nowayout, bool, 0); module_param(resetmode, byte, 0);
- New
snd-ua101
module parameter:module_param(queue_length, uint, 0644);