Although 0 length block jobs aren't entirely useful, the output
of virsh
blockjob is empty due to the condition that suppresses the output for
migration jobs that did not start. Since the only place that actually
uses the condition that suppresses the output is in migration, let's
move the check there and thus add support for 0 of 0 equaling to 100%.
Resolves:
https://bugzilla.redhat.com/show_bug.cgi?id=1196711
---
tools/virsh-domain.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
index 73c476d..fb138d5 100644
--- a/tools/virsh-domain.c
+++ b/tools/virsh-domain.c
@@ -1700,10 +1700,6 @@ virshPrintJobProgress(const char *label, unsigned long long
remaining,
{
int progress;
- if (total == 0)
- /* migration has not been started */
- return;
-
if (remaining == 0) {
/* migration has completed */
progress = 100;
@@ -4401,7 +4397,7 @@ virshWatchJob(vshControl *ctl,
ret = virDomainGetJobInfo(dom, &jobinfo);
pthread_sigmask(SIG_SETMASK, &oldsigmask, NULL);
if (ret == 0) {
- if (verbose)
+ if (verbose && jobinfo.dataTotal > 0)
virshPrintJobProgress(label, jobinfo.dataRemaining,
jobinfo.dataTotal);