]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: blockjob: Drop unnecessary calls to qemuBlockJobSyncEndDisk
authorPeter Krempa <pkrempa@redhat.com>
Thu, 22 Nov 2018 17:34:42 +0000 (18:34 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 17 Jan 2019 16:12:50 +0000 (17:12 +0100)
If the job wasn't started, we don't need to end the synchronous job. Add
a note and drop the unnecessary calls.

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

index 085e64a49da70c5795769bbf4ad640481e35baaa..5a2c6bb5277e1122178fb1d204858fd2a059d703 100644 (file)
@@ -392,7 +392,9 @@ qemuBlockJobSyncBeginDisk(virDomainDiskDefPtr disk)
  * @disk: domain disk
  *
  * End a synchronous block job for @disk. Any pending block job event
- * for the disk is processed.
+ * for the disk is processed. Note that it's not necessary to call this function
+ * in case the block job was not started successfully if
+ * qemuBlockJobStartupFinalize will be called.
  */
 void
 qemuBlockJobSyncEndDisk(virDomainObjPtr vm,
index 87b6d0e1e4c27e6ccd0623b90be7fea9eba36f7e..588e61cfce8a2f851924ddb4c49fb4218b57628b 100644 (file)
@@ -703,10 +703,8 @@ qemuMigrationSrcNBDCopyCancel(virQEMUDriverPtr driver,
         virDomainDiskDefPtr disk = vm->def->disks[i];
         qemuDomainDiskPrivatePtr diskPriv = QEMU_DOMAIN_DISK_PRIVATE(disk);
 
-        if (!diskPriv->blockjob->started) {
-            qemuBlockJobSyncEndDisk(vm, asyncJob, disk);
+        if (!diskPriv->blockjob->started)
             diskPriv->migrating = false;
-        }
 
         if (!diskPriv->migrating)
             continue;
@@ -929,10 +927,8 @@ qemuMigrationSrcNBDStorageCopyOne(virQEMUDriverPtr driver,
                                                        mirror_flags);
     }
 
-    if (rc < 0) {
-        qemuBlockJobSyncEndDisk(vm, QEMU_ASYNC_JOB_MIGRATION_OUT, disk);
+    if (rc < 0)
         goto cleanup;
-    }
 
     diskPriv->migrating = true;
     qemuBlockJobStarted(job);