[libvirt] [PATCH v3 8/8] domain: Keep assigned class_id in domstatus XML
Michal Privoznik
mprivozn at redhat.com
Tue Dec 11 17:48:33 UTC 2012
On 11.12.2012 17:38, Laine Stump wrote:
> On 12/11/2012 11:09 AM, Michal Privoznik wrote:
>> Interfaces keeps a class_id, which is an ID from which bridge
>> part of QoS settings is derived. We need to store class_id
>> in domain status file, so we can later pass it to
>> virNetDevBandwidthUnplug.
>> ---
>> src/conf/domain_conf.c | 13 +++++++++++++
>> 1 files changed, 13 insertions(+), 0 deletions(-)
>>
>> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
>> index 18e65ca..f5e2f71 100644
>> --- a/src/conf/domain_conf.c
>> +++ b/src/conf/domain_conf.c
>> @@ -4819,6 +4819,17 @@ virDomainActualNetDefParseXML(xmlNodePtr node,
>> hostdev, flags) < 0) {
>> goto error;
>> }
>> + } else if (actual->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
>> + char *class_id = virXPathString("string(./class/@id)", ctxt);
>> + if (class_id &&
>> + virStrToLong_ui(class_id, NULL, 10, &actual->class_id) < 0) {
>> + virReportError(VIR_ERR_INTERNAL_ERROR,
>> + _("Unable to parse class id '%s'"),
>> + class_id);
>> + VIR_FREE(class_id);
>> + goto error;
>> + }
>> + VIR_FREE(class_id);
>> }
>>
>> bandwidth_node = virXPathNode("./bandwidth", ctxt);
>> @@ -12511,6 +12522,8 @@ virDomainActualNetDefFormat(virBufferPtr buf,
>> break;
>>
>> case VIR_DOMAIN_NET_TYPE_NETWORK:
>> + if (def->class_id)
>> + virBufferAsprintf(buf, "<class id='%u'/>", def->class_id);
>> break;
>> default:
>> virReportError(VIR_ERR_INTERNAL_ERROR,
>
> ACK.
>
Thanks, I've pushed the patches now.
Michal
More information about the libvir-list
mailing list