]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: hotplug: Report error if we hit tray status timeout
authorCole Robinson <crobinso@redhat.com>
Mon, 2 May 2016 23:07:34 +0000 (19:07 -0400)
committerCole Robinson <crobinso@redhat.com>
Tue, 17 May 2016 12:09:04 +0000 (08:09 -0400)
If we exceed the timeout waiting for the tray status to change,
we don't report an error. Fix it

src/qemu/qemu_hotplug.c

index f8ab0953e965ee9027ed35c2894c30b6d8d8bdec..e15f4b5130a376e1286a4a82be1b2d0bd6bea2c3 100644 (file)
@@ -224,7 +224,13 @@ qemuDomainChangeEjectableMedia(virQEMUDriverPtr driver,
             goto error;
 
         while (disk->tray_status != VIR_DOMAIN_DISK_TRAY_OPEN) {
-            if (virDomainObjWaitUntil(vm, now + CHANGE_MEDIA_TIMEOUT) != 0)
+            int wait_rc = virDomainObjWaitUntil(vm, now + CHANGE_MEDIA_TIMEOUT);
+            if (wait_rc > 0) {
+                virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+                               _("timed out waiting for "
+                                 "disk tray status update"));
+            }
+            if (wait_rc != 0)
                 goto error;
         }
     } while (rc < 0);