]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemuSnapshotDiskContext: Store virQEMUDriverConfig in the struct
authorPeter Krempa <pkrempa@redhat.com>
Wed, 28 Apr 2021 12:12:39 +0000 (14:12 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 24 May 2021 18:38:07 +0000 (20:38 +0200)
The config is used both with the preparation and execution functions, so
we can store it in the context to simplify other helpers.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
src/qemu/qemu_snapshot.c

index 4e666cdf41eace523e917a6c1dd5849e97335e2b..b917a2924da96efdfcf482e43564a103da5d4e87 100644 (file)
@@ -896,6 +896,8 @@ struct _qemuSnapshotDiskContext {
 
     virJSONValue *actions;
 
+    virQEMUDriverConfig *cfg;
+
     /* needed for automatic cleanup of 'dd' */
     virDomainObj *vm;
     qemuDomainAsyncJob asyncJob;
@@ -909,11 +911,14 @@ qemuSnapshotDiskContextNew(size_t ndisks,
                            virDomainObj *vm,
                            qemuDomainAsyncJob asyncJob)
 {
+    qemuDomainObjPrivate *priv = vm->privateData;
+    virQEMUDriver *driver = priv->driver;
     qemuSnapshotDiskContext *ret = g_new0(qemuSnapshotDiskContext, 1);
 
     ret->dd = g_new0(qemuSnapshotDiskData, ndisks);
     ret->actions = virJSONValueNewArray();
     ret->vm = vm;
+    ret->cfg = virQEMUDriverGetConfig(driver);
     ret->asyncJob = asyncJob;
 
     return ret;
@@ -930,6 +935,8 @@ qemuSnapshotDiskContextCleanup(qemuSnapshotDiskContext *snapctxt)
 
     qemuSnapshotDiskCleanup(snapctxt->dd, snapctxt->ndd, snapctxt->vm, snapctxt->asyncJob);
 
+    virObjectUnref(snapctxt->cfg);
+
     g_free(snapctxt);
 }