qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PULL 29/33] s390/kvm: make TOD setting failures fatal for


From: Cornelia Huck
Subject: [Qemu-devel] [PULL 29/33] s390/kvm: make TOD setting failures fatal for migration
Date: Fri, 6 Oct 2017 11:59:52 +0200

From: "Collin L. Walling" <address@hidden>

If we fail to set a proper TOD clock on the target system,  this can
already result in some problematic cases. We print several warn messages
on source and target in that case.

If kvm fails to set a nonzero epoch index, then we must ultimately fail
the migration as this will result in a giant time leap backwards. This
patch lets the migration fail if we can not set the guest time on the
target.

On failure the guest will resume normally on the original host machine.

Signed-off-by: Collin L. Walling <address@hidden>
Reviewed-by: Eric Farman <address@hidden>
Reviewed-by: Claudio Imbrenda <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>
[split failure change from epoch index change, minor fixups]
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
---
 hw/s390x/s390-virtio-ccw.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 76156ce873..32d3f11d8a 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -189,13 +189,10 @@ static int gtod_load(QEMUFile *f, void *opaque, int 
version_id)
 
     r = s390_set_clock(&tod_high, &tod_low);
     if (r) {
-        warn_report("Unable to set guest clock for migration: %s",
-                    strerror(-r));
-        error_printf("Guest clock will not be restored "
-                     "which could cause the guest to hang.");
+        error_report("Unable to set KVM guest TOD clock: %s", strerror(-r));
     }
 
-    return 0;
+    return r;
 }
 
 static SaveVMHandlers savevm_gtod = {
-- 
2.13.6




reply via email to

[Prev in Thread] Current Thread [Next in Thread]