[libvirt-users] QEMU 2.2.0 managedsave: Unknown savevm section type 5

Hello, I am running into issues restoring VMs during reboot for some of my XP VMs - the environment is QEMU 2.2.0, libvirt 1.2.12 on CentOS 6.5 with KVM and libvirt-guests is set to suspend at shutdown. The weird part is Windows 7 is restored properly from the managedsave however XP does not, doing a start from virsh shows this: virsh # start xp-check error: Failed to start domain xp-check error: internal error: early end of file from monitor: possible problem: Unknown savevm section type 5 2015-02-04T23:55:37.117515Z qemu-kvm: load of migration failed: Invalid argument (qemu-kvm is a link to qemu-system-x86_64). Any ideas how to fix this ? Thanks

On 05.02.2015 01:54, Paul Apostolescu wrote:
Hello,
I am running into issues restoring VMs during reboot for some of my XP VMs - the environment is QEMU 2.2.0, libvirt 1.2.12 on CentOS 6.5 with KVM and libvirt-guests is set to suspend at shutdown. The weird part is Windows 7 is restored properly from the managedsave however XP does not, doing a start from virsh shows this:
virsh # start xp-check error: Failed to start domain xp-check error: internal error: early end of file from monitor: possible problem: Unknown savevm section type 5 2015-02-04T23:55:37.117515Z qemu-kvm: load of migration failed: Invalid argument
(qemu-kvm is a link to qemu-system-x86_64).
Any ideas how to fix this ?
Smells like qemu bug to me. The only way that this could be a libvirt bug is that libvirt will generate a different qemu command line when the guest is started and restored. Can you check that please? Michal

How is saving done in libvirt ? I've looked at the QEMU source and save/load does not use subsections at all (this is the "type 5" from the error message I get) but the live migration code does. These are the commands from the corresponding /var/log/libvirt/qemu logs: Windows 7: LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -name win7-check -S -machine pc-i440fx-2.2,accel=kvm,usb=off -m 4000 -realtime mlock=off -smp 4,sockets=4,cores=1,threads=1 -uuid a905d7b0-4f48-4f13-a322-133009411e94 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/win7-check.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime,driftfix=slew -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/data/win7-check.qcow2,if=none,id=drive-ide0-0-0,format=qcow2,cache=unsafe -device ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1 -netdev tap,fd=24,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:52:71:88,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:3 -device VGA,id=video0,vgamem_mb=16,bus=pci.0,addr=0x2 -incoming fd:21 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on XP: LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -name xp-check -S -machine pc-i440fx-2.2,accel=kvm,usb=off -m 977 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 429a6a4c-c5a3-4d75-89c0-9a075010aa9c -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/xp-check.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime,driftfix=slew -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/data/xp-check.qcow2,if=none,id=drive-ide0-0-0,format=qcow2,cache=unsafe -device ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1 -netdev tap,fd=23,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:c5:25:ba,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:1 -device VGA,id=video0,vgamem_mb=16,bus=pci.0,addr=0x2 -incoming fd:21 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on - Paul On Thu Feb 05 2015 at 7:02:25 AM Michal Privoznik <mprivozn@redhat.com> wrote:
On 05.02.2015 01:54, Paul Apostolescu wrote:
Hello,
I am running into issues restoring VMs during reboot for some of my XP VMs - the environment is QEMU 2.2.0, libvirt 1.2.12 on CentOS 6.5 with KVM and libvirt-guests is set to suspend at shutdown. The weird part is Windows 7 is restored properly from the managedsave however XP does not, doing a start from virsh shows this:
virsh # start xp-check error: Failed to start domain xp-check error: internal error: early end of file from monitor: possible problem: Unknown savevm section type 5 2015-02-04T23:55:37.117515Z qemu-kvm: load of migration failed: Invalid argument
(qemu-kvm is a link to qemu-system-x86_64).
Any ideas how to fix this ?
Smells like qemu bug to me. The only way that this could be a libvirt bug is that libvirt will generate a different qemu command line when the guest is started and restored. Can you check that please?
Michal

On 02/05/2015 05:02 AM, Michal Privoznik wrote:
On 05.02.2015 01:54, Paul Apostolescu wrote:
Hello,
I am running into issues restoring VMs during reboot for some of my XP VMs - the environment is QEMU 2.2.0, libvirt 1.2.12 on CentOS 6.5 with KVM and libvirt-guests is set to suspend at shutdown. The weird part is Windows 7 is restored properly from the managedsave however XP does not, doing a start from virsh shows this:
virsh # start xp-check error: Failed to start domain xp-check error: internal error: early end of file from monitor: possible problem: Unknown savevm section type 5 2015-02-04T23:55:37.117515Z qemu-kvm: load of migration failed: Invalid argument
(qemu-kvm is a link to qemu-system-x86_64).
Any ideas how to fix this ?
Smells like qemu bug to me.
Agreed. Usually a sign of you upgrading to a newer qemu version than the one that created the managedsave image. Beyond reporting it to the qemu folks, my other suggestion is to downgrade qemu, see if you can restore the file, then cleanly shut down the guest. Then upgrade qemu, and boot from scratch instead of trying to load the save image. That way, you avoid the cross-qemu migration bug. Another option is to nuke the managedsave image and force a fresh boot, but that's a bit more drastic as it loses any unsaved data that was in memory but not flushed to disk, and most likely require an fsck (that is, nuking the managedsave image is equivalent to pulling the power cord on a running bare-metal machine, then recovering when restoring power for the next boot) [virsh managedsave-remove] -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org

On Wed, Feb 04, 2015 at 07:54:07PM -0500, Paul Apostolescu wrote:
Hello,
I am running into issues restoring VMs during reboot for some of my XP VMs - the environment is QEMU 2.2.0, libvirt 1.2.12 on CentOS 6.5 with KVM and libvirt-guests is set to suspend at shutdown. The weird part is Windows 7 is restored properly from the managedsave however XP does not, doing a start from virsh shows this:
virsh # start xp-check error: Failed to start domain xp-check error: internal error: early end of file from monitor: possible problem: Unknown savevm section type 5 2015-02-04T23:55:37.117515Z qemu-kvm: load of migration failed: Invalid argument
(qemu-kvm is a link to qemu-system-x86_64).
Any ideas how to fix this ?
It could be this QEMU issue: http://thread.gmane.org/gmane.comp.emulators.qemu/319527/focus=319653 Jan
Thanks
_______________________________________________ libvirt-users mailing list libvirt-users@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-users
participants (4)
-
Eric Blake
-
Ján Tomko
-
Michal Privoznik
-
Paul Apostolescu