]> xenbits.xensource.com Git - libvirt.git/commitdiff
virDomainDriverGetIOThreadsConfig: Automatically free virBitmap
authorPeter Krempa <pkrempa@redhat.com>
Tue, 7 Dec 2021 16:18:46 +0000 (17:18 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 10 Dec 2021 15:36:24 +0000 (16:36 +0100)
Use g_autoptr for the temp bitmap. To achieve this the variable must be
moved down to the appropriate scope.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/hypervisor/domain_driver.c

index 31737b0f4a20f72ff303ee39a8eff5a579e58fd9..2083f062878e0aa6cff116dfaa686a80aebde619 100644 (file)
@@ -592,8 +592,6 @@ virDomainDriverGetIOThreadsConfig(virDomainDef *targetDef,
                                   unsigned int bitmap_size)
 {
     virDomainIOThreadInfoPtr *info_ret = NULL;
-    virBitmap *bitmap = NULL;
-    virBitmap *cpumask = NULL;
     size_t i;
     int ret = -1;
 
@@ -603,6 +601,8 @@ virDomainDriverGetIOThreadsConfig(virDomainDef *targetDef,
     info_ret = g_new0(virDomainIOThreadInfoPtr, targetDef->niothreadids);
 
     for (i = 0; i < targetDef->niothreadids; i++) {
+        g_autoptr(virBitmap) bitmap = NULL;
+        virBitmap *cpumask = NULL;
         info_ret[i] = g_new0(virDomainIOThreadInfo, 1);
 
         /* IOThread ID's are taken from the iothreadids list */
@@ -627,8 +627,6 @@ virDomainDriverGetIOThreadsConfig(virDomainDef *targetDef,
         if (virBitmapToData(cpumask, &info_ret[i]->cpumap,
                             &info_ret[i]->cpumaplen) < 0)
             goto cleanup;
-        virBitmapFree(bitmap);
-        bitmap = NULL;
     }
 
     *info = g_steal_pointer(&info_ret);
@@ -640,7 +638,6 @@ virDomainDriverGetIOThreadsConfig(virDomainDef *targetDef,
             virDomainIOThreadInfoFree(info_ret[i]);
         VIR_FREE(info_ret);
     }
-    virBitmapFree(bitmap);
 
     return ret;
 }