Linux Ignores C-State Settings in Unified Extensible Firmware Interface (UEFI) - IBM Servers
RETAIN tip: H207000
Recent Linux kernels may have a built-in driver ('intel_idle') which will ignore any C-State limits imposed by Basic Input/Output System (BIOS)/Unified Extensible Firmware Interface (UEFI).
This driver was added to take advantage of the power savings given by C-States on newer Intel Central Processing Units (CPUs).
On systems where latency is an issue, this driver may cause issues by enabling C-States even though they are disabled in the BIOS or UEFI. This can cause minor latency (a few microseconds) as the CPUs transition out of a C-State and into a running state.
The system may be any of the following IBM servers:
The system is configured with at least one of the following:
This tip is not option specific.
Note: This does not imply that the network operating system will work under all combinations of hardware and software.
Please see the compatibility page for more information: http://www.ibm.com/systems/info/x86servers/serverproven/compat/us/
To determine if your kernel has the 'intel_idle' driver included, check for the following directory:
If it exists, then your kernel includes the kernel driver and will ignore the BIOS or UEFI settings for C-States.
To prevent the 'intel_idle' driver from ignoring BIOS or UEFI settings for C-States, add the following start parameter to the kernel's bootloader configuration file:
To allow the 'intel_idle' driver to ignore the BIOS or UEFI settings, and set a set maximum C-State value, add the following start parameter to the kernel's bootloader configuration file:
(where: x is a non-zero C-State value the user wishes to allow.)
Since the 'intel_idle' driver is built into the kernel, users cannot simply remove it without rebuilding the kernel from source.
Adding the start parameter 'intel_idle.max_cstate=0' prevents the driver from loading.
Adding the start parameter 'intel_idle.max_cstate=x' allows the driver to be loaded and tells the driver to limit C-State usage to a set maximum C-State value.
Applicable countries and regions
Document id: MIGR-5091901