All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert (git)" <dgilbert@redhat.com>
To: qemu-devel@nongnu.org, mst@redhat.com, amit.shah@redhat.com,
	quintela@redhat.com
Cc: cornelia.huck@de.ibm.com, kraxel@redhat.com
Subject: [Qemu-devel] [PATCH v3 09/14] virtio-serial: Wrap in vmstate
Date: Thu, 14 Jul 2016 18:22:51 +0100	[thread overview]
Message-ID: <1468516976-20140-10-git-send-email-dgilbert@redhat.com> (raw)
In-Reply-To: <1468516976-20140-1-git-send-email-dgilbert@redhat.com>

From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Forcibly convert it to a vmstate wrapper;  proper conversion
comes later.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
---
 hw/char/virtio-serial-bus.c | 27 ++++++---------------------
 1 file changed, 6 insertions(+), 21 deletions(-)

diff --git a/hw/char/virtio-serial-bus.c b/hw/char/virtio-serial-bus.c
index 490b5ea..db57a38 100644
--- a/hw/char/virtio-serial-bus.c
+++ b/hw/char/virtio-serial-bus.c
@@ -594,12 +594,6 @@ static void vser_reset(VirtIODevice *vdev)
     guest_reset(vser);
 }
 
-static void virtio_serial_save(QEMUFile *f, void *opaque)
-{
-    /* The virtio device */
-    virtio_save(VIRTIO_DEVICE(opaque), f);
-}
-
 static void virtio_serial_save_device(VirtIODevice *vdev, QEMUFile *f)
 {
     VirtIOSerial *s = VIRTIO_SERIAL(vdev);
@@ -734,14 +728,10 @@ static int fetch_active_ports_list(QEMUFile *f,
     return 0;
 }
 
-static int virtio_serial_load(QEMUFile *f, void *opaque, int version_id)
+static int virtio_serial_load(QEMUFile *f, void *opaque, size_t size)
 {
-    if (version_id != 3) {
-        return -EINVAL;
-    }
-
     /* The virtio device */
-    return virtio_load(VIRTIO_DEVICE(opaque), f, version_id);
+    return virtio_load(VIRTIO_DEVICE(opaque), f, 3);
 }
 
 static int virtio_serial_load_device(VirtIODevice *vdev, QEMUFile *f,
@@ -1042,13 +1032,6 @@ static void virtio_serial_device_realize(DeviceState *dev, Error **errp)
 
     vser->post_load = NULL;
 
-    /*
-     * Register for the savevm section with the virtio-console name
-     * to preserve backward compat
-     */
-    register_savevm(dev, "virtio-console", -1, 3, virtio_serial_save,
-                    virtio_serial_load, vser);
-
     QLIST_INSERT_HEAD(&vserdevices.devices, vser, next);
 }
 
@@ -1079,8 +1062,6 @@ static void virtio_serial_device_unrealize(DeviceState *dev, Error **errp)
 
     QLIST_REMOVE(vser, next);
 
-    unregister_savevm(dev, "virtio-console", vser);
-
     g_free(vser->ivqs);
     g_free(vser->ovqs);
     g_free(vser->ports_map);
@@ -1093,6 +1074,9 @@ static void virtio_serial_device_unrealize(DeviceState *dev, Error **errp)
     virtio_cleanup(vdev);
 }
 
+/* Note: 'console' is used for backwards compatibility */
+VMSTATE_VIRTIO_DEVICE(console, 3, virtio_serial_load, virtio_vmstate_save);
+
 static Property virtio_serial_properties[] = {
     DEFINE_PROP_UINT32("max_ports", VirtIOSerial, serial.max_virtserial_ports,
                                                   31),
@@ -1108,6 +1092,7 @@ static void virtio_serial_class_init(ObjectClass *klass, void *data)
     QLIST_INIT(&vserdevices.devices);
 
     dc->props = virtio_serial_properties;
+    dc->vmsd = &vmstate_virtio_console;
     set_bit(DEVICE_CATEGORY_INPUT, dc->categories);
     vdc->realize = virtio_serial_device_realize;
     vdc->unrealize = virtio_serial_device_unrealize;
-- 
2.7.4

  parent reply	other threads:[~2016-07-14 17:23 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-14 17:22 [Qemu-devel] [PATCH v3 00/14] virtio migration: Flip outer layer to vmstate Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 01/14] virtio-net: Remove old migration version support Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 02/14] virtio-serial: " Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 03/14] virtio: Migration helper function and macro Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 04/14] virtio-scsi: Wrap in vmstate Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 05/14] virtio-blk: " Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 06/14] virtio-rng: " Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 07/14] virtio-balloon: " Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 08/14] virtio-net: " Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` Dr. David Alan Gilbert (git) [this message]
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 10/14] 9pfs: " Dr. David Alan Gilbert (git)
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 11/14] virtio-input: " Dr. David Alan Gilbert (git)
2016-07-15  9:56   ` Gerd Hoffmann
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 12/14] virtio-gpu: Use migrate_add_blocker for virgl migration blocking Dr. David Alan Gilbert (git)
2016-07-15  8:21   ` Cornelia Huck
2016-07-15  9:57   ` Gerd Hoffmann
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 13/14] virtio-gpu: Wrap in vmstate Dr. David Alan Gilbert (git)
2016-07-15  9:56   ` Gerd Hoffmann
2016-07-14 17:22 ` [Qemu-devel] [PATCH v3 14/14] virtio: Update migration docs Dr. David Alan Gilbert (git)
2016-07-15  8:23 ` [Qemu-devel] [PATCH v3 00/14] virtio migration: Flip outer layer to vmstate Cornelia Huck
2016-07-15 12:43   ` Amit Shah

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1468516976-20140-10-git-send-email-dgilbert@redhat.com \
    --to=dgilbert@redhat.com \
    --cc=amit.shah@redhat.com \
    --cc=cornelia.huck@de.ibm.com \
    --cc=kraxel@redhat.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.