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 00/14] virtio migration: Flip outer layer to vmstate
Date: Thu, 14 Jul 2016 18:22:42 +0100 [thread overview]
Message-ID: <1468516976-20140-1-git-send-email-dgilbert@redhat.com> (raw)
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Hi,
This series converts the outer most layer of virtio to
use VMState macros; this is the easy bit, but I'm hoping that
having done that, the next trick is to nibble away at the virtio_save/load
functions and all of the zillions of device/bus helpers.
I think the first two patches are the most controversial;
they remove migration support for old version of virtio-net and virtio-serial;
(for virtio-net versions prior to 0.11 and for virtio-serial prior to 0.13).
I'm working on the basis that migration has bit rotted enough so
that the streams aren't migration compatible for that long back
on upstream - but if anyone knows otherwise please shout.
The reason for doing those is that the virtio structure makes
it a bit tricky to pass the outer device version number down
through VMState to the device specific code (I can do it
as a hack if necessary using a dummy is_needed function);
and with -net and -serial compatibility sorted I think
every other device just supports a single version.
My main reason for doing this is to get rid of the
calls to register_savevm ('going to disappear as soon..' since 2010)
It's lightly tested using the magic line:
./x86_64-softmmu/qemu-system-x86_64 -nographic -machine pc-i440fx-2.6,accel=kvm -cpu qemu64 -m 2048M -drive file=/home/vmimages/f20.img,if=none,id=drivea -device virtio-scsi,id=scsi -device scsi-hd,drive=drivea -device virtio-rng -device virtio-serial -chardev file,id=test,path=/tmp/testfile -device virtconsole,chardev=test,name=foo -virtfs local,path=/home,security_model=passthrough,mount_tag=host_share -device virtio-gpu -drive file=/home/vmimages/jeos-19-64.qcow2,id=jeos,if=none -device virtio-blk,drive=jeos -device virtio-balloon
Thoughts?
Dave
v3
Change virtio-gpu to use migrate_add_blocker instead of dummy vmstate,
avoiding the problem of ending up with two vmstates for the one device.
Dr. David Alan Gilbert (14):
virtio-net: Remove old migration version support
virtio-serial: Remove old migration version support
virtio: Migration helper function and macro
virtio-scsi: Wrap in vmstate
virtio-blk: Wrap in vmstate
virtio-rng: Wrap in vmstate
virtio-balloon: Wrap in vmstate
virtio-net: Wrap in vmstate
virtio-serial: Wrap in vmstate
9pfs: Wrap in vmstate
virtio-input: Wrap in vmstate
virtio-gpu: Use migrate_add_blocker for virgl migration blocking
virtio-gpu: Wrap in vmstate
virtio: Update migration docs
docs/virtio-migration.txt | 6 ++-
hw/9pfs/virtio-9p-device.c | 14 ++----
hw/block/virtio-blk.c | 16 +++----
hw/char/virtio-serial-bus.c | 62 ++++++++-----------------
hw/display/virtio-gpu.c | 36 ++++++++-------
hw/input/virtio-input.c | 26 +++--------
hw/net/virtio-net.c | 102 ++++++++++++++++-------------------------
hw/scsi/virtio-scsi.c | 21 +++------
hw/virtio/virtio-balloon.c | 19 ++------
hw/virtio/virtio-rng.c | 20 ++------
hw/virtio/virtio.c | 6 +++
include/hw/virtio/virtio-gpu.h | 2 +
include/hw/virtio/virtio.h | 20 ++++++++
13 files changed, 145 insertions(+), 205 deletions(-)
--
2.7.4
next 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 Dr. David Alan Gilbert (git) [this message]
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 ` [Qemu-devel] [PATCH v3 09/14] virtio-serial: " Dr. David Alan Gilbert (git)
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-1-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.