From 6245296f058fe1f96a8a6c374cbeb36caf63efdb Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Fri, 25 Oct 2019 16:26:35 +0200 Subject: [PATCH] conf: capabilities: Modernize virCapabilitiesFormatMemoryBandwidth MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Use virXMLFormatElement and the automatic memory handlers to simplfy the code. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko Reviewed-by: Daniel P. Berrangé --- src/conf/capabilities.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/conf/capabilities.c b/src/conf/capabilities.c index 1ab389bc65..f3b34b7040 100644 --- a/src/conf/capabilities.c +++ b/src/conf/capabilities.c @@ -1024,7 +1024,6 @@ virCapabilitiesFormatMemoryBandwidth(virBufferPtr buf, virCapsHostMemBWPtr memBW) { size_t i = 0; - virBuffer childrenBuf = VIR_BUFFER_INITIALIZER; if (!memBW->nnodes) return 0; @@ -1033,17 +1032,18 @@ virCapabilitiesFormatMemoryBandwidth(virBufferPtr buf, virBufferAdjustIndent(buf, 2); for (i = 0; i < memBW->nnodes; i++) { + g_auto(virBuffer) attrBuf = VIR_BUFFER_INITIALIZER; + g_auto(virBuffer) childrenBuf = VIR_BUFFER_INITIALIZER; virCapsHostMemBWNodePtr node = memBW->nodes[i]; virResctrlInfoMemBWPerNodePtr control = &node->control; - char *cpus_str = virBitmapFormat(node->cpus); + g_autofree char *cpus_str = virBitmapFormat(node->cpus); if (!cpus_str) return -1; - virBufferAsprintf(buf, - "id, cpus_str); - VIR_FREE(cpus_str); virBufferSetChildIndent(&childrenBuf, buf); virBufferAsprintf(&childrenBuf, @@ -1052,13 +1052,7 @@ virCapabilitiesFormatMemoryBandwidth(virBufferPtr buf, control->granularity, control->min, control->max_allocation); - if (virBufferUse(&childrenBuf)) { - virBufferAddLit(buf, ">\n"); - virBufferAddBuffer(buf, &childrenBuf); - virBufferAddLit(buf, "\n"); - } else { - virBufferAddLit(buf, "/>\n"); - } + virXMLFormatElement(buf, "node", &attrBuf, &childrenBuf); } if (virCapabilitiesFormatResctrlMonitor(buf, memBW->monitor) < 0) -- 2.47.2