[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v1 3/3] xl: enable per-VCPU extratime flag for RTDS
On Sun, Aug 6, 2017 at 12:22 PM, Meng Xu <mengxu@xxxxxxxxxxxxx> wrote: > Change main_sched_rtds and related output functions to support > per-VCPU extratime flag. > > Signed-off-by: Meng Xu <mengxu@xxxxxxxxxxxxx> > > --- > Changes from RFC v1 > Changes work_conserving flag to extratime flag > --- > tools/xl/xl_cmdtable.c | 3 ++- > tools/xl/xl_sched.c | 56 > ++++++++++++++++++++++++++++++++++---------------- > 2 files changed, 40 insertions(+), 19 deletions(-) > > diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c > index 2c71a9f..88933a4 100644 > --- a/tools/xl/xl_cmdtable.c > +++ b/tools/xl/xl_cmdtable.c > @@ -272,12 +272,13 @@ struct cmd_spec cmd_table[] = { > { "sched-rtds", > &main_sched_rtds, 0, 1, > "Get/set rtds scheduler parameters", > - "[-d <Domain> [-v[=VCPUID/all]] [-p[=PERIOD]] [-b[=BUDGET]]]", > + "[-d <Domain> [-v[=VCPUID/all]] [-p[=PERIOD]] [-b[=BUDGET]] > [-e[=EXTRATIME]]]", > "-d DOMAIN, --domain=DOMAIN Domain to modify\n" > "-v VCPUID/all, --vcpuid=VCPUID/all VCPU to modify or output;\n" > " Using '-v all' to modify/output all vcpus\n" > "-p PERIOD, --period=PERIOD Period (us)\n" > "-b BUDGET, --budget=BUDGET Budget (us)\n" > + "-e EXTRATIME, --extratime=EXTRATIME EXTRATIME (1=yes, 0=no)\n" Hi Dario, I kept the EXTRATIME value for -e option because: (1) it may be more intuitive for users; (2) it needs much less code change than the input style that does not need EXTRATIME value. As to (1), if users want to set some VCPUs with extratime flag set and some with extratime flag clear, there are two types of input: (a) xl sched-rtds -d 1 -v 1 -p 10000 -b 4000 -e 0 -v 2 -p 10000 -b 4000 -e 1 -v 5 -p 10000 -b 4000 -e 0 (b) xl sched-rtds -d 1 -v 1 -p 10000 -b 4000 -v 2 -p 10000 -b 4000 -e 1 -v 5 -p 10000 -b 4000 I felt that the style (a) is more intuitive and the input commands have very static pattern, i.e., each vcpu must have -v -p -b -e options set. As to (2), if we go with -e without EXTRATIME, we will have to keep track of the vcpu that has no -e option. I thought about this option, we can pre-set the extratime value to false when -v option is assigned: case 'v': ... extratimes[v_index] = 0; and set the extratimes[v_index] = 0 when -e is set. This approach is not very neat in the code: we have to reallocate memory for extratimes array when its size is not enough; we also have to deal with the special case when -e is set before -v, such as the command "xl sched-rtds -p 10000 -b 4000 -e -v 0" Best, Meng ----------- Meng Xu PhD Candidate in Computer and Information Science University of Pennsylvania http://www.cis.upenn.edu/~mengxu/ _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |