QEMU fails during migration and reports "qemu: VQ 0 size 0x80 Guest index 0x2d6 inconsistent with Host index 0x18: delta 0x2be"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
This issue is reproducing consistently on automated testing, verified on manual testing (although it may require many tries).
Steps to reproduce:
1) Start a linux guest. The command line used by automated testing was:
10/05 06:48:27 INFO | kvm_vm:1605| MALLOC_PERTURB_=1 /usr/local/
10/05 06:48:27 INFO | kvm_vm:1605| -S
10/05 06:48:27 INFO | kvm_vm:1605| -name 'vm1'
10/05 06:48:27 INFO | kvm_vm:1605| -nodefaults
10/05 06:48:27 INFO | kvm_vm:1605| -chardev socket,
10/05 06:48:27 INFO | kvm_vm:1605| -mon chardev=
10/05 06:48:27 INFO | kvm_vm:1605| -chardev socket,
10/05 06:48:27 INFO | kvm_vm:1605| -mon chardev=
10/05 06:48:27 INFO | kvm_vm:1605| -chardev socket,
10/05 06:48:27 INFO | kvm_vm:1605| -device isa-serial,
10/05 06:48:27 INFO | kvm_vm:1605| -chardev socket,
10/05 06:48:27 INFO | kvm_vm:1605| -device isa-debugcon,
10/05 06:48:27 INFO | kvm_vm:1605| -device ich9-usb-
10/05 06:48:27 INFO | kvm_vm:1605| -drive file='/
10/05 06:48:27 INFO | kvm_vm:1605| -device virtio-
10/05 06:48:27 INFO | kvm_vm:1605| -device virtio-
10/05 06:48:27 INFO | kvm_vm:1605| -netdev tap,id=
10/05 06:48:27 INFO | kvm_vm:1605| -m 2048
10/05 06:48:27 INFO | kvm_vm:1605| -smp 2,cores=
10/05 06:48:27 INFO | kvm_vm:1605| -device usb-tablet,
10/05 06:48:27 INFO | kvm_vm:1605| -vnc :0
10/05 06:48:27 INFO | kvm_vm:1605| -vga std
10/05 06:48:27 INFO | kvm_vm:1605| -rtc base=utc,
10/05 06:48:27 INFO | kvm_vm:1605| -boot order=cdn,
10/05 06:48:27 INFO | kvm_vm:1605| -enable-kvm
Start a new VM in incoming mode. The example on this bug is using TCP protocol:
10/05 07:18:56 INFO | kvm_vm:1605| MALLOC_PERTURB_=1 /usr/local/
10/05 07:18:56 INFO | kvm_vm:1605| -S
10/05 07:18:56 INFO | kvm_vm:1605| -name 'vm1'
10/05 07:18:56 INFO | kvm_vm:1605| -nodefaults
10/05 07:18:56 INFO | kvm_vm:1605| -chardev socket,
10/05 07:18:56 INFO | kvm_vm:1605| -mon chardev=
10/05 07:18:56 INFO | kvm_vm:1605| -chardev socket,
10/05 07:18:56 INFO | kvm_vm:1605| -mon chardev=
10/05 07:18:56 INFO | kvm_vm:1605| -chardev socket,
10/05 07:18:56 INFO | kvm_vm:1605| -device isa-serial,
10/05 07:18:56 INFO | kvm_vm:1605| -chardev socket,
10/05 07:18:56 INFO | kvm_vm:1605| -device isa-debugcon,
10/05 07:18:56 INFO | kvm_vm:1605| -device ich9-usb-
10/05 07:18:56 INFO | kvm_vm:1605| -drive file='/
10/05 07:18:56 INFO | kvm_vm:1605| -device virtio-
10/05 07:18:56 INFO | kvm_vm:1605| -device virtio-
10/05 07:18:56 INFO | kvm_vm:1605| -netdev tap,id=
10/05 07:18:56 INFO | kvm_vm:1605| -m 2048
10/05 07:18:56 INFO | kvm_vm:1605| -smp 2,cores=
10/05 07:18:56 INFO | kvm_vm:1605| -device usb-tablet,
10/05 07:18:56 INFO | kvm_vm:1605| -vnc :1
10/05 07:18:56 INFO | kvm_vm:1605| -vga std
10/05 07:18:56 INFO | kvm_vm:1605| -rtc base=utc,
10/05 07:18:56 INFO | kvm_vm:1605| -boot order=cdn,
10/05 07:18:56 INFO | kvm_vm:1605| -enable-kvm
10/05 07:18:56 INFO | kvm_vm:1605| -incoming tcp:0:5200
Start the migration, typing on monitor
10/05 07:18:58 DEBUG|kvm_
The VM will start migrating state to the new qemu instance, and at some point it will stop with:
10/05 07:19:10 INFO | aexpect:0786| [qemu output] qemu: VQ 0 size 0x80 Guest index 0x2d6 inconsistent with Host index 0x18: delta 0x2be
10/05 07:19:10 INFO | aexpect:0786| [qemu output] qemu: warning: error while loading state for instance 0x0 of device '0000:00:
10/05 07:19:10 INFO | aexpect:0786| [qemu output] load of migration failed
10/05 07:19:10 INFO | aexpect:0786| [qemu output] (Process terminated with status 0)
Due to the large number of migrations executed during a virt job (vm state keeps being passed back and forth many times, using many protocols), we get this problem on every single virt job.
Latest commits we found this issue:
Kernel (kvm.git, avi's tree)
10/05 05:38:12 INFO | git:0153| git commit ID is 1a95620f45155ac
Userspace (qemu.git)
10/05 06:20:30 INFO | git:0153| git commit ID is a14c74928ba1fda
Have you bisected it already?