[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 4/5] x86: allow limiting the max C-state sub-state
>>> On 10.06.19 at 18:43, <andrew.cooper3@xxxxxxxxxx> wrote: > On 23/05/2019 13:18, Jan Beulich wrote: >> From: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx> >> >> Allow limiting the max C-state sub-state by appending to the max_cstate >> command-line parameter. E.g. max_cstate=1,0 >> The limit only applies to the highest legal C-state. For example: >> max_cstate = 1, max_csubstate = 0 ==> C0, C1 okay, but not C1E >> max_cstate = 1, max_csubstate = 1 ==> C0, C1 and C1E okay, but not C2 >> max_cstate = 2, max_csubstate = 0 ==> C0, C1, C1E, C2 okay, but not C3 >> max_cstate = 2, max_csubstate = 1 ==> C0, C1, C1E, C2 okay, but not C3 >> >> Signed-off-by: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx> >> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> > > Is this only useful in practice for limiting C1E ? This may have been the original primary goal, but if you look at the tables in mwait-idle.c you'll find further sub-states. >> --- a/xen/arch/x86/acpi/cpu_idle.c >> +++ b/xen/arch/x86/acpi/cpu_idle.c >> @@ -104,7 +104,17 @@ bool lapic_timer_init(void) >> >> void (*__read_mostly pm_idle_save)(void); >> unsigned int max_cstate __read_mostly = UINT_MAX; >> -integer_param("max_cstate", max_cstate); >> +unsigned int max_csubstate __read_mostly = UINT_MAX; >> + >> +static int __init parse_cstate(const char *s) >> +{ >> + max_cstate = simple_strtoul(s, &s, 0); >> + if ( *s == ',' ) >> + max_csubstate = simple_strtoul(s + 1, &s, 0); > > You can pass NULL for endp, seeing as it isn't used. Ah yes. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |