Re: [Qemu-devel] qemu-kvm crashes doing migration with disks + blkdebug files (does not happen with qemu)

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

 



On 11/07/2011 07:29 AM, Kevin Wolf wrote:
Am 05.11.2011 03:16, schrieb Lucas Meneghel Rodrigues:
Hi folks,

qemu-kvm is segfaulting when executing migration with blkdebug files.

19:50:02 DEBUG| Git repo qemu_kvm uri: git://github.com/avikivity/qemu.git
19:50:02 DEBUG| Git repo qemu_kvm branch: master
19:50:30 INFO | Commit hash for qemu_kvm is
7879db7e9c09b92d9af1c143fbe2cc212ec89e4b (no tag found)

How to reproduce:

1) create a origin vm like:

/usr/local/autotest/tests/kvm/qemu -name 'vm1' -nodefaults -vga std
-monitor
unix:'/tmp/monitor-humanmonitor1-20111104-200902-95j0',server,nowait
-qmp unix:'/tmp/monitor-qmpmonitor1-20111104-200902-95j0',server,nowait
-serial unix:'/tmp/serial-20111104-200902-95j0',server,nowait -drive
file=blkdebug:/usr/local/autotest/virt/blkdebug/default.conf:/tmp/kvm_autotest_root/images/rhel6.1-64.qcow2,index=0,if=virtio,cache=none,rerror=stop,werror=stop
-device
virtio-net-pci,netdev=idtzhBVb,mac='9a:d0:7b:07:18:72',id='id9JW3ZV'
-netdev tap,id=idtzhBVb,fd=23 -m 2048 -smp 2 -vnc :0


2) create a destination vm like:

/usr/local/autotest/tests/kvm/qemu -name 'vm1' -nodefaults -vga std
-monitor
unix:'/tmp/monitor-humanmonitor1-20111104-201329-Ia9o',server,nowait
-qmp unix:'/tmp/monitor-qmpmonitor1-20111104-201329-Ia9o',server,nowait
-serial unix:'/tmp/serial-20111104-201329-Ia9o',server,nowait -drive
file=blkdebug:/usr/local/autotest/virt/blkdebug/default.conf:/tmp/kvm_autotest_root/images/rhel6.1-64.qcow2,index=0,if=virtio,cache=none,rerror=stop,werror=stop
-device
virtio-net-pci,netdev=idup1xAf,mac='9a:d0:7b:07:18:72',id='idyvOQf3'
-netdev tap,id=idup1xAf,fd=19 -m 2048 -smp 2 -vnc :1  -S -incoming
"exec:nc -l 5200"

Note that blkdebug file contains:

[inject-error]
state = "2"
event = "read_aio"
errno = "7"
immediately = "off"
once = "on"

[set-state]
state = "1"
event = "read_aio"
new_state = "2"

[set-state]
state = "2"
event = "read_aio"
new_state = "3"

Start the migration (on this example, using exec, but it reproduces with
tcp and unix sockets):

11/04 20:13:30 DEBUG|kvm_monito:0254| (monitor humanmonitor1) Sending
command 'migrate -d "exec:nc localhost 5200"'

Then you will have:

11/04 20:13:33 INFO |   aexpect:0783| [qemu output] invalid runstate
transition

Invalid runstate transition is something for Luiz (CCed). Though
probably he doesn't need to do anything in this case: I think we're not
allowing the transition from I/O error to migrating. This might be fixed
by 8a9236f1 in qemu.git, so please retest with upstream.

In the end of my original message, I stated the same test does not yield a segfault in qemu.git, so the referred commit indeed fixes the issue.

Thanks!
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux