|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH] automatically enable cpu frequency scaling
Automatically enable cpu frequency scaling, unless the user disables it
with cpufreq=off or cpufreq=none on the xen commandline, or the number
of VCPUs that dom0 has does not match the number of physical CPUs in
the system.
Signed-off-by: Rik van Riel <riel@xxxxxxxxxx>
--- xen/arch/x86/domain_build.c.autofreq 2007-12-13 14:48:19.000000000
-0500
+++ xen/arch/x86/domain_build.c 2007-12-13 14:53:23.000000000 -0500
@@ -780,6 +780,16 @@ int __init construct_dom0(
opt_dom0_max_vcpus = BITS_PER_GUEST_LONG(d);
printk("Dom0 has maximum %u VCPUs\n", opt_dom0_max_vcpus);
+ /*
+ * If dom0 has fewer VCPUs than there are physical CPUs on the system,
+ * we need to disable cpu frequency scaling.
+ */
+ if ( opt_dom0_max_vcpus != num_online_cpus() ) {
+ extern unsigned int opt_dom0_vcpus_pin;
+ cpufreq_controller = FREQCTL_none;
+ opt_dom0_vcpus_pin = 0;
+ }
+
for ( i = 1; i < opt_dom0_max_vcpus; i++ )
(void)alloc_vcpu(d, i, i);
--- xen/common/schedule.c.autofreq 2007-12-13 14:45:13.000000000 -0500
+++ xen/common/schedule.c 2007-12-13 14:53:51.000000000 -0500
@@ -38,16 +38,19 @@ static char opt_sched[10] = "credit";
string_param("sched", opt_sched);
/* opt_dom0_vcpus_pin: If true, dom0 VCPUs are pinned. */
-static unsigned int opt_dom0_vcpus_pin;
+unsigned int opt_dom0_vcpus_pin = 1;
boolean_param("dom0_vcpus_pin", opt_dom0_vcpus_pin);
-enum cpufreq_controller cpufreq_controller;
+enum cpufreq_controller cpufreq_controller = FREQCTL_dom0_kernel;
static void __init setup_cpufreq_option(char *str)
{
if ( !strcmp(str, "dom0-kernel") )
{
cpufreq_controller = FREQCTL_dom0_kernel;
opt_dom0_vcpus_pin = 1;
+ } else if ( !strcmp(str, "off") || !strcmp(str, "none") ) {
+ cpufreq_controller = FREQCTL_none;
+ opt_dom0_vcpus_pin = 0;
}
}
custom_param("cpufreq", setup_cpufreq_option);
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-devel] [PATCH] automatically enable cpu frequency scaling,
Rik van Riel <=
|
|
|
|
|