[PATCH 09/36] qemuDomainSetVcpusInternal: Refactor cleanup

Peter Krempa pkrempa at redhat.com
Thu Dec 9 12:18:14 UTC 2021


Use automatic memory freeing for the temporary bitmap and remove the
pointless 'cleanup' section.

Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 src/qemu/qemu_hotplug.c | 19 +++++++------------
 1 file changed, 7 insertions(+), 12 deletions(-)

diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index f307420ac1..b4c8536b47 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -6665,16 +6665,15 @@ qemuDomainSetVcpusInternal(virQEMUDriver *driver,
                            bool hotpluggable)
 {
     g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver);
-    virBitmap *vcpumap = NULL;
+    g_autoptr(virBitmap) vcpumap = NULL;
     bool enable;
-    int ret = -1;

     if (def && nvcpus > virDomainDefGetVcpusMax(def)) {
         virReportError(VIR_ERR_INVALID_ARG,
                        _("requested vcpus is greater than max allowable"
                          " vcpus for the live domain: %u > %u"),
                        nvcpus, virDomainDefGetVcpusMax(def));
-        goto cleanup;
+        return -1;
     }

     if (persistentDef && nvcpus > virDomainDefGetVcpusMax(persistentDef)) {
@@ -6682,30 +6681,26 @@ qemuDomainSetVcpusInternal(virQEMUDriver *driver,
                        _("requested vcpus is greater than max allowable"
                          " vcpus for the persistent domain: %u > %u"),
                        nvcpus, virDomainDefGetVcpusMax(persistentDef));
-        goto cleanup;
+        return -1;
     }

     if (def) {
         if (!(vcpumap = qemuDomainSelectHotplugVcpuEntities(vm->def, nvcpus,
                                                             &enable)))
-            goto cleanup;
+            return -1;

         if (qemuDomainSetVcpusLive(driver, cfg, vm, vcpumap, enable) < 0)
-            goto cleanup;
+            return -1;
     }

     if (persistentDef) {
         qemuDomainSetVcpusConfig(persistentDef, nvcpus, hotpluggable);

         if (virDomainDefSave(persistentDef, driver->xmlopt, cfg->configDir) < 0)
-            goto cleanup;
+            return -1;
     }

-    ret = 0;
-
- cleanup:
-    virBitmapFree(vcpumap);
-    return ret;
+    return 0;
 }


-- 
2.31.1




More information about the libvir-list mailing list