[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RFC 03/25] Move cpufreq option parsing to cpufreq.c
>>> On 06.12.11 at 19:19, <stefano.stabellini@xxxxxxxxxxxxx> wrote: > From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> > > Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> > Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> > Signed-off-by: Tim Deegan <Tim.Deegan@xxxxxxxxxx> Acked-by: Jan Beulich <jbeulich@xxxxxxxx> (perhaps as a standalone change, i.e. outside the whole series) > --- > xen/common/domain.c | 35 ++--------------------------------- > xen/drivers/cpufreq/cpufreq.c | 31 +++++++++++++++++++++++++++++++ > xen/include/xen/domain.h | 2 ++ > 3 files changed, 35 insertions(+), 33 deletions(-) > > diff --git a/xen/common/domain.c b/xen/common/domain.c > index b75fc1d..f751d8f 100644 > --- a/xen/common/domain.c > +++ b/xen/common/domain.c > @@ -31,8 +31,8 @@ > #include <xen/grant_table.h> > #include <xen/xenoprof.h> > #include <xen/irq.h> > -#include <acpi/cpufreq/cpufreq.h> > #include <asm/debugger.h> > +#include <asm/processor.h> > #include <public/sched.h> > #include <public/sysctl.h> > #include <public/vcpu.h> > @@ -45,40 +45,9 @@ > unsigned int xen_processor_pmbits = XEN_PROCESSOR_PM_PX; > > /* opt_dom0_vcpus_pin: If true, dom0 VCPUs are pinned. */ > -static bool_t opt_dom0_vcpus_pin; > +bool_t opt_dom0_vcpus_pin; > boolean_param("dom0_vcpus_pin", opt_dom0_vcpus_pin); > > -/* set xen as default cpufreq */ > -enum cpufreq_controller cpufreq_controller = FREQCTL_xen; > - > -static void __init setup_cpufreq_option(char *str) > -{ > - char *arg; > - > - if ( !strcmp(str, "dom0-kernel") ) > - { > - xen_processor_pmbits &= ~XEN_PROCESSOR_PM_PX; > - cpufreq_controller = FREQCTL_dom0_kernel; > - opt_dom0_vcpus_pin = 1; > - return; > - } > - > - if ( !strcmp(str, "none") ) > - { > - xen_processor_pmbits &= ~XEN_PROCESSOR_PM_PX; > - cpufreq_controller = FREQCTL_none; > - return; > - } > - > - if ( (arg = strpbrk(str, ",:")) != NULL ) > - *arg++ = '\0'; > - > - if ( !strcmp(str, "xen") ) > - if ( arg && *arg ) > - cpufreq_cmdline_parse(arg); > -} > -custom_param("cpufreq", setup_cpufreq_option); > - > /* Protect updates/reads (resp.) of domain_list and domain_hash. */ > DEFINE_SPINLOCK(domlist_update_lock); > DEFINE_RCU_READ_LOCK(domlist_read_lock); > diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c > index f49ea1c..34ea2a9 100644 > --- a/xen/drivers/cpufreq/cpufreq.c > +++ b/xen/drivers/cpufreq/cpufreq.c > @@ -61,6 +61,37 @@ static LIST_HEAD_READ_MOSTLY(cpufreq_dom_list_head); > struct cpufreq_governor *__read_mostly cpufreq_opt_governor; > LIST_HEAD_READ_MOSTLY(cpufreq_governor_list); > > +/* set xen as default cpufreq */ > +enum cpufreq_controller cpufreq_controller = FREQCTL_xen; > + > +static void __init setup_cpufreq_option(char *str) > +{ > + char *arg; > + > + if ( !strcmp(str, "dom0-kernel") ) > + { > + xen_processor_pmbits &= ~XEN_PROCESSOR_PM_PX; > + cpufreq_controller = FREQCTL_dom0_kernel; > + opt_dom0_vcpus_pin = 1; > + return; > + } > + > + if ( !strcmp(str, "none") ) > + { > + xen_processor_pmbits &= ~XEN_PROCESSOR_PM_PX; > + cpufreq_controller = FREQCTL_none; > + return; > + } > + > + if ( (arg = strpbrk(str, ",:")) != NULL ) > + *arg++ = '\0'; > + > + if ( !strcmp(str, "xen") ) > + if ( arg && *arg ) > + cpufreq_cmdline_parse(arg); > +} > +custom_param("cpufreq", setup_cpufreq_option); > + > bool_t __read_mostly cpufreq_verbose; > > struct cpufreq_governor *__find_governor(const char *governor) > diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h > index 765e132..de3e8db 100644 > --- a/xen/include/xen/domain.h > +++ b/xen/include/xen/domain.h > @@ -85,4 +85,6 @@ int continue_hypercall_on_cpu( > > extern unsigned int xen_processor_pmbits; > > +extern bool_t opt_dom0_vcpus_pin; > + > #endif /* __XEN_DOMAIN_H__ */ _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |