提交 45090449 编写于 作者: M Michal Privoznik

virNetDevBandwidthUpdateRate: turn class_id into integer

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: NMichal Privoznik <mprivozn@redhat.com>
上级 327bc16a
......@@ -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);
......
......@@ -638,7 +638,8 @@ virNetDevBandwidthUnplug(const char *brname,
/**
* virNetDevBandwidthUpdateRate:
* @ifname: interface name
* @classid: ID of class to update
* @id: unique identifier
* @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;
......
......@@ -68,11 +68,10 @@ 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)
ATTRIBUTE_RETURN_CHECK;
ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURN_CHECK;
int virNetDevBandwidthUpdateFilter(const char *ifname,
const virMacAddr *ifmac_ptr,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册