diff --git a/lib/hypervisor/hv_kvm.py b/lib/hypervisor/hv_kvm.py index ba5b39d2d3d25eb0f79d79dcd921dca25ce5d45f..028e6754c4f5feb173e46cc96ef8128d53a2adaa 100644 --- a/lib/hypervisor/hv_kvm.py +++ b/lib/hypervisor/hv_kvm.py @@ -506,6 +506,11 @@ class KVMHypervisor(hv_base.BaseHypervisor): done = True elif status == 'active': time.sleep(2) + elif status == 'failed' or status == 'cancelled': + if not live: + self._CallMonitorCommand(instance_name, 'cont') + raise errors.HypervisorError("Migration %s at the kvm level" % + status) else: logging.info("KVM: unknown migration status '%s'" % status) time.sleep(2)