Bug 1415947
| Summary: | data-plane cause qemu-kvm process hang when do basic Block stream for virtio-scsi | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Donghui Huang <dhuang> |
| Component: | qemu-kvm-rhev | Assignee: | Paolo Bonzini <pbonzini> |
| Status: | CLOSED ERRATA | QA Contact: | aihua liang <aliang> |
| Severity: | urgent | Docs Contact: | |
| Priority: | high | ||
| Version: | 7.4 | CC: | aliang, chayang, coli, hhuang, juzhang, knoel, michen, mrezanin, pbonzini, pezhang, qizhu, qzhang, virt-maint, xfu, xuwei |
| Target Milestone: | rc | Keywords: | Regression |
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | qemu-kvm-rhev-2.9.0-1.el7 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2017-08-01 23:42:15 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: | |||
| Bug Blocks: | 1420722 | ||
QE tested qemu-kvm-rhev-2.6.0-29.el7.x86_64 & qemu-kvm-rhev-2.8.0-1.el7.x86_64 as well. The former works well, but the latter encounters the same problem. QE tested qemu-kvm-rhev-2.8.0-1.el7.x86_64 , qemu-kvm-rhev-2.8.0-2.el7.x86_64 and qemu-kvm-rhev-2.8.0-3.el7.x86_64, encountering the same problem while i do block commit for virtio-scsi with data-plane. But, qemu-kvm-rhev-2.6.0-29.el7.x86_64 works well. Verified, the problem also exist in following version: kernel version: 3.10.0-566.el7.x86_64 qemu-kvm-rhev version:qemu-kvm-rhev-2.8.0-5.el7.x86_64 Posted patch upstream. Fixed by upstream commit d79df2a2ceb3cb0771146587e9a4bfb312577f46 Verified, the problem has been resolved, so change its status to "Verified".
Test Env:
kernel version:3.10.0-655.el7.x86_64
qemu-kvm-rhev version:qemu-kvm-rhev-2.9.0-1.el7.x86_64
seabios version:seabios-1.10.2-2.el7.x86_64
Test Steps:
1.Start guest with cmds:
/usr/libexec/qemu-kvm \
-name 'avocado-vt-vm1' \
-sandbox off \
-machine pc \
-nodefaults \
-vga std \
-chardev socket,id=qmp_id_qmpmonitor1,path=/var/tmp/monitor-qmpmonitor1-20170124-161452-WcepYpO8,server,nowait \
-mon chardev=qmp_id_qmpmonitor1,mode=control \
-chardev socket,id=qmp_id_catch_monitor,path=/var/tmp/monitor-catch_monitor-20170124-161452-WcepYpO8,server,nowait \
-mon chardev=qmp_id_catch_monitor,mode=control \
-device pvpanic,ioport=0x505,id=idqap0h5 \
-chardev socket,id=serial_id_serial0,path=/var/tmp/serial-serial0-20170124-161452-WcepYpO8,server,nowait \
-device isa-serial,chardev=serial_id_serial0 \
-chardev socket,id=seabioslog_id_20170124-161452-WcepYpO8,path=/var/tmp/seabios-20170124-161452-WcepYpO8,server,nowait \
-device isa-debugcon,chardev=seabioslog_id_20170124-161452-WcepYpO8,iobase=0x402 \
-object iothread,id=iothread0 \
-device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=03,iothread=iothread0 \
-drive id=drive_image1,if=none,snapshot=off,aio=native,cache=none,format=qcow2,file=/mnt/aliang/rhel74-64-virtio.qcow2 \
-device scsi-hd,id=image1,drive=drive_image1,bus=scsi0.0,lun=0 \
-object iothread,id=iothread1 \
-device virtio-net-pci,mac=9a:b2:b3:b4:b5:b6,id=iduCv1Ln,vectors=4,netdev=idKgexFk,bus=pci.0,addr=05 \
-netdev tap,id=idKgexFk,vhost=on \
-m 4096 \
-smp 4,maxcpus=4,cores=2,threads=1,sockets=2 \
-cpu host \
-vnc :1 \
-rtc base=localtime,clock=host,driftfix=slew \
-boot order=cdn,menu=on,strict=off \
-enable-kvm \
-monitor stdio \
2.Do basic block stream test.
a. {"execute":"blockdev-snapshot-sync","arguments":{"device":"drive_image1","snapshot-file":"/home/sn1","format": "qcow2", "mode": "absolute-paths"}}
b. {"execute": "block-stream", "arguments": { "device":"drive_image1","speed":1000000000, "on-error": "report"}}
c. {"execute": "block-job-cancel", "arguments": { "device":"drive_image1"}}
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-2017:2392 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-2017:2392 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-2017:2392 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-2017:2392 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-2017:2392 |
Description of problem: 1.For virtio-scsi with data-plan. block stream will cause qemu-kvm process hang. 2.For virtio-blk with data-plan. It works. 3.without data-plane, qemu-kvm works well. 4.QE tested qemu-kvm-rhev-2.6.0-27.el7.x86_64 & qemu-kvm-rhev-2.6.0-28.el7_3.3.x86_64 as well. Both work well. 5.Currently, QE found this problem for qemu-kvm-rhev-2.8.0-2.el7.x86_64. So this is a regression bug. Version-Release number of selected component (if applicable): qemu-kvm-rhev-2.8.0-2.el7.x86_64 3.10.0-541.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1./usr/libexec/qemu-kvm -object iothread,id=iothread0 -drive file=/home/image/rhel7.4.qcow2,format=qcow2,if=none,id=drive-scsi-disk0,werror=stop,rerror=stop,cache=none -device virtio-scsi-pci,id=scsi0,iothread=iothread0 -device scsi-hd,drive=drive-scsi-disk0,bus=scsi0.0,scsi-id=0,lun=0,id=scsi-disk0 -qmp tcp:localhost:4444,server -monitor stdio -net tap -net nic -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x6 -chardev socket,path=/tmp/qga.sock,server,nowait,id=qga0 -device virtserialport,bus=virtio-serial0.0,chardev=qga0,id=qemu-ga0,name=org.qemu.guest_agent.0 2.{ "execute": "blockdev-snapshot-sync", "arguments": { "device": "drive-scsi-disk0","snapshot-file": "sn1", "format": "qcow2", "mode": "absolute-paths" } } {"return": {}} { "execute": "block-stream", "arguments": { "device": "drive-scsi-disk0","speed":1000000000, "on-error": "report" } } {"return": {}} 3. Actual results: qemu-kvm process hang. Expected results: works Additional info: rt-kernel encountered the same problem.