]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: Replace virDomainObjWait with qemuDomainObjWait
authorPeter Krempa <pkrempa@redhat.com>
Wed, 10 Aug 2022 13:35:54 +0000 (15:35 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 11 Aug 2022 11:15:02 +0000 (13:15 +0200)
The qemu code will need to check other qemu-private conditions when
reporting success for waiting. Thus we must replace all use of it with a
qemu-specific helper. For now the helper forwards directly to
virDomainObjWait.

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

index c782611919c6585193d05e3fd2467102b6f80c55..6a80f6a4d6492bc9422e6fd8eb67c5194e9cb08f 100644 (file)
@@ -2711,7 +2711,7 @@ qemuBlockStorageSourceCreateGeneric(virDomainObj *vm,
 
     qemuBlockJobUpdate(vm, job, asyncJob);
     while (qemuBlockJobIsRunning(job))  {
-        if (virDomainObjWait(vm) < 0)
+        if (qemuDomainObjWait(vm) < 0)
             goto cleanup;
         qemuBlockJobUpdate(vm, job, asyncJob);
     }
index abd76dbd662417ec808d15ba734e1c57e9c7e95d..2caed7315b6be1ddfb49a4f8c0e136bd6780133f 100644 (file)
@@ -11775,3 +11775,10 @@ qemuDomainRemoveLogs(virQEMUDriver *driver,
 
     return 0;
 }
+
+
+int
+qemuDomainObjWait(virDomainObj *vm)
+{
+    return virDomainObjWait(vm);
+}
index 0141213804b08f808093485cb11806f0e9a5c23a..823f26b7c58c96480088606a26701cac79ab3208 100644 (file)
@@ -1101,3 +1101,6 @@ qemuDomainDeviceBackendChardevForeach(virDomainDef *def,
 int
 qemuDomainRemoveLogs(virQEMUDriver *driver,
                      const char *name);
+
+int
+qemuDomainObjWait(virDomainObj *vm);
index 4ff1d65c1e6455c639e3f7b3271a47cfa2948cba..0f4c443f09f6d1332b34c403b5c06be01499328c 100644 (file)
@@ -3020,7 +3020,7 @@ qemuDumpWaitForCompletion(virDomainObj *vm)
 
     VIR_DEBUG("Waiting for dump completion");
     while (!jobPriv->dumpCompleted && !priv->job.abortJob) {
-        if (virDomainObjWait(vm) < 0)
+        if (qemuDomainObjWait(vm) < 0)
             return -1;
     }
 
@@ -14650,7 +14650,7 @@ qemuDomainBlockJobAbort(virDomainPtr dom,
     if (!async) {
         qemuBlockJobUpdate(vm, job, VIR_ASYNC_JOB_NONE);
         while (qemuBlockJobIsRunning(job)) {
-            if (virDomainObjWait(vm) < 0) {
+            if (qemuDomainObjWait(vm) < 0) {
                 ret = -1;
                 goto endjob;
             }
index 7d3cfa62126c524d664be281700cb2da8acb21a2..0b48852b9d3ed572f344c00022cabbb5ecd2942c 100644 (file)
@@ -927,7 +927,7 @@ qemuMigrationSrcNBDCopyCancel(virDomainObj *vm,
         if (failed && !err)
             virErrorPreserveLast(&err);
 
-        if (virDomainObjWait(vm) < 0)
+        if (qemuDomainObjWait(vm) < 0)
             goto cleanup;
     }
 
@@ -1308,7 +1308,7 @@ qemuMigrationSrcNBDStorageCopy(virQEMUDriver *driver,
             return -1;
         }
 
-        if (virDomainObjWait(vm) < 0)
+        if (qemuDomainObjWait(vm) < 0)
             return -1;
     }
 
@@ -1784,7 +1784,7 @@ qemuMigrationSrcWaitForSpice(virDomainObj *vm)
 
     VIR_DEBUG("Waiting for SPICE to finish migration");
     while (!jobPriv->spiceMigrated && !priv->job.abortJob) {
-        if (virDomainObjWait(vm) < 0)
+        if (qemuDomainObjWait(vm) < 0)
             return -1;
     }
     return 0;
@@ -2077,7 +2077,7 @@ qemuMigrationSrcWaitForCompletion(virDomainObj *vm,
         if (rv < 0)
             return rv;
 
-        if (virDomainObjWait(vm) < 0) {
+        if (qemuDomainObjWait(vm) < 0) {
             if (virDomainObjIsActive(vm))
                 jobData->status = VIR_DOMAIN_JOB_STATUS_FAILED;
             return -2;
@@ -2114,7 +2114,7 @@ qemuMigrationDstWaitForCompletion(virDomainObj *vm,
         flags = QEMU_MIGRATION_COMPLETED_POSTCOPY;
 
     while ((rv = qemuMigrationAnyCompleted(vm, asyncJob, NULL, flags)) != 1) {
-        if (rv < 0 || virDomainObjWait(vm) < 0)
+        if (rv < 0 || qemuDomainObjWait(vm) < 0)
             return -1;
     }
 
@@ -4951,7 +4951,7 @@ qemuMigrationSrcRun(virQEMUDriver *driver,
      */
     while (virDomainObjGetState(vm, NULL) == VIR_DOMAIN_RUNNING) {
         priv->signalStop = true;
-        rc = virDomainObjWait(vm);
+        rc = qemuDomainObjWait(vm);
         priv->signalStop = false;
         if (rc < 0)
             goto error;