• Select a country/region: United States
  • IBM®
  • Site map

Return to Support home
 

Linux Ignores C-State Settings in Unified Extensible Firmware Interface (UEFI) - IBM Servers


  • Applicable countries and regions

Source

RETAIN tip: H207000

Symptom

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.

Affected configurations

The system may be any of the following IBM servers:

  • System x3100 M4, type 2582, any model
  • System x3200 M2, type 4367, any model
  • System x3200 M2, type 4368, any model
  • System x3200 M2, type 9233, any model
  • System x3200 M3, type 7327, any model
  • System x3200 M3, type 7328, any model
  • System x3250 M2, type 4190, any model
  • System x3250 M2, type 4191, any model
  • System x3250 M2, type 4194, any model
  • System x3250 M3, type 4251, any model
  • System x3250 M3, type 4252, any model
  • System x3250 M3, type 4261, any model
  • System x3250 M4, type 2583, any model
  • System x3300 M4, type 7382, any model
  • System x3400 M2, type 7836, any model
  • System x3400 M2, type 7837, any model
  • System x3400 M3, type 7378, any model
  • System x3400 M3, type 7379, any model
  • System x3500 M2, type 7839, any model
  • System x3500 M3, type 7380, any model
  • System x3500 M4, type 7383, any model
  • System x3530 M4, type 7160, any model
  • System x3550 M2, type 4198, any model
  • System x3550 M2, type 7946, any model
  • System x3550 M3, type 4254, any model
  • System x3550 M3, type 7944, any model
  • System x3550 M4, type 5459, any model
  • System x3550 M4, type 7914, any model
  • System x3620 M3, type 7376, any model
  • System x3630 M3, type 7377, any model
  • System x3630 M4, type 7158, any model
  • System x3650 M2, type 4199, any model
  • System x3650 M2, type 7947, any model
  • System x3650 M3, type 4255, any model
  • System x3650 M3, type 5454, any model
  • System x3650 M3, type 7945, any model
  • System x3650 M4, type 7915, any model
  • System x3690 X5, type 7147, any model
  • System x3690 X5, type 7148, any model
  • System x3690 X5, type 7149, any model
  • System x3690 X5, type 7192, any model
  • System x3750 M4, type 8722, any model
  • System x3750 M4, type 8733, any model
  • System x3850 X5, type 7143, any model
  • System x3850 X5, type 7145, any model
  • System x3850 X5, type 7146, any model
  • System x3850 X5, type 7191, any model
  • System x3950 X5, type 7143, any model
  • System x3950 X5, type 7145, any model

The system is configured with at least one of the following:

  • Red Hat Enterprise Linux 6 update 1, update 2, update 3
  • SUSE Linux Enterprise Server 11 Service Pack 1, Service Pack 2, Service Pack 2 x86_64

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/

Workaround

To determine if your kernel has the 'intel_idle' driver included, check for the following directory:

  /sys/module/intel_idle

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:

  intel_idle.max_cstate=0

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:

  intel_idle.max_cstate=x

(where: x is a non-zero C-State value the user wishes to allow.)

Additional information

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

  • Worldwide

Back to top

 


Document id:  MIGR-5091901
Last modified:  2013-04-10
Copyright © 2013 IBM Corporation

 
Sign in
To access your authorized content and to customize your pages.

Translate this page

Translate

Support feedback

Help us improve online support

Surveys and studies Surveys and studies

Sign up to participate in IBM design studies

Participate in our Consumability Survey

Footer links

  • Contact
  • Privacy
  • Terms of use
  • Accessibility