[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3 of 4 v2] xl: add support for vif rate limiting
On Tue, 2012-04-17 at 02:58 +0100, Mathieu Gagnà wrote: > The `rate` keyword specifies the rate at which the outgoing traffic will be > limited to. > The default if this keyword is not specified is unlimited. > > The `rate` keyword supports an optional replenishment interval parameter for > specifying > the granularity of credit replenishment. It determines the frequency at which > the vif transmission credit is replenished. The default interval is 50ms. > > For example: > > 'rate=10Mb/s' > 'rate=250KB/s' > 'rate=1MB/s@20ms' > > Signed-off-by: Mathieu Gagnà <mgagne@xxxxxxxx> > > ddiff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c > --- a/tools/libxl/libxl.c > +++ b/tools/libxl/libxl.c > @@ -1854,6 +1854,13 @@ int libxl_device_nic_add(libxl_ctx *ctx, > flexarray_append(back, libxl__strdup(gc, nic->ip)); > } > > + if (nic->rate_interval_usecs > 0) { > + flexarray_append(back, "rate"); > + flexarray_append(back, libxl__sprintf(gc, "%llu,%lu", I think you want to use PRIu64 and PRIu32 here. "%"PRIu64",%"PRIu32" > + (unsigned long long) > nic->rate_bytes_per_interval, > + (unsigned long) nic->rate_interval_usecs)); > + } > + > flexarray_append(back, "bridge"); > flexarray_append(back, libxl__strdup(gc, nic->bridge)); > flexarray_append(back, "handle"); > @@ -4855,6 +4873,7 @@ int main_networkattach(int argc, char ** > { > int opt; > libxl_device_nic nic; > + XLU_Config *config = 0; > char *endptr, *oparg; > const char *tok; > int i; > @@ -4910,6 +4929,7 @@ int main_networkattach(int argc, char ** > } else if (MATCH_OPTION("model", *argv, oparg)) { > replace_string(&nic.model, oparg); > } else if (MATCH_OPTION("rate", *argv, oparg)) { > + parse_vif_rate(&config, oparg, &nic); > } else if (MATCH_OPTION("accel", *argv, oparg)) { > } else { > fprintf(stderr, "unrecognized argument `%s'\n", *argv); Both this and the existing main_blockattach and pci{attach,destach} appear to fail to call xlu_cfg_destroy and so are a bit leaky. I don't think this is critical right now (the process exits right away) -- but if you fancied fixing these up in a future patch it'd be much appreciated. Given the use of PRIuXX as above: Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |