From: Halil Pasic <pasic@linux.vnet.ibm.com>
To: Paolo Bonzini <pbonzini@redhat.com>,
"Dr . David Alan Gilbert" <dgilbert@redhat.com>
Cc: "Michael S . Tsirkin" <mst@redhat.com>,
qemu-devel@nongnu.org, Halil Pasic <pasic@linux.vnet.ibm.com>
Subject: [Qemu-devel] [PATCH v2 00/12] virtio migration: simplify vmstate helper
Date: Thu, 6 Oct 2016 14:55:38 +0200 [thread overview]
Message-ID: <20161006125550.17099-1-pasic@linux.vnet.ibm.com> (raw)
As a part of the long term effort to convert migration to vmstate the
migration of virtio devices was recently partially switched to vmstate
starting with the outer layer (commit 5943124cc "virtio: Migration
helper function and macro" and the subsequent "virtio-*: Wrap in
vmstate" commits). This was done by introducing a vmstate based wrapper
driving the well know virtio migration process. As this transition is
still in progress, some synergies were left unexploited, and some things
can be expressed in a more vmstatish way.
Let us simplify a couple of things and get rid of some code duplication.
NOTE: This series is exploring the suggestions of Paolo (I did my best
to do everything as requested). I still think that we are better of with
a macro that with spelling out the VMStateDescription for each device
separately and redundantly. The LOC balance of the previous version was
-41, this version is at +14 because of the expanded macros. IMHO the
readability benefit of spelling out the vmsd definitions is questionabe
(but it is beneficial if using ctags or grep). I hope for a good
discussion, but I can live with this version too.
v1 --> v2:
* export VMStateInfo instead of helpers
* change semantic of VMSTATE_VIRTIO_DEVICE
* drop VIRTIO_DEF_DEVICE_VMSD macro, use its expansion instead
Halil Pasic (12):
virtio: prepare change VMSTATE_VIRTIO_DEVICE macro
virtio-blk: convert VMSTATE_VIRTIO_DEVICE
virtio-net: convert VMSTATE_VIRTIO_DEVICE
virtio-9p: convert VMSTATE_VIRTIO_DEVICE
virtio-serial: convert VMSTATE_VIRTIO_DEVICE
virtio-gpu: convert VMSTATE_VIRTIO_DEVICE
virtio-input: convert VMSTATE_VIRTIO_DEVICE
virtio-scsi: convert VMSTATE_VIRTIO_DEVICE
virtio-balloon: convert VMSTATE_VIRTIO_DEVICE
virtio-rng: convert VMSTATE_VIRTIO_DEVICE
vhost-vsock: convert VMSTATE_VIRTIO_DEVICE
virtio: cleanup VMSTATE_VIRTIO_DEVICE
hw/9pfs/virtio-9p-device.c | 15 +++++++++------
hw/block/virtio-blk.c | 25 +++++++++----------------
hw/char/virtio-serial-bus.c | 16 +++++++++-------
hw/display/virtio-gpu.c | 39 +++++++++++++++++++++++++++------------
hw/input/virtio-input.c | 21 +++++++++++----------
hw/net/virtio-net.c | 40 +++++++++++++++++++---------------------
hw/scsi/virtio-scsi.c | 26 +++++++++-----------------
hw/virtio/vhost-vsock.c | 42 +++++++++++++++++++++---------------------
hw/virtio/virtio-balloon.c | 15 +++++++++------
hw/virtio/virtio-rng.c | 19 +++++++++++--------
hw/virtio/virtio.c | 17 ++++++++++++++++-
include/hw/virtio/virtio.h | 27 ++++++++-------------------
12 files changed, 158 insertions(+), 144 deletions(-)
--
2.8.4
next reply other threads:[~2016-10-06 12:56 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-06 12:55 Halil Pasic [this message]
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 01/12] virtio: prepare change VMSTATE_VIRTIO_DEVICE macro Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 02/12] virtio-blk: convert VMSTATE_VIRTIO_DEVICE Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 03/12] virtio-net: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 04/12] virtio-9p: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 05/12] virtio-serial: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 06/12] virtio-gpu: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 07/12] virtio-input: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 08/12] virtio-scsi: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 09/12] virtio-balloon: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 10/12] virtio-rng: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 11/12] vhost-vsock: " Halil Pasic
2016-10-06 12:55 ` [Qemu-devel] [PATCH v2 12/12] virtio: cleanup VMSTATE_VIRTIO_DEVICE Halil Pasic
2016-10-06 15:30 ` [Qemu-devel] [PATCH v2 00/12] virtio migration: simplify vmstate helper Paolo Bonzini
2016-10-06 17:04 ` Halil Pasic
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=20161006125550.17099-1-pasic@linux.vnet.ibm.com \
--to=pasic@linux.vnet.ibm.com \
--cc=dgilbert@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/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 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).