qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 00/13] virtio migration: Flip outer layer to vms


From: Dr. David Alan Gilbert
Subject: Re: [Qemu-devel] [PATCH 00/13] virtio migration: Flip outer layer to vmstate
Date: Fri, 24 Jun 2016 09:02:30 +0100
User-agent: Mutt/1.6.1 (2016-04-27)

* Michael S. Tsirkin (address@hidden) wrote:
> On Tue, Jun 21, 2016 at 08:13:54PM +0100, Dr. David Alan Gilbert (git) wrote:
> > From: "Dr. David Alan Gilbert" <address@hidden>
> > 
> > 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.
> 
> I'm ok with removing 0.11 migration compat code.
> But doesn't the serial change break 0.12 as well?

Yes it does; but see my reply to Gerd; 0.12 migration seems to be broken
to modern versions anyway.

Dave

> 
> > 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
> > 
> > Dr. David Alan Gilbert (13):
> >   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: 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     |  17 +++-----
> >  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.h  |  20 +++++++++
> >  12 files changed, 130 insertions(+), 199 deletions(-)
> > 
> > -- 
> > 2.7.4
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK



reply via email to

[Prev in Thread] Current Thread [Next in Thread]