Bug 1343301
| Summary: | [Q35] Fail to hotplug virtual block device | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | yduan | ||||||||||||
| Component: | qemu-kvm-rhev | Assignee: | Marcel Apfelbaum <marcel> | ||||||||||||
| Status: | CLOSED DUPLICATE | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||||||||
| Severity: | high | Docs Contact: | |||||||||||||
| Priority: | high | ||||||||||||||
| Version: | 7.3 | CC: | alex.williamson, chayang, jinzhao, juzhang, knoel, lersek, marcel, virt-maint, xfu, yduan | ||||||||||||
| Target Milestone: | rc | ||||||||||||||
| Target Release: | --- | ||||||||||||||
| Hardware: | x86_64 | ||||||||||||||
| OS: | Linux | ||||||||||||||
| Whiteboard: | |||||||||||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||||||||||
| Doc Text: | Story Points: | --- | |||||||||||||
| Clone Of: | Environment: | ||||||||||||||
| Last Closed: | 2016-08-19 01:38:20 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: | |||||||||||||||
| Attachments: |
|
||||||||||||||
Additional Info:
'info block' before hotplug:
(qemu) info block
pflash0 (#block106): /usr/share/OVMF/OVMF_CODE.secboot.fd (raw, read-only)
Cache mode: writeback
pflash1 (#block386): /usr/share/OVMF/OVMF_VARS.fd (raw)
Cache mode: writeback
drive_cd (#block566): /home/backup/RHEL-7.2-20151030.0-Server-x86_64-dvd1.iso (raw, read-only)
Removable device: locked, tray closed
Cache mode: writeback
drive_sysdisk (#block739): sysdisk.qcow2 (qcow2)
Cache mode: writeback, direct
'info block' after hotplug:
(qemu) info block
pflash0 (#block106): /usr/share/OVMF/OVMF_CODE.secboot.fd (raw, read-only)
Cache mode: writeback
pflash1 (#block386): /usr/share/OVMF/OVMF_VARS.fd (raw)
Cache mode: writeback
drive_cd (#block566): /home/backup/RHEL-7.2-20151030.0-Server-x86_64-dvd1.iso (raw, read-only)
Removable device: locked, tray closed
Cache mode: writeback
drive_sysdisk (#block739): sysdisk.qcow2 (qcow2)
Cache mode: writeback, direct
drive_datadisk (#block910): datadisk.qcow2 (qcow2)
Cache mode: writeback
Hi, Can you please attach dmesg and lspci full logs? Can you please try with i440fx machine (not q35)? Thanks, Marcel (In reply to Marcel Apfelbaum from comment #3) > Can you please attach dmesg and lspci full logs? I reproduce this bug with : Version-Release number of selected component (if applicable): Host: kernel: 3.10.0-450.el7.x86_64 qemu-kvm-rhev-2.6.0-9.el7.x86_64 OVMF-20160608-1.git988715a.el7.noarch Guest: kernel: 3.10.0-327el7.x86_64 dmesg and ovmf debug log as attachments. "lspci" in guest before hot-plug: 00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller 00:01.0 VGA compatible controller: Red Hat, Inc. QXL paravirtual graphic card (rev 04) 00:02.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01) 00:03.0 Ethernet controller: Red Hat, Inc Device 1041 (rev 01) 00:04.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:1e.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1e.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1e.4 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1e.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02) 01:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Upstream) (rev 02) 02:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 02:01.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 03:00.0 SCSI storage controller: Red Hat, Inc Device 1048 (rev 01) "lspci" in guest after hot-plug: 00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller 00:01.0 VGA compatible controller: Red Hat, Inc. QXL paravirtual graphic card (rev 04) 00:02.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01) 00:03.0 Ethernet controller: Red Hat, Inc Device 1041 (rev 01) 00:04.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:1e.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1e.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1e.4 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1e.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02) 01:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Upstream) (rev 02) 02:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 02:01.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 03:00.0 SCSI storage controller: Red Hat, Inc Device 1048 (rev 01) 04:00.0 SCSI storage controller: Red Hat, Inc Virtio SCSI Created attachment 1174445 [details]
OVMF debug log
Created attachment 1174446 [details]
"dmesg" in the guest
The configuration in comment 0 shows an upstream port with two downstream ports, downstream1 is pre-populated with a virtio-scsi device and the hot added device is into downstream2. The significant difference from a root port hotplug in this case is that the apertures of the parent root port and upstream port bridges are effectively locked due to the running device under downstream1. I wonder if both downstream ports were vacant whether the guest would reallocate the entire hierarchy. Anyway, I don't think the guest OS can reasonably be expected to deal with this unless someone, either the VM user or the VM firmware, defines some space left for hotplug devices. (In reply to Alex Williamson from comment #9) > I wonder if both downstream ports were vacant whether the > guest would reallocate the entire hierarchy. Hotplug succeeds when both downstream ports are vacant. dmesg and ovmf debug log as attachments. Version-Release number of selected component (if applicable): Host: kernel: 3.10.0-450.el7.x86_64 qemu-kvm-rhev-2.6.0-9.el7.x86_64 OVMF-20160608-1.git988715a.el7.noarch Guest: kernel: 3.10.0-327el7.x86_64 Start VM with following commands: /usr/libexec/qemu-kvm \ -S \ -name 'rhel6.8-x86' \ -machine q35,accel=kvm,usb=off,vmport=off \ -drive file=/usr/share/OVMF/OVMF_CODE.secboot.fd,if=pflash,format=raw,unit=0,readonly=on \ -drive file=MY_OVMF_VARS.fd,if=pflash,format=raw,unit=1 \ -m 4096 \ -smp 4,maxcpus=4,cores=2,threads=2,sockets=1 \ -cpu SandyBridge,enforce \ -rtc base=localtime,clock=host,driftfix=slew \ -nodefaults \ -vga qxl \ -device AC97,bus=pcie.0 \ -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \ -mon chardev=qmp_id_qmpmonitor1,mode=control \ -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \ -mon chardev=qmp_id_catch_monitor,mode=control \ -device pvpanic,ioport=0x505,id=idSWJ5gV \ -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \ -device isa-serial,chardev=serial_id_serial0 \ -debugcon file:q35.ovmf.log \ -global isa-debugcon.iobase=0x402 \ -device ich9-usb-ehci1,id=usb1,addr=1e.7,multifunction=on,bus=pcie.0 \ -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1e.0,firstport=0,bus=pcie.0 \ -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1e.2,firstport=2,bus=pcie.0 \ -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1e.4,firstport=4,bus=pcie.0 \ -device usb-tablet,id=usb-tablet1 \ -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \ -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0,disable-legacy=on,disable-modern=off \ -drive file=/home/backup/RHEL-7.2-20151030.0-Server-x86_64-dvd1.iso,if=none,media=cdrom,id=drive_cd,readonly=on,format=raw \ -device ide-cd,bus=ide.0,drive=drive_cd,id=device_cd,bootindex=1 \ -device ioh3420,bus=pcie.0,id=root.0,slot=1 \ -device ioh3420,bus=pcie.0,id=root.1,slot=2 \ -device x3130-upstream,bus=root.0,id=upstream1 \ -device xio3130-downstream,bus=upstream1,id=downstream1,chassis=1 \ -device xio3130-downstream,bus=upstream1,id=downstream2,chassis=2 \ -object iothread,id=iothread0 \ -device virtio-scsi-pci,bus=root.1,id=scsi_pci_bus0,iothread=iothread0,disable-legacy=on,disable-modern=off \ -drive file=sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \ -device scsi-hd,drive=drive_sysdisk,bus=scsi_pci_bus0.0,id=device_sysdisk,bootindex=0 \ -object iothread,id=iothread1 \ -enable-kvm \ -monitor stdio \ -spice port=5900,disable-ticketing \ -qmp tcp:0:9999,server,nowait \ Before hot-plug: # fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 1435647 500M Microsoft basic 3 1435648 41940991 19.3G Linux LVM Disk /dev/mapper/rhel_dhcp--10--78-root: 18.5 GB, 18547212288 bytes, 36225024 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/rhel_dhcp--10--78-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes #lspci 00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller 00:01.0 VGA compatible controller: Red Hat, Inc. QXL paravirtual graphic card (rev 04) 00:02.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01) 00:03.0 Ethernet controller: Red Hat, Inc Device 1041 (rev 01) 00:04.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:05.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:1e.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1e.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1e.4 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1e.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02) 01:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Upstream) (rev 02) 02:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 02:01.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 05:00.0 SCSI storage controller: Red Hat, Inc Device 1048 (rev 01) Hotplug first virtual block device: {"execute":"__com.redhat_drive_add", "arguments": {"file":"datadisk.qcow2","format":"qcow2","id":"drive_datadisk"}} {"return": {}} {"execute":"device_add","arguments":{"driver":"virtio-scsi-pci","id":"scsi_pci_bus1","bus":"downstream2","iothread":"iothread1"}} {"return": {}} {"execute":"device_add","arguments":{"driver":"scsi-hd","drive":"drive_datadisk","bus":"scsi_pci_bus1.0","id":"device_datadisk"}} {"return": {}} # fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 1435647 500M Microsoft basic 3 1435648 41940991 19.3G Linux LVM Disk /dev/mapper/rhel_dhcp--10--78-root: 18.5 GB, 18547212288 bytes, 36225024 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/rhel_dhcp--10--78-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes #lspci 00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller 00:01.0 VGA compatible controller: Red Hat, Inc. QXL paravirtual graphic card (rev 04) 00:02.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01) 00:03.0 Ethernet controller: Red Hat, Inc Device 1041 (rev 01) 00:04.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:05.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:1e.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1e.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1e.4 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1e.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02) 01:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Upstream) (rev 02) 02:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 02:01.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 04:00.0 SCSI storage controller: Red Hat, Inc Virtio SCSI 05:00.0 SCSI storage controller: Red Hat, Inc Device 1048 (rev 01) Hotplug second virtual block device: {"execute":"__com.redhat_drive_add", "arguments": {"file":"datadisk1.qcow2","format":"qcow2","id":"drive_datadisk1"}} {"return": {}} {"execute":"device_add","arguments":{"driver":"virtio-scsi-pci","id":"scsi_pci_bus2","bus":"downstream1","iothread":"iothread1"}} {"return": {}} {"execute":"device_add","arguments":{"driver":"scsi-hd","drive":"drive_datadisk1","bus":"scsi_pci_bus2.0","id":"device_datadisk1"}} {"return": {}} # fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 1435647 500M Microsoft basic 3 1435648 41940991 19.3G Linux LVM Disk /dev/mapper/rhel_dhcp--10--78-root: 18.5 GB, 18547212288 bytes, 36225024 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/rhel_dhcp--10--78-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/sdc: 5368 MB, 5368709120 bytes, 10485760 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes #lspci 00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller 00:01.0 VGA compatible controller: Red Hat, Inc. QXL paravirtual graphic card (rev 04) 00:02.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01) 00:03.0 Ethernet controller: Red Hat, Inc Device 1041 (rev 01) 00:04.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:05.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 0 (rev 02) 00:1e.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03) 00:1e.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03) 00:1e.4 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03) 00:1e.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02) 00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02) 01:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Upstream) (rev 02) 02:00.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 02:01.0 PCI bridge: Texas Instruments XIO3130 PCI Express Switch (Downstream) (rev 01) 03:00.0 SCSI storage controller: Red Hat, Inc Virtio SCSI 04:00.0 SCSI storage controller: Red Hat, Inc Virtio SCSI 05:00.0 SCSI storage controller: Red Hat, Inc Device 1048 (rev 01) Created attachment 1174821 [details]
OVMF debug log when both downstream ports are vacant.
Created attachment 1174822 [details]
"dmesg" in the guest when both downstream ports are vacant.
Hi, Can you please re-test as suggested by Laszlo in Comment #14? If there is no problem with latest RHEL-7.3 host kernel please close this BZ as duplicate of bug 1332408. Thanks, Marcel |
Created attachment 1165485 [details] Hotplug failed with windows10 guest Description of problem: Fail to hotplug virtual block device Version-Release number of selected component (if applicable): Host: kernel: 3.10.0-418.el7.x86_64 qemu-kvm-rhev-2.6.0-4.el7.x86_64 OVMF-20160419-2.git90bb4c5.el7.noarch Guest: kernel: 3.10.0-327.22.1.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1.Start VM with following commands: /usr/libexec/qemu-kvm \ -S \ -name 'rhel6.8-x86' \ -machine q35,accel=kvm,usb=off,vmport=off \ -drive file=/usr/share/OVMF/OVMF_CODE.secboot.fd,if=pflash,format=raw,unit=0,readonly=on \ -drive file=/usr/share/OVMF/OVMF_VARS.fd,if=pflash,format=raw,unit=1 \ -m 4096 \ -smp 4,maxcpus=4,cores=2,threads=2,sockets=1 \ -cpu SandyBridge,enforce \ -rtc base=localtime,clock=host,driftfix=slew \ -nodefaults \ -vga qxl \ -device AC97,bus=pcie.0 \ -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \ -mon chardev=qmp_id_qmpmonitor1,mode=control \ -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \ -mon chardev=qmp_id_catch_monitor,mode=control \ -device pvpanic,ioport=0x505,id=idSWJ5gV \ -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \ -device isa-serial,chardev=serial_id_serial0 \ -debugcon file:q35.ovmf.log \ -global isa-debugcon.iobase=0x402 \ -device ich9-usb-ehci1,id=usb1,addr=1e.7,multifunction=on,bus=pcie.0 \ -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1e.0,firstport=0,bus=pcie.0 \ -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1e.2,firstport=2,bus=pcie.0 \ -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1e.4,firstport=4,bus=pcie.0 \ -device usb-tablet,id=usb-tablet1 \ -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \ -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0,disable-legacy=on,disable-modern=off \ -drive file=/home/backup/RHEL-7.2-20151030.0-Server-x86_64-dvd1.iso,if=none,media=cdrom,id=drive_cd,readonly=on,format=raw \ -device ide-cd,bus=ide.0,drive=drive_cd,id=device_cd,bootindex=1 \ -device ioh3420,bus=pcie.0,id=root.0,slot=1 \ -device x3130-upstream,bus=root.0,id=upstream1 \ -device xio3130-downstream,bus=upstream1,id=downstream1,chassis=1 \ -device xio3130-downstream,bus=upstream1,id=downstream2,chassis=2 \ -object iothread,id=iothread0 \ -device virtio-scsi-pci,bus=downstream1,id=scsi_pci_bus0,iothread=iothread0,disable-legacy=on,disable-modern=off \ -drive file=sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \ -device scsi-hd,drive=drive_sysdisk,bus=scsi_pci_bus0.0,id=device_sysdisk,bootindex=0 \ -object iothread,id=iothread1 \ -enable-kvm \ -monitor stdio \ -spice port=5900,disable-ticketing \ -qmp tcp:0:9999,server,nowait \ 2.'fdisk -l' in the guest. # fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 32.2 GB, 32212254720 bytes, 62914560 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 1435647 500M Microsoft basic 3 1435648 62912511 29.3G Linux LVM Disk /dev/mapper/rhel-root: 28.2 GB, 28210888704 bytes, 55099392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/rhel-swap: 3221 MB, 3221225472 bytes, 6291456 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes 3.Hot plug a data disk in QMP. {"execute":"__com.redhat_drive_add", "arguments": {"file":"datadisk.qcow2","format":"qcow2","id":"drive_datadisk"}} {"return": {}} {"execute":"device_add","arguments":{"driver":"virtio-scsi-pci","id":"scsi_pci_bus1","bus":"downstream2","iothread":"iothread1"}} {"return": {}} {"execute":"device_add","arguments":{"driver":"scsi-hd","drive":"drive_datadisk","bus":"scsi_pci_bus1.0","id":"device_datadisk"}} {"return": {}} 4.'fdisk -l' in the guest. # fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/sda: 32.2 GB, 32212254720 bytes, 62914560 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt # Start End Size Type Name 1 2048 411647 200M EFI System EFI System Partition 2 411648 1435647 500M Microsoft basic 3 1435648 62912511 29.3G Linux LVM Disk /dev/mapper/rhel-root: 28.2 GB, 28210888704 bytes, 55099392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/rhel-swap: 3221 MB, 3221225472 bytes, 6291456 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Actual results: Hotplug failed. Expected results: Hotplug should succeed. Additional info: 1.Hotplug failed with windows10 guest too. As attachment. 2.'tailf /var/log/messages' in the guest: Jun 7 00:41:45 localhost kernel: pciehp 0000:02:01.0:pcie24: Button pressed on Slot(0-1) Jun 7 00:41:45 localhost kernel: pciehp 0000:02:01.0:pcie24: Card present on Slot(0-1) Jun 7 00:41:45 localhost kernel: pciehp 0000:02:01.0:pcie24: PCI slot #0-1 - powering on due to button press Jun 7 00:41:46 localhost journal: Device 0000:04:00.0 not found: could not access /sys/bus/pci/devices/0000:04:00.0/config: No such file or directory Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: no space for [mem size 0x00300000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: failed to assign [mem size 0x00300000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: no space for [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: no space for [mem size 0x00100000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: failed to assign [mem size 0x00100000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: no space for [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pci 0000:04:00.0: BAR 1: no space for [mem size 0x00001000] Jun 7 00:41:46 localhost kernel: pci 0000:04:00.0: BAR 1: failed to assign [mem size 0x00001000] Jun 7 00:41:46 localhost kernel: pci 0000:04:00.0: BAR 0: assigned [io 0x2000-0x203f] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: PCI bridge to [bus 04] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: bridge window [io 0x2000-0x2fff] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:00.0: PCI bridge to [bus 03] Jun 7 00:41:46 localhost kernel: pcieport 0000:01:00.0: PCI bridge to [bus 02-04] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: no space for [mem size 0x00300000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: failed to assign [mem size 0x00300000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: no space for [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: no space for [mem size 0x00100000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 14: failed to assign [mem size 0x00100000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: no space for [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: BAR 15: failed to assign [mem size 0x00200000 64bit pref] Jun 7 00:41:46 localhost kernel: pci 0000:04:00.0: BAR 1: no space for [mem size 0x00001000] Jun 7 00:41:46 localhost kernel: pci 0000:04:00.0: BAR 1: failed to assign [mem size 0x00001000] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: PCI bridge to [bus 04] Jun 7 00:41:46 localhost kernel: pcieport 0000:02:01.0: bridge window [io 0x2000-0x2fff] Jun 7 00:41:46 localhost kernel: virtio-pci 0000:04:00.0: enabling device (0000 -> 0001) Jun 7 00:41:46 localhost kernel: virtio-pci 0000:04:00.0: virtio_pci: leaving for legacy driver Jun 7 00:41:46 localhost kernel: scsi host7: Virtio SCSI HBA Jun 7 00:42:07 localhost kernel: scsi 7:0:0:0: abort Jun 7 00:43:08 localhost dbus-daemon: dbus[731]: [system] Activating service name='com.redhat.SubscriptionManager' (using servicehelper) Jun 7 00:43:08 localhost dbus[731]: [system] Activating service name='com.redhat.SubscriptionManager' (using servicehelper) Jun 7 00:43:08 localhost dbus[731]: [system] Successfully activated service 'com.redhat.SubscriptionManager' Jun 7 00:43:08 localhost dbus-daemon: dbus[731]: [system] Successfully activated service 'com.redhat.SubscriptionManager' Jun 7 00:43:19 localhost firefox.desktop: SystemMessageCache: init1465274599178#011addons.update-checker#011WARN#011Update manifest for {972ce4c6-7e08-4474-a285-3208198ce6fd} did not contain an updates property Jun 7 00:45:40 localhost kernel: INFO: task kworker/u8:5:315 blocked for more than 120 seconds. Jun 7 00:45:40 localhost kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. Jun 7 00:45:40 localhost kernel: kworker/u8:5 D 0000000000002003 0 315 2 0x00000000 Jun 7 00:45:40 localhost kernel: Workqueue: scsi_tmf_7 scmd_eh_abort_handler Jun 7 00:45:40 localhost kernel: ffff8801740dbc50 0000000000000046 ffff88017485dc00 ffff8801740dbfd8 Jun 7 00:45:40 localhost kernel: ffff8801740dbfd8 ffff8801740dbfd8 ffff88017485dc00 ffff8801740dbd80 Jun 7 00:45:40 localhost kernel: ffff8801740dbd88 7fffffffffffffff ffff88017485dc00 0000000000002003 Jun 7 00:45:40 localhost kernel: Call Trace: Jun 7 00:45:40 localhost kernel: [<ffffffff8163b7f9>] schedule+0x29/0x70 Jun 7 00:45:40 localhost kernel: [<ffffffff816394e9>] schedule_timeout+0x209/0x2d0 Jun 7 00:45:40 localhost kernel: [<ffffffffa0058a96>] ? vp_notify+0x16/0x20 [virtio_pci] Jun 7 00:45:40 localhost kernel: [<ffffffffa0046086>] ? virtqueue_notify+0x16/0x30 [virtio_ring] Jun 7 00:45:40 localhost kernel: [<ffffffffa00616df>] ? virtscsi_kick_cmd+0x20f/0x280 [virtio_scsi] Jun 7 00:45:40 localhost kernel: [<ffffffff8163bbc6>] wait_for_completion+0x116/0x170 Jun 7 00:45:40 localhost kernel: [<ffffffff810b88c0>] ? wake_up_state+0x20/0x20 Jun 7 00:45:40 localhost kernel: [<ffffffffa0061b48>] virtscsi_tmf.constprop.5+0xa8/0x110 [virtio_scsi] Jun 7 00:45:40 localhost kernel: [<ffffffffa006224a>] virtscsi_abort+0xda/0x170 [virtio_scsi] Jun 7 00:45:40 localhost kernel: [<ffffffff8141ce13>] scmd_eh_abort_handler+0xc3/0x290 Jun 7 00:45:40 localhost kernel: [<ffffffff8109d5fb>] process_one_work+0x17b/0x470 Jun 7 00:45:40 localhost kernel: [<ffffffff8109e3cb>] worker_thread+0x11b/0x400 Jun 7 00:45:40 localhost kernel: [<ffffffff8109e2b0>] ? rescuer_thread+0x400/0x400 Jun 7 00:45:40 localhost kernel: [<ffffffff810a5aef>] kthread+0xcf/0xe0 Jun 7 00:45:40 localhost kernel: [<ffffffff810a5a20>] ? kthread_create_on_node+0x140/0x140 Jun 7 00:45:40 localhost kernel: [<ffffffff816467d8>] ret_from_fork+0x58/0x90 Jun 7 00:45:40 localhost kernel: [<ffffffff810a5a20>] ? kthread_create_on_node+0x140/0x140