Commit 48cdd828 authored by Konrad Rzeszutek Wilk's avatar Konrad Rzeszutek Wilk

xen/cpufreq: Disable the cpu frequency scaling drivers from loading.

By using the functionality provided by "[CPUFREQ]: provide
disable_cpuidle() function to disable the API."

Under the Xen hypervisor we do not want the initial domain to exercise
the cpufreq scaling drivers. This is b/c the Xen hypervisor is
in charge of doing this as well and we can end up with both the
Linux kernel and the hypervisor trying to change the P-states
leading to weird performance issues.
Acked-by: default avatarJan Beulich <jbeulich@suse.com>
Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
[v2: Fix compile error spotted by Benjamin Schweikert <b.schweikert@googlemail.com>]
parent 448c8b1d
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include <linux/pm.h> #include <linux/pm.h>
#include <linux/memblock.h> #include <linux/memblock.h>
#include <linux/cpuidle.h> #include <linux/cpuidle.h>
#include <linux/cpufreq.h>
#include <asm/elf.h> #include <asm/elf.h>
#include <asm/vdso.h> #include <asm/vdso.h>
...@@ -420,6 +421,7 @@ void __init xen_arch_setup(void) ...@@ -420,6 +421,7 @@ void __init xen_arch_setup(void)
boot_cpu_data.hlt_works_ok = 1; boot_cpu_data.hlt_works_ok = 1;
#endif #endif
disable_cpuidle(); disable_cpuidle();
disable_cpufreq();
WARN_ON(set_pm_idle_to_default()); WARN_ON(set_pm_idle_to_default());
fiddle_vdso(); fiddle_vdso();
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment