On 08/03/2015 02:39 AM, Michal Privoznik wrote: > This is no functional change. It's just that later in the series we > will need to pass class_id as an integer. > > Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx> > --- > src/network/bridge_driver.c | 4 ++-- > src/util/virnetdevbandwidth.c | 10 +++++++--- > src/util/virnetdevbandwidth.h | 2 +- > 3 files changed, 10 insertions(+), 6 deletions(-) > > diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c > index 3d6721b..17fc430 100644 > --- a/src/network/bridge_driver.c > +++ b/src/network/bridge_driver.c > @@ -4840,7 +4840,7 @@ networkPlugBandwidth(virNetworkObjPtr net, > } > /* update rate for non guaranteed NICs */ > new_rate -= net->floor_sum; > - if (virNetDevBandwidthUpdateRate(net->def->bridge, "1:2", > + if (virNetDevBandwidthUpdateRate(net->def->bridge, 2, > net->def->bandwidth, new_rate) < 0) > VIR_WARN("Unable to update rate for 1:2 class on %s bridge", > net->def->bridge); > @@ -4891,7 +4891,7 @@ networkUnplugBandwidth(virNetworkObjPtr net, > } > /* update rate for non guaranteed NICs */ > new_rate -= net->floor_sum; > - if (virNetDevBandwidthUpdateRate(net->def->bridge, "1:2", > + if (virNetDevBandwidthUpdateRate(net->def->bridge, 2, > net->def->bandwidth, new_rate) < 0) > VIR_WARN("Unable to update rate for 1:2 class on %s bridge", > net->def->bridge); > diff --git a/src/util/virnetdevbandwidth.c b/src/util/virnetdevbandwidth.c > index 6ae0877..91201ae 100644 > --- a/src/util/virnetdevbandwidth.c > +++ b/src/util/virnetdevbandwidth.c > @@ -638,7 +638,8 @@ virNetDevBandwidthUnplug(const char *brname, > /** > * virNetDevBandwidthUpdateRate: > * @ifname: interface name > - * @classid: ID of class to update > + * @id: unique identifier (MUST be greater than 2) > + * @bandwidth: used to derive 'ceil' of class with @id > * @new_rate: new rate > * > * This function updates the 'rate' attribute of HTB class. > @@ -650,16 +651,18 @@ virNetDevBandwidthUnplug(const char *brname, > */ > int > virNetDevBandwidthUpdateRate(const char *ifname, > - const char *class_id, > + unsigned int id, > virNetDevBandwidthPtr bandwidth, > unsigned long long new_rate) > { > int ret = -1; > virCommandPtr cmd = NULL; > + char *class_id = NULL; > char *rate = NULL; > char *ceil = NULL; > > - if (virAsprintf(&rate, "%llukbps", new_rate) < 0 || > + if (virAsprintf(&class_id, "1:%x", id) < 0 || > + virAsprintf(&rate, "%llukbps", new_rate) < 0 || > virAsprintf(&ceil, "%llukbps", bandwidth->in->peak ? > bandwidth->in->peak : > bandwidth->in->average) < 0) > @@ -677,6 +680,7 @@ virNetDevBandwidthUpdateRate(const char *ifname, > > cleanup: > virCommandFree(cmd); > + VIR_FREE(class_id); > VIR_FREE(rate); > VIR_FREE(ceil); > return ret; > diff --git a/src/util/virnetdevbandwidth.h b/src/util/virnetdevbandwidth.h > index 9b1d2a6..f42094c 100644 > --- a/src/util/virnetdevbandwidth.h > +++ b/src/util/virnetdevbandwidth.h > @@ -68,7 +68,7 @@ int virNetDevBandwidthUnplug(const char *brname, > ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK; > > int virNetDevBandwidthUpdateRate(const char *ifname, > - const char *class_id, > + unsigned int id, > virNetDevBandwidthPtr bandwidth, > unsigned long long new_rate) > ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) > You'll need to remove the ATTRIBUTE_NONNULL(2) to make Coverity builds happy... You can move the ATTRIBUTE_RETURN_CHECK to the same line if you want also. ACK with that adjustment, John -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list