]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: domain: Move qemuDomainObjPrivateAlloc after qemuDomainObjPrivateFree
authorPeter Krempa <pkrempa@redhat.com>
Fri, 23 Jul 2021 08:51:08 +0000 (10:51 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 26 Jul 2021 11:27:30 +0000 (13:27 +0200)
The freeing function will be needed to undo failures in allocation.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Tim Wiederhake <twiederh@redhat.com>
src/qemu/qemu_domain.c

index b919da6eab4954f7e6b9c0b2840117e6f70dac02..8d1ecc01406636b2c8178ad0d89ac5fc71574ed9 100644 (file)
@@ -1772,36 +1772,6 @@ qemuDomainObjStopWorker(virDomainObj *dom)
 }
 
 
-static void *
-qemuDomainObjPrivateAlloc(void *opaque)
-{
-    qemuDomainObjPrivate *priv;
-
-    priv = g_new0(qemuDomainObjPrivate, 1);
-
-    if (qemuDomainObjInitJob(&priv->job, &qemuPrivateJobCallbacks) < 0) {
-        virReportSystemError(errno, "%s",
-                             _("Unable to init qemu driver mutexes"));
-        goto error;
-    }
-
-    if (!(priv->devs = virChrdevAlloc()))
-        goto error;
-
-    priv->blockjobs = virHashNew(virObjectFreeHashData);
-
-    /* agent commands block by default, user can choose different behavior */
-    priv->agentTimeout = VIR_DOMAIN_AGENT_RESPONSE_TIMEOUT_BLOCK;
-    priv->migMaxBandwidth = QEMU_DOMAIN_MIG_BANDWIDTH_MAX;
-    priv->driver = opaque;
-
-    return priv;
-
- error:
-    VIR_FREE(priv);
-    return NULL;
-}
-
 /**
  * qemuDomainObjPrivateDataClear:
  * @priv: domain private data
@@ -1922,6 +1892,37 @@ qemuDomainObjPrivateFree(void *data)
 }
 
 
+static void *
+qemuDomainObjPrivateAlloc(void *opaque)
+{
+    qemuDomainObjPrivate *priv;
+
+    priv = g_new0(qemuDomainObjPrivate, 1);
+
+    if (qemuDomainObjInitJob(&priv->job, &qemuPrivateJobCallbacks) < 0) {
+        virReportSystemError(errno, "%s",
+                             _("Unable to init qemu driver mutexes"));
+        goto error;
+    }
+
+    if (!(priv->devs = virChrdevAlloc()))
+        goto error;
+
+    priv->blockjobs = virHashNew(virObjectFreeHashData);
+
+    /* agent commands block by default, user can choose different behavior */
+    priv->agentTimeout = VIR_DOMAIN_AGENT_RESPONSE_TIMEOUT_BLOCK;
+    priv->migMaxBandwidth = QEMU_DOMAIN_MIG_BANDWIDTH_MAX;
+    priv->driver = opaque;
+
+    return priv;
+
+ error:
+    VIR_FREE(priv);
+    return NULL;
+}
+
+
 static int
 qemuStorageSourcePrivateDataAssignSecinfo(qemuDomainSecretInfo **secinfo,
                                           char **alias)