Bug 1245125

Summary: rhel7.2 guest can not recognize the disk when hotplug a virtio-1 enabled disk to pci-bridge
Product: Red Hat Enterprise Linux 7 Reporter: Yanhui Ma <yama>
Component: qemu-kvm-rhevAssignee: Marcel Apfelbaum <marcel>
Status: CLOSED DUPLICATE QA Contact: weliao <weliao>
Severity: high Docs Contact:
Priority: high    
Version: 7.2CC: ailan, hhuang, huding, juzhang, mst, virt-bugs, virt-maint, weliao, xfu, yama, yanyang
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-08-09 17:02: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:    
Bug Blocks: 1288337    

Description Yanhui Ma 2015-07-21 09:12:42 UTC
Description of problem:
rhel7.2 guest can not recognize the disk when hotplug a virtio-1 enabled disk to pci-bridge, if disable virtio-1, works well

Version-Release number of selected component (if applicable):

kernel:3.10.0-294.el7.x86_64
qemu-kvm-rhev-2.3.0-10.el7.x86_64

How reproducible:

100%

Steps to Reproduce:
1.boot a rhel7.2 guest with a pci-bridge:
full command line:
/usr/libexec/qemu-kvm -S -M pc -cpu host -enable-kvm -m 4096 \
-smp 4,sockets=4,cores=1,threads=1 -no-kvm-pit-reinjection -name sluo-test \
-uuid b18fdd6c-a213-4022-9ca4-5d07225e40b0 \
-rtc base=localtime,clock=host,driftfix=slew \
-device virtio-serial-pci,disable-legacy=true,disable-modern=false,id=virtio-serial0,max_ports=16,vectors=0,bus=pci.0,addr=0x3,ioeventfd=on \
-chardev socket,id=channel1,path=/home/testdisk/socketfile4Gqcow2,server,nowait \
-device virtserialport,chardev=channel1,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port1 \
-chardev socket,id=channel2,path=/home/testdisk/socketfile3Gqcow2,server,nowait \
-device virtserialport,chardev=channel2,name=com.redhat.rhevm.vdsm1,bus=virtio-serial0.0,id=port2 \
-drive file=/home/RHEL-Server-7.2-64-virtio-scsi.qcow2,if=none,id=drive-system-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop,serial=QEMU-DISK1 \
-device virtio-scsi-pci,id=scsi0,bus=pci.0,ioeventfd=off -device scsi-hd,bus=scsi0.0,drive=drive-system-disk,id=system-disk,channel=0,scsi-id=0,lun=0,ver=mike,serial=ababab,bootindex=1 \
-netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup \
-device virtio-net-pci,disable-legacy=true,disable-modern=false,netdev=hostnet0,id=virtio-net-pci0,mac=08:2e:5f:0a:1d:b1,bus=pci.0,addr=0x5,bootindex=2 \
-device virtio-balloon-pci,disable-legacy=true,disable-modern=false,id=ballooning,bus=pci.0,addr=0x6 \
-serial unix:/tmp/ttyS0,server,nowait \
-qmp tcp:0:4444,server,nowait -k en-us -boot menu=on \
-vnc :1 -spice disable-ticketing,port=5931 -vga qxl -monitor stdio \
-device pci-bridge,id=bridge1,bus=pci.0,chassis_nr=1 \
-drive file=/home/testdisk/ide-disk15G.raw,if=none,id=drive-data-disk,format=raw,cache=none,aio=native,readonly=on,werror=stop,rerror=stop,serial=QEMU-DISK2 \
-device virtio-scsi-pci,disable-legacy=true,disable-modern=false,id=scsi1,bus=bridge1,ioeventfd=off,addr=0xb -device scsi-hd,bus=scsi1.0,drive=drive-data-disk,channel=0,ver=mike,serial=cababab,scsi-id=1,lun=1,id=data-disk \
-device scsi-hd,bus=scsi1.0,drive=drive-data-disk1,channel=0,ver=mike,serial=cababab,scsi-id=15,lun=16383,id=data-disk1 \
-drive file=/home/testdisk/bot-disk3-7G.qcow2,if=none,id=drive-data-disk1,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop \

2.hotplug a virtio-1 enabled virtio-scsi disk to pci-bridge

{"execute":"device_add","arguments":{"driver":"virtio-scsi-pci","id":"test36","disable-legacy":"true","disable-modern":"false","bus":"bridge1","addr":"0x3"}}
{"return": {}}
{"execute":"__com.redhat_drive_add", "arguments": {"file":"/tmp/stg0.qcow2","format":"qcow2","id":"test30"}}
{"return": {}}
{"execute":"device_add","arguments":{"driver":"scsi-hd","drive":"test30","id":"test30","bus":"test36.0"}}
{"return": {}}

3.check the disk via "fdisk -l" in guest

Actual results:

after step 3, no the hotplugged disk in guest, the disk can be found via "{"execute": "query-block"}" . If reboot guest, the disk can be found in guest.


Expected results:
guest can recognize the hotplugged disk in guest.

Additional info:

Comment 5 jason wang 2015-08-10 06:30:33 UTC
cc Michael for more thoughts.

Comment 9 juzhang 2016-07-01 07:28:37 UTC
Hi Wei,

Could you have a try?

Best Regards,
Junyi

Comment 11 Marcel Apfelbaum 2016-08-09 17:02:16 UTC
I'll close this one as a duplicate of BZ 1352808, please see comment #3 of this bug for more info.

The BZ 1352808 is closed as not-a-bug because it is only a symptom of a wider problem.
I'll open a new BZ explaining the root cause and clone it as necessary for the firmware projects.

*** This bug has been marked as a duplicate of bug 1352808 ***