qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2] virtio-9p: migrate virtio subsections
@ 2015-09-29 12:06 Greg Kurz
  2015-10-02 13:45 ` Greg Kurz
  0 siblings, 1 reply; 2+ messages in thread
From: Greg Kurz @ 2015-09-29 12:06 UTC (permalink / raw)
  To: aneesh.kumar; +Cc: qemu-devel, Michael S. Tsirkin

In a cross-endian setup, the virtio-9p device has state in @device_endian. It
must be migrated. This patch just adds the minimal support to live migrate
generic virtio subsections where @device_endian is handled.

Please note that this is unrelated to the fact that we block migration when
the 9p share is mounted in the guest. It fixes the case where we want to
migrate an unactive 9p device (not mounted in the guest) to a QEMU with
different endianness: the migration currently succeeds but leaves the device
in an inconsistent state that causes mount to hang until we reboot the guest.

Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
---
v2: more detailed change log
---
 hw/9pfs/virtio-9p-device.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c
index 93a407c45926..e3abcfaffb2a 100644
--- a/hw/9pfs/virtio-9p-device.c
+++ b/hw/9pfs/virtio-9p-device.c
@@ -43,6 +43,16 @@ static void virtio_9p_get_config(VirtIODevice *vdev, uint8_t *config)
     g_free(cfg);
 }
 
+static void virtio_9p_save(QEMUFile *f, void *opaque)
+{
+    virtio_save(VIRTIO_DEVICE(opaque), f);
+}
+
+static int virtio_9p_load(QEMUFile *f, void *opaque, int version_id)
+{
+    return virtio_load(VIRTIO_DEVICE(opaque), f, version_id);
+}
+
 static void virtio_9p_device_realize(DeviceState *dev, Error **errp)
 {
     VirtIODevice *vdev = VIRTIO_DEVICE(dev);
@@ -130,6 +140,7 @@ static void virtio_9p_device_realize(DeviceState *dev, Error **errp)
     }
     v9fs_path_free(&path);
 
+    register_savevm(dev, "virtio-9p", -1, 1, virtio_9p_save, virtio_9p_load, s);
     return;
 out:
     g_free(s->ctx.fs_root);

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-10-02 13:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-29 12:06 [Qemu-devel] [PATCH v2] virtio-9p: migrate virtio subsections Greg Kurz
2015-10-02 13:45 ` Greg Kurz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).