]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: driver: Report error if pivoting fails in qemuDomainBlockJobAbort
authorPeter Krempa <pkrempa@redhat.com>
Thu, 18 Jul 2019 16:31:40 +0000 (18:31 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 25 Jul 2019 11:21:32 +0000 (13:21 +0200)
As the error message is now available and we know whether the job failed
we can report an error straight away rather than having the user check
the event.

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

index 3a2c5f53349a56f9cf151cbc007759cf477d26d2..44cc9501c68dc20b96b2b76027e83200b90c1de8 100644 (file)
@@ -17231,6 +17231,22 @@ qemuDomainBlockJobAbort(virDomainPtr dom,
             }
             qemuBlockJobUpdate(vm, job, QEMU_ASYNC_JOB_NONE);
         }
+
+        if (pivot &&
+            job->state == QEMU_BLOCKJOB_STATE_FAILED) {
+            if (job->errmsg) {
+                virReportError(VIR_ERR_OPERATION_FAILED,
+                               _("block job '%s' failed while pivoting"),
+                               job->name);
+            } else {
+                virReportError(VIR_ERR_OPERATION_FAILED,
+                               _("block job '%s' failed while pivoting: %s"),
+                               job->name, job->errmsg);
+            }
+
+            ret = -1;
+            goto endjob;
+        }
     }
 
  endjob: