Bug 1007222

Summary: QEMU core dumped when do hot-unplug virtio serial port during transfer file between host to guest with virtio serial through TCP socket
Product: Red Hat Enterprise Linux 7 Reporter: Sibiao Luo <sluo>
Component: qemu-kvmAssignee: Amit Shah <amit.shah>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: high    
Version: 7.0CC: acathrow, amit.shah, bsarathy, chayang, flang, juzhang, mdeng, michen, mkenneth, mrezanin, qiguo, qzhang, rhod, sluo, virt-maint, xfu
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-1.5.3-9.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 985205 Environment:
Last Closed: 2014-06-13 12:55:16 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: 985205    
Bug Blocks:    

Comment 3 Miroslav Rezanina 2013-10-10 11:34:09 UTC
Fix included in qemu-kvm-1.5.3-9.el7

Comment 5 Qian Guo 2013-10-25 08:25:31 UTC
(In reply to Miroslav Rezanina from comment #3)
> Fix included in qemu-kvm-1.5.3-9.el7

Hi, Miroslav

According to the reporter, I try to reproduce it by qemu-kvm-1.5.3-4.el7.x86_64 and qemu-kvm-1.5.3-10.el7.x86_64, both work well, not hit such issue.

And I see that it is fixed by  qemu-kvm-1.5.3-9.el7 as comment #3, so it seams not same steps as the reporter, could you tell the method to vefify this bug?

Thanks, 
Qian Guo

Comment 6 Sibiao Luo 2013-11-01 04:54:59 UTC
(In reply to Qian Guo from comment #5)
> (In reply to Miroslav Rezanina from comment #3)
> > Fix included in qemu-kvm-1.5.3-9.el7
> 
> Hi, Miroslav
> 
> According to the reporter, I try to reproduce it by
> qemu-kvm-1.5.3-4.el7.x86_64 and qemu-kvm-1.5.3-10.el7.x86_64, both work
> well, not hit such issue.
> 
> And I see that it is fixed by  qemu-kvm-1.5.3-9.el7 as comment #3, so it
> seams not same steps as the reporter, could you tell the method to vefify
> this bug?
> 
Hi qiguo and Miroslav,

   There is no need to reproduce this issue in rhel7.0, as amit tried to fixed the fixed the bug 985205#c14 with a different approach(v2). The fixing code was also pull to rhel7.0, and this bug was filed just to trace it, so please just verify virtio serial work well with the same steps in rhel7.0 which is OK i think. Please correct me if any mistake.

Best Regards,
sluo

Comment 7 Qian Guo 2013-11-01 10:29:10 UTC
Verify this bug with 
# rpm -q qemu-kvm
qemu-kvm-1.5.3-11.el7.x86_64

Steps:
1.Check the qemu-kvm change log:
# rpm -qi qemu-kvm-1.5.3-11.el7.x86_64 --changelog |grep 1007222
- kvm-char-move-backends-io-watch-tag-to-CharDriverState.patch [bz#1007222]
- kvm-char-use-common-function-to-disable-callbacks-on-cha.patch [bz#1007222]
- kvm-char-remove-watch-callback-on-chardev-detach-from-fr.patch [bz#1007222]
- Resolves: bz#1007222

2.Boot a guest with 2 virtio-serial ports:
# /usr/libexec/qemu-kvm -M pc -cpu SandyBridge -enable-kvm -m 4096 -smp 4,sockets=1,cores=4,threads=1 -name win732 -rtc base=localtime,clock=host,driftfix=slew -drive file=/home/rhel7base.qcow2,format=qcow2,if=none,id=drive-ide0-0-0,format=qcow2 -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -spice port=5800,disable-ticketing -vga qxl -global qxl-vga.vram_size=67108864 -device virtio-serial-pci,id=virtio-serial0,max_ports=16,vectors=0 -chardev socket,id=channel1,host=localhost,port=12345,server,nowait -device virtserialport,chardev=channel1,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port1 -chardev socket,id=channel2,host=localhost,port=12346,server,nowait -device virtserialport,chardev=channel2,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port2 -monitor stdio -boot menu=on -netdev tap,vhost=on,id=netdev0,script=/etc/qemu-ifup -device virtio-net-pci,netdev=netdev0,id=vnic1,mac=54:52:1a:0b:11:01

3.dd a 2G file in the host.
host # dd if=/dev/zero of=file bs=1M count=2000
2000+0 records in
2000+0 records out
2097152000 bytes (2.1 GB) copied, 6.95456 s, 302 MB/s

4.Transfer this file from host to guest
host # cat file | nc localhost 12345
guest# cat /dev/vport0p1 >> t1

5.During transferring, hot unplug the port.
(qemu) device_del port1

Result: Hotunplug successfully and no coredump/errors.

So according to above, this bug is fixed by qemu-kvm-1.5.3-11.el7.x86_64

Comment 9 Ludek Smid 2014-06-13 12:55:16 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.