aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorCollin L. Walling <walling@linux.vnet.ibm.com>2017-10-04 12:57:51 +0200
committerCornelia Huck <cohuck@redhat.com>2017-10-06 10:53:02 +0200
commit28f8dbe85db3d28f0ecddb48c072533fe58a70ea (patch)
tree26f4669048f1794ab2ac3090fc5875b091b7cf49 /hw
parent7edd4a4967536f9e1a6474223e824049a13dd39c (diff)
s390/kvm: make TOD setting failures fatal for migration
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 <walling@linux.vnet.ibm.com> Reviewed-by: Eric Farman <farman@linux.vnet.ibm.com> Reviewed-by: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> [split failure change from epoch index change, minor fixups] Message-Id: <20171004105751.24655-3-borntraeger@de.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/s390x/s390-virtio-ccw.c7
1 files 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 = {