Hide Forgot
Description of problem: bring up VFs with parent Qlogic nic, unbind and assign a VF to a guest. In the guest, we cannot install the VF driver, while we can install the PF driver. Version-Release number of selected component (if applicable): host: kernel:kernel-3.10.0-495.el7.x86_64 qemu-kvm:qemu-kvm-rhev-2.6.0-22.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1.bring up VFs with parent Qlogic nic: # echo 8 > /sys/bus/pci/devices/0000\:07\:00.0/sriov_numvfs 2.unbind a VF and assign it to vfio-pci: # echo 0000:07:02.0 > /sys/bus/pci/devices/0000\:07\:02.0/driver/unbind # echo 1077 8430 > /sys/bus/pci/drivers/vfio-pci/new_id # echo 1077 8430 > /sys/bus/pci/drivers/vfio-pci/remove_id 3.boot guest with assigned VF -device vfio-pci,host=07:02.0,id=vf0 \ 4.download driver(qlxge_ws2008r2_5_3_32_1130_whql) from qlogic, and install this driver for VF in guest. Driver link (Ethernet Networking Driver for Windows 2008 R2 (x64)): http://driverdownloads.qlogic.com/QLogicDriverDownloads_UI/SearchByProduct.aspx?ProductCategory=322&Product=1186&Os=190 Actual results: In qemu, (qemu) info pci Bus 0, device 4, function 0: Ethernet controller: PCI device 1077:8430 BAR0: 64 bit prefetchable memory at 0xfe800000 [0xfe803fff]. BAR2: 64 bit prefetchable memory at 0xfe804000 [0xfe805fff]. BAR4: 64 bit prefetchable memory at 0xfe806000 [0xfe806fff]. id "vf0" In guest,there is an Ethernet Controller (Location: PCI Slot 4) in Device Manager. When installing the driver, it shows: Windows was unable to install your Ethernet Controller Windows could not find driver software for your device. If you know the manufacture of your device, you can visit its website and check the support section for driver software. Expected results: the driver can be installed successfully. Additional info: We have tried the previous version of the driver, e.g., qlxge_ws2008r2_5_3_12_0925_whql, qlxge_ws2008r2_5_3_25_0425_whql, neither of them can be installed. We can install this driver for PF successfully. # ethtool -i p5p1 (p5p1 is the interface of qlogic nic) driver: qlcnic version: 5.3.65 firmware-version: 5.8.18 expansion-rom-version: bus-info: 0000:07:00.0 supports-statistics: yes supports-test: yes supports-eeprom-access: yes supports-register-dump: yes supports-priv-flags: no
http://filedownloads.qlogic.com/files/Driver/91701/README_5_3_32_1130.txt 5.2 Using SRIOV 5.2.1 Hardware requirement CPU chipset must support SRIOV. e.g. Intel Westmere system hardware support in the form of an IOMMU device. 5.2.2 Software requirement * Minimum supported OS is Windows Server 2012. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Please retest with a guest version supported by the driver.
(In reply to Alex Williamson from comment #2) > http://filedownloads.qlogic.com/files/Driver/91701/README_5_3_32_1130.txt > > 5.2 Using SRIOV > > 5.2.1 Hardware requirement > CPU chipset must support SRIOV. e.g. Intel Westmere system hardware > support in the form of an IOMMU device. > > 5.2.2 Software requirement > * Minimum supported OS is Windows Server 2012. > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > Please retest with a guest version supported by the driver. So sorry for this mistake, alex. We downloaded the driver from qlogic with the filter: Converged Network Adapter + QLE8362 + Windows Server 2008 R2 (64-bit) Then choose "Ethernet Networking Driver for Windows 2008 R2 (x64)", so we think it is available for win2008 r2 guest. We have missed this import info in README and cause this issue. In the future test, we will pay attention to it. Result will be updated when retest is done,thanks a lot.
Closing due driver stating that the guest OS under test is not supported. Open a new bug if the problem occurs on a version of the guest the driver claims to support.