How to use ACPI CPUfreq driver in Red Hat Enterprise Linux ?
Environment
- Red Hat Enterprise Linux 7.x
- Red Hat Enterprise Linux 8.x
Issue
Getting below errors while loading ACPI CPUfreq driver
# modprobe acpi_freq
modprobe: FATAL: Module acpi_freq not found.
# modprobe acpi-cpufreq
FATAL: Error inserting acpi_cpufreq (/lib/modules/2.6.32-220.13.1.el6.x86_64/kernel/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.ko): No such device
In some cases observing below messages on bootup :
kernel: p4-clockmod: Warning: EST-capable CPU detected. The acpi-cpufreq
module offers voltage scaling in addition of frequency scaling. You
should use that instead of p4-clockmod, if possible.
Resolution
- First ensure that the system BIOS is configured to allow the OS to control CPU power management.
Ex : Follow below ways in case of "HP ProLiant DL380 Gen10" Hardware
System configuration ---> Bios ---> Power Management and then changed 'Power Profile' to custom and Power Regulator to 'OS Control Mode'
Note: Above ways will be different in case of different hardware,the main objective is just to switch control of Power Management to OS.
- Second add intel_pstate=disable as kernel command line parameter
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel_hp/root rd.lvm.lv=rhel_hp/swap intel_pstate=disable console=ttyS0,115200"
Refer:
How do I permanently modify the kernel command line in RHEL 7?
How do I permanently modify the kernel command line in RHEL 8?
Verify the presence of intel_pstate=disable parameter within the /proc/cmdline file:
# grep intel_pstate /proc/cmdline
Diagnostic Steps
- Following CPUfreq modules are available
$ ls /lib/modules/<kernel-version>/kernel/drivers/cpufreq
acpi-cpufreq.ko.xz amd_freq_sensitivity.ko.xz cpufreq_stats.ko.xz p4-clockmod.ko.xz pcc-cpufreq.ko.xz powernow-k8.ko.xz speedstep-lib.ko.xz
- Initially following outputs displayed
$ cpupower frequency-info
analyzing CPU 0:
no or unknown cpufreq driver is active on this CPU <<------
CPUs which run at the same hardware frequency: Not Available
CPUs which need to have their frequency coordinated by software: Not Available
maximum transition latency: Cannot determine or is not supported.
hardware limits: Not Available
[..........]
$ cpupower frequency-info
analyzing CPU 0:
driver: intel_pstate <<------
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: Cannot determine or is not supported.
hardware limits: 1.20 GHz - 2.40 GHz
available cpufreq governors: conservative userspace powersave ondemand performance
current policy: frequency should be within 1.20 GHz and 2.40 GHz.
The governor "performance" may decide which speed to use
[..................]
After following Resolution we can confirm from below command output that ACPI CPUfreq module loaded
$ cpupower frequency-info
analyzing CPU 0:
**driver: acpi-cpufreq** <<-----
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us
hardware limits: 1.20 GHz - 2.40 GHz
available frequency steps: 2.40 GHz, 2.40 GHz, 2.30 GHz, 2.20 GHz, 2.10 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz
available cpufreq governors: conservative userspace powersave ondemand performance
current policy: frequency should be within 1.20 GHz and 2.40 GHz.
The governor "performance" may decide which speed to use
[........]
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments