]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu_blockjob: Move active commit failed state handling into a function
authorMichal Privoznik <mprivozn@redhat.com>
Fri, 30 Aug 2019 12:21:24 +0000 (14:21 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Sat, 31 Aug 2019 08:11:37 +0000 (10:11 +0200)
Currently, there are only a few lines of code so a separate
function was not necessary, but this will change. So instead of
putting all the new code under 'case
QEMU_BLOCKJOB_TYPE_ACTIVE_COMMIT' create a separate function.
Just like every other case has one.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
ACKed-by: Peter Krempa <pkrempa@redhat.com>
src/qemu/qemu_blockjob.c

index 3003e9c51856e8a087ad6bc27e90fb3a5a2ad064..c77a129bfce072581fead0a70b5ec257aad4b3c2 100644 (file)
@@ -1121,6 +1121,20 @@ qemuBlockJobProcessEventConcludedCopyAbort(virQEMUDriverPtr driver,
 }
 
 
+static void
+qemuBlockJobProcessEventFailedActiveCommit(virDomainObjPtr vm,
+                                           qemuBlockJobDataPtr job)
+{
+    VIR_DEBUG("active commit job '%s' on VM '%s' failed", job->name, vm->def->name);
+
+    if (!job->disk)
+        return;
+
+    virObjectUnref(job->disk->mirror);
+    job->disk->mirror = NULL;
+}
+
+
 static void
 qemuBlockJobProcessEventConcludedCreate(virQEMUDriverPtr driver,
                                         virDomainObjPtr vm,
@@ -1211,10 +1225,7 @@ qemuBlockJobEventProcessConcludedTransition(qemuBlockJobDataPtr job,
             break;
 
         case QEMU_BLOCKJOB_TYPE_ACTIVE_COMMIT:
-            if (job->disk) {
-                virObjectUnref(job->disk->mirror);
-                job->disk->mirror = NULL;
-            }
+            qemuBlockJobProcessEventFailedActiveCommit(vm, job);
             break;
 
         case QEMU_BLOCKJOB_TYPE_CREATE: