On 30/10/15 17:49, Jan Beulich wrote: > I was quite surprised to find "cpufreq=off" not doing what one would > expect it to do. Fix this. > > Signed-off-by: Jan Beulich <jbeul...@suse.com> > > --- a/docs/misc/xen-command-line.markdown > +++ b/docs/misc/xen-command-line.markdown > @@ -391,11 +391,12 @@ If set, force use of the performance cou > available support. > > ### cpufreq > -> `= dom0-kernel | none | > xen[,[powersave|performance|ondemand|userspace][,<maxfreq>][,[<minfreq>][,[verbose]]]]` > +> `= none | {{ <boolean> | xen } > [:[powersave|performance|ondemand|userspace][,<maxfreq>][,[<minfreq>][,[verbose]]]]} > | dom0-kernel`
If I am reading the parsing correctly below, the insertion if ':' is to match the previous behaviour? (or have I missed something?) ~Andrew > > > Default: `xen` > > -Indicate where the responsibility for driving power states lies. > +Indicate where the responsibility for driving power states lies. Note that > the > +choice of `dom0-kernel` is deprecated and not supported by all Dom0 kernels. > > * Default governor policy is ondemand. > * `<maxfreq>` and `<minfreq>` are integers which represent max and min > processor frequencies > --- a/xen/drivers/cpufreq/cpufreq.c > +++ b/xen/drivers/cpufreq/cpufreq.c > @@ -64,9 +64,14 @@ enum cpufreq_controller cpufreq_controll > > static void __init setup_cpufreq_option(char *str) > { > - char *arg; > + char *arg = strpbrk(str, ",:"); > + int choice; > > - if ( !strcmp(str, "dom0-kernel") ) > + if ( arg ) > + *arg++ = '\0'; > + choice = parse_bool(str); > + > + if ( choice < 0 && !strcmp(str, "dom0-kernel") ) > { > xen_processor_pmbits &= ~XEN_PROCESSOR_PM_PX; > cpufreq_controller = FREQCTL_dom0_kernel; > @@ -74,19 +79,20 @@ static void __init setup_cpufreq_option( > return; > } > > - if ( !strcmp(str, "none") ) > + if ( choice == 0 || !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 ( choice > 0 || !strcmp(str, "xen") ) > + { > + xen_processor_pmbits |= XEN_PROCESSOR_PM_PX; > + cpufreq_controller = FREQCTL_xen; > if ( arg && *arg ) > cpufreq_cmdline_parse(arg); > + } > } > custom_param("cpufreq", setup_cpufreq_option); > > > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel
_______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel