[libvirt] [PATCH] bandwidth: Integrate bandwidth into portgroups

Michal Privoznik mprivozn at redhat.com
Wed Jul 27 08:28:43 UTC 2011


On 26.07.2011 20:04, Laine Stump wrote:
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index 031862a..f99294c 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -8867,8 +8867,7 @@ virDomainNetDefFormat(virBufferPtr buf,
>           virBufferAddLit(buf,   "</tune>\n");
>       }
>
> -    if (virBandwidthDefFormat(buf, virDomainNetGetActualBandwidth(def),
> -                              "      ")<  0)
> +    if (virBandwidthDefFormat(buf, def->bandwidth, "      ")<  0)
>           return -1;
>
>       if (virDomainDeviceInfoFormat(buf,&def->info, flags)<  0)
> diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
> index 0fa26dd..a406100 100644
> --- a/src/libvirt_private.syms
> +++ b/src/libvirt_private.syms
> @@ -337,6 +337,7 @@ virDomainLoadAllConfigs;
>   virDomainMemballoonModelTypeFromString;
>   virDomainMemballoonModelTypeToString;
>   virDomainNetDefFree;
> +virDomainNetGetActualBandwidth;
>   virDomainNetGetActualBridgeName;
>   virDomainNetGetActualDirectDev;
>   virDomainNetGetActualDirectMode;
> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
> index f8fd4ee..35d6b1e 100644
> --- a/src/qemu/qemu_command.c
> +++ b/src/qemu/qemu_command.c
> @@ -132,7 +132,8 @@ qemuPhysIfaceConnect(virDomainDefPtr def,
>                           vnet_hdr, def->uuid,
>                           virDomainNetGetActualDirectVirtPortProfile(net),
>                           &res_ifname,
> -                        vmop, driver->stateDir, net->bandwidth);
> +                        vmop, driver->stateDir,
> +                        virDomainNetGetActualBandwidth(net));
>       if (rc>= 0) {
>           virDomainAuditNetDevice(def, net, res_ifname, true);
>           VIR_FREE(net->ifname);
> @@ -299,7 +300,8 @@ qemuNetworkIfaceConnect(virDomainDefPtr def,
>       }
>
>       if (tapfd>= 0&&
> -        virBandwidthEnable(net->bandwidth, net->ifname)<  0) {
> +        virBandwidthEnable(virDomainNetGetActualBandwidth(net),
> +                           net->ifname)<  0) {
>           qemuReportError(VIR_ERR_INTERNAL_ERROR,
>                           _("cannot set bandwidth limits on %s"),
>                           net->ifname);
> diff --git a/src/util/network.c b/src/util/network.c
> index 314cabe..6fcdab2 100644
> --- a/src/util/network.c
> +++ b/src/util/network.c
> @@ -1284,6 +1284,7 @@ virBandwidthCopy(virBandwidthPtr *dest,
>           return -1;
>       }
>
> +    *dest = NULL;
>       if (!src) {
>           /* nothing to be copied */
>           return 0;
> @@ -1305,6 +1306,7 @@ virBandwidthCopy(virBandwidthPtr *dest,
>       if (src->out) {
>           if (VIR_ALLOC((*dest)->out)<  0) {
>               virReportOOMError();
> +            VIR_FREE((*dest)->in);
>               goto cleanup;
>           }
Thanks, pushed.

Michal




More information about the libvir-list mailing list