[libvirt] qemu-kvm-0.10.5, kvm-kmod-2.6.30, libvirt-0.6.4 - save/restore still unreliable

Nikola Ciprich
2009-06-12T14:01:09Z

Hi,
I'm very sorry for crossposting, but I'm not sure whether my problem
is related to libvirt or kvm itself.
I've spent some time testing save/restore and it seems it's still not
really reliable. Starting guest, loading it with some applications
(ie kernel compilation) and saving/restoring it for few times usually leads to error:

[root@vbox4 hibernated]# virsh save vmroo55 /home/LVS/hibernated/vmroo55.vm
Domain vmroo55 saved to /home/LVS/hibernated/vmroo55.vm

[root@vbox4 hibernated]# virsh restore /home/LVS/hibernated/vmroo55.vm
Domain restored from /home/LVS/hibernated/vmroo55.vm

[root@vbox4 hibernated]# virsh save vmroo55 /home/LVS/hibernated/vmroo55.vm
Domain vmroo55 saved to /home/LVS/hibernated/vmroo55.vm

[root@vbox4 hibernated]# virsh restore /home/LVS/hibernated/vmroo55.vm
error: Failed to restore domain from /home/LVS/hibernated/vmroo55.vm
error: internal error unable to start guest: char device redirected to /dev/pts/2

in /var/log/messages, i see:
Jun 12 15:18:30 vbox4 libvirtd: 15:18:30.793: error : qemudReadMonitorOutput:696 : internal error Timed out while reading monitor startup output
Jun 12 15:18:30 vbox4 libvirtd: 15:18:30.820: error : qemudWaitForMonitor:994 : internal error unable to start guest: char device redirected to /dev/pts/2

/var/log/libvirt/vmroo55.log:
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin HOME=/ /usr/bin/qemu-kvm -S -M pc -m 768 -smp 2 -name vmroo55 -uuid 987e7a85-0e15-11de-a522-00304892f672 -monitor pty -boot c -kernel /home/LVS/boot/vmlinuz-2.6.29lb.00_01_PRE14-x86_64 -initrd /home/LVS/boot/kvm-initrd-2.6.29lb.00_01_PRE14-x86_64.cpio.gz -append root=/dev/sda ro vmhostname=vmroo55 -drive file=/dev/vgshared/vmroo55-1,if=ide,index=0,boot=on -drive file=/dev/vgshared/vmroo55-2,if=ide,index=1 -drive file=/dev/vgshared/vmroo55-3,if=virtio,index=0 -net nic,macaddr=00:16:3e:18:37:00,vlan=0,model=virtio -net tap,fd=15,vlan=0 -serial none -parallel none -usb -vnc 0.0.0.0:24155 -incoming exec:cat
char device redirected to /dev/pts/2
qemu_popen: returning result of qemu_fopen_ops
qemu_popen: returning result of qemu_fopen_ops

I wanted to try it using just kvm, but for some reason, I can't figure the proper way to execute it, is the
-incoming exec:cat somewhere properly documented? I tried doing cat .../img.vm | qemu-kvm ... -incoming exec:cat
but this doesn't seem to be the proper way.

Could somebody give me a hint on how to debug this?

thanks a lot in advance!

nik