Bug 1441684
Summary: | Re-enable op blocker assertions | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Kevin Wolf <kwolf> | |
Component: | qemu-kvm-rhev | Assignee: | Kevin Wolf <kwolf> | |
Status: | CLOSED ERRATA | QA Contact: | xianwang <xianwang> | |
Severity: | unspecified | Docs Contact: | ||
Priority: | unspecified | |||
Version: | 7.3 | CC: | chayang, coli, dgilbert, hannsj_uhl, hreitz, juzhang, kwolf, michen, mrezanin, ngu, qzhang, virt-maint | |
Target Milestone: | rc | |||
Target Release: | --- | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | qemu-kvm-rhev-2.10.0-1.el7 | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1452148 (view as bug list) | Environment: | ||
Last Closed: | 2018-04-11 00:16:25 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | 1452148 | |||
Bug Blocks: |
Description
Kevin Wolf
2017-04-12 13:13:49 UTC
Hi Cong, Free to update the QE contact. This is fixed in upstream qemu 2.10. Postcopy migration was fixed with commit 0042fd36. Old-style block migration was fixed with the series leading to commit 49695eeb. Assertions were re-enabled in commit 362b3786. Hi,Kevin, could you help to give steps about how to veriy this bug? Thanks Please just verify that old style block migration (migrate -b) and postcopy migration are working and not causing any assertion failure. Kevin: Note that being rhel7 we disable outgoing old style block migration anyway As Dave said, the 'migrate -b'(old style block migration) is not supported now as following: (qemu) migrate -b -d tcp:10.16.47.10:5801 migrate: unsupported option -d After confirming with Kevin, for this bug, it just needs to test general postcopy migration, the bug is verified pass on qemu-kvm-rhev-2.10.0-12.el7, as following: Host: 3.10.0-820.el7.ppc64le qemu-kvm-rhev-2.10.0-12.el7.ppc64le SLOF-20170724-5.git89f519f.el8.ppc64le Guest: 3.10.0-800.el7.ppc64le 1.Boot a guest on src host with qemu cli: /usr/libexec/qemu-kvm \ -name 'avocado-vt-vm1' \ -sandbox off \ -nodefaults \ -machine pseries-rhel7.5.0 \ -vga std \ -uuid 8aeab7e2-f341-4f8c-80e8-59e2968d85c2 \ -device virtio-serial-pci,id=virtio_serial_pci0,bus=pci.0,addr=03 \ -device virtio-scsi-pci,id=scsi1,bus=pci.0,addr=0x4 \ -device spapr-vscsi,id=scsi2 \ -chardev socket,id=console0,path=/tmp/console0,server,nowait \ -device spapr-vty,chardev=console0 \ -device nec-usb-xhci,id=usb1,bus=pci.0,addr=05 \ -drive file=/home/rhel75-ppc64le-virtio-scsi.qcow2,format=qcow2,if=none,cache=none,id=drive_blk1,werror=stop,rerror=stop \ -device virtio-blk-pci,drive=drive_blk1,id=blk-disk1,bootindex=0,bus=pci.0,addr=06 \ -drive file=/home/r1.qcow2,format=qcow2,if=none,cache=none,id=drive_data1,werror=stop,rerror=stop \ -device virtio-blk-pci,drive=drive_data1,id=blk-data,bus=pci.0,addr=07 \ -device virtio-net-pci,mac=9a:7b:7c:7d:7e:72,id=id9HRc5V,vectors=4,netdev=idjlQN53,bus=pci.0,addr=10 \ -netdev tap,id=idjlQN53,vhost=off,script=/etc/qemu-ifup,downscript=/etc/qemu-ifdown \ -m 4G \ -smp 4 \ -device usb-kbd \ -device usb-mouse \ -qmp tcp:0:8881,server,nowait \ -vnc :1 \ -msg timestamp=on \ -rtc base=localtime,clock=vm,driftfix=slew \ -monitor stdio \ -boot order=cdn,once=c,menu=on,strict=off \ -enable-kvm in guest, format the data disk, mount it to /mnt and do "dd": #mkfs.ext4 /dev/vdb #mount /dev/vdb /mnt #while true;do dd if=/dev/zero of=/mnt/file2 bs=10M count=10;done 2.Launch listening mode on dst host, qemu cli is same with src host appending "-ingcoming tcp:0:5801" 3.on src host, do postcopy migration (qemu) migrate_set_capability postcopy-ram on (qemu) migrate -d tcp:10.16.67.19:5801 4.result migration complete, vm works well and "dd" is ongoing all the time in guest after postcopy migration, I also can stop "dd" and re-write to that disk again. src->dst:postcopy migration succeed and vm works well including writing to disk; dst->src:postcopy migration succeed and vm works well including writing to disk; so, I think this bug is fixed. Kevin, do you thinks this verification is ok? thanks Don't you need a "migrate_start_postcopy" command on the source to actually switch into postcopy mode? Dave, the important thing is that loadvm_postcopy_handle_run_bh() runs, so that we actually test commit 0042fd36. Is the "migrate_start_postcopy" necessary for that? I assume so, but you can probably say something definite. Kevin is correct, that test hasn't actually done postcopy. You need to: a) Start a heavy memory using job in the guest, e.g. the 'stress' command b) migrate_set_capability postcopy-ram on c) Start the migrate; migrate -d tcp:host:port d) do an 'info migrate' you should see the status as 'active' e) migrate_start_postcopy f) another 'info migrate' you should see the status as 'postcopy-active' g) You should find the destination is responsive h) Wait until 'info migrate' returns complete Include the output of (h) in the results, you should see a count of postcopy-requests. (In reply to Dr. David Alan Gilbert from comment #9) > Kevin is correct, that test hasn't actually done postcopy. > You need to: > a) Start a heavy memory using job in the guest, e.g. the 'stress' command > b) migrate_set_capability postcopy-ram on > c) Start the migrate; migrate -d tcp:host:port > d) do an 'info migrate' you should see the status as 'active' > e) migrate_start_postcopy > f) another 'info migrate' you should see the status as 'postcopy-active' > g) You should find the destination is responsive > h) Wait until 'info migrate' returns complete > > Include the output of (h) in the results, you should see a count of > postcopy-requests. Hi, Kevin and Dave, I am very sorry, I do that as Dave said, but I just forgot to write them to bug comment, I have done it again with "stress", result is also pass, just as following: stress in guest: # stress --cpu 8 --io 4 --vm 2 --vm-bytes 128M #while true;do dd if=/dev/zero of=/dev/vdb bs=10M count=10;done (qemu) migrate_set_capability postcopy-ram on (qemu) migrate -d tcp:10.16.67.19:5801 (qemu) info migrate Migration status: active (qemu) migrate_start_postcopy (qemu) info migrate Migration status: postcopy-active (qemu) info migrate Migration status: postcopy-active .... (qemu) info migrate Migration status: completed migration succeeds and vm works well on destination. Kevin and Dave so, if you two don't have other problems and agree this verification, I would modify this bug to "verified", thanks As a postcopy test I think that's fine. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:1104 |