From: mdroth <mdroth@linux.vnet.ibm.com>
To: Anthony Liguori <aliguori@us.ibm.com>
Cc: qemu-devel@nongnu.org, fred.konrad@greensocs.com
Subject: Re: [Qemu-devel] [ANNOUNCE] QEMU 1.5.0-rc2 is now available
Date: Thu, 16 May 2013 09:21:51 -0500 [thread overview]
Message-ID: <20130516142151.GC23880@vm> (raw)
In-Reply-To: <1368662027-14213-1-git-send-email-aliguori@us.ibm.com>
On Wed, May 15, 2013 at 06:53:47PM -0500, Anthony Liguori wrote:
> Hi,
>
> On behalf of the QEMU Team, I'd like to announce the availability of the
> third release candidate for the QEMU 1.5 release. This release is meant
> for testing purposes and should not be used in a production environment.
>
> http://wiki.qemu.org/download/qemu-1.5.0-rc2.tar.bz2
>
> You can help improve the quality of the QEMU 1.5 release by testing this
> release and reporting bugs on Launchpad:
>
Sorry to chime in on this so late in the cycle, but I just noticed what
seems to be a pretty serious problem with migration to/from 1.4. This is
the failure for 1.4 -> 1.5-rc2
(qemu) migrate unix:/tmp/migrate.sock
Unknown savevm section or instance '0000:00:03.0/virtio-net' 0
Configuration:
source: v14/x86_64-softmmu/qemu-system-x86_64 -enable-kvm -L v14-bios -M
pc-i440fx-1.4 -m 512M -kernel boot/vmlinuz-x86_64 -initrd
boot/test-initramfs-x86_64.img.gz -vga std -append seed=1234 -drive
file=disk1.img,if=virtio -drive file=disk2.img,if=virtio -net
nic,model=virtio -net user -monitor unix:/tmp/vm-hmp.sock,server,nowait
-qmp unix:/tmp/vm-qmp.sock,server,nowait -vnc :100
target: v15rc2/x86_64-softmmu/qemu-system-x86_64 -enable-kvm -L temp-bios
-M pc-i440fx-1.4 -m 512M -kernel boot/vmlinuz-x86_64 -initrd
boot/test-initramfs-x86_64.img.gz -vga std -append seed=1234 -drive
file=disk1.img,if=virtio -drive file=disk2.img,if=virtio -net
nic,model=virtio -net user -incoming unix:/tmp/migrate.sock -monitor
unix:/tmp/vm-hmp-incoming.sock,server,nowait -qmp
unix:/tmp/vm-qmp-incoming.sock,server,nowait -vnc :101
QEMU 1.4.0 monitor - type 'help' for more information
This seems to have been introduced with the virtio refactoring:
commit e37da3945fa2fde161e1b217f937fc318c4b7639
Author: KONRAD Frederic <fred.konrad@greensocs.com>
Date: Thu Apr 11 16:29:58 2013 +0200
virtio-net-pci: switch to the new API.
Here the virtio-net-pci is modified for the new API. The device
virtio-net-pci extends virtio-pci. It creates and connects a
virtio-net-device during the init. The properties are not changed.
Signed-off-by: KONRAD Frederic <fred.konrad@greensocs.com>
Tested-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Message-id: 1365690602-22729-4-git-send-email-fred.konrad@greensocs.com
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
And if we roll that back, we have similar failures for virtio-blk, and most
likely the other virtio devices touched by the refactoring.
The issue seems to be a change the way section id strings are generated in
vmstate_register(). In v1.4.x we had:
se->instance_id: 0, se->idstr: 0000:00:03.0/virtio-net
In v1.5.0-rc2 we have:
se->instance_id: 0, se->idstr: virtio-net
This seems to be due to the fact that these devices now sit on a
TYPE_VIRTIO_BUS that has no implementation of TYPE_BUS's get_dev_path()
interface, which is what savevm uses to calculate the id prefix for
se->idstr.
Prior to the refactoring, the device sat on a TYPE_PCI_BUS which used
pcibus_get_dev_path() to calculate this.
I'm not sure what the best fix is for this. I looking at implementing
get_dev_path() for TYPE_VIRTIO_BUS, but to maintain migration
compatibility we'd end up baking in PCI-specific stuff which from what
I gather is exactly what we were trying to avoid there.
I think adding a compat string property to TYPE_VIRTIO_DEVICE and having
that get set somewhere like virtio_bus_plug_device() is a better
approach, but vmstate_register() gets call during TYPE_VIRTIO_DEVICE
init which I think happens before then.
Still looking at it but if someone more familiar with this code has
some ideas or wants to whip up a patch please jump right in.
>
> Regards,
>
> Anthony Liguori
>
>
next prev parent reply other threads:[~2013-05-16 14:25 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-15 23:53 [Qemu-devel] [ANNOUNCE] QEMU 1.5.0-rc2 is now available Anthony Liguori
2013-05-16 3:56 ` Dongsheng Song
2013-05-16 14:21 ` mdroth [this message]
2013-05-16 14:51 ` Paolo Bonzini
2013-05-16 15:54 ` KONRAD Frédéric
2013-05-16 16:07 ` Paolo Bonzini
2013-05-16 16:34 ` KONRAD Frédéric
2013-05-16 16:49 ` mdroth
2013-05-16 16:53 ` KONRAD Frédéric
2013-05-16 16:52 ` Paolo Bonzini
2013-05-16 16:35 ` mdroth
2013-05-16 16:33 ` Anthony Liguori
2013-05-16 16:34 ` KONRAD Frédéric
2013-05-16 15:17 ` KONRAD Frédéric
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=20130516142151.GC23880@vm \
--to=mdroth@linux.vnet.ibm.com \
--cc=aliguori@us.ibm.com \
--cc=fred.konrad@greensocs.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).