Bug 1506887 - host_nic_vfs_config is not populated if parent pci device of nic is shared with another device
Summary: host_nic_vfs_config is not populated if parent pci device of nic is shared wi...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 4.1.6
Hardware: x86_64
OS: Linux
high
high
Target Milestone: ovirt-4.2.0
: ---
Assignee: Alona Kaplan
QA Contact: Michael Burman
URL:
Whiteboard:
: 1505873 (view as bug list)
Depends On:
Blocks: 1509270
TreeView+ depends on / blocked
 
Reported: 2017-10-27 05:25 UTC by Germano Veit Michel
Modified: 2021-03-11 18:09 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1509270 (view as bug list)
Environment:
Last Closed: 2018-05-15 17:45:44 UTC
oVirt Team: Network
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
VDSM hooks to reproduce the problem (1.02 KB, application/x-xz)
2017-10-27 05:33 UTC, Germano Veit Michel
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2018:1488 0 None None None 2018-05-15 17:46:48 UTC
oVirt gerrit 83350 0 master MERGED engine: SRIOV physical function can have more than one child device 2017-11-01 13:09:18 UTC
oVirt gerrit 83488 0 ovirt-engine-4.1 MERGED engine: SRIOV physical function can have more than one child device 2017-11-03 10:14:34 UTC

Description Germano Veit Michel 2017-10-27 05:25:21 UTC
Description of problem:

In case the parent PCI device of a SR-IOV NIC is shared with another device, like a scsi_host, the engine fails to fill the host_nic_vfs_config table. This prevents the user from using the NIC for SR-IOV as he is unable to configure the number of VFs from the Administration Portal.

For example, these entries from HostdevListByCaps triggers the problem:

       device_name      | parent_device_name | capability | total_vfs | net_iface_name
------------------------+--------------------+------------+-----------+----------------
 pci_0000_22_00_0       | pci_0000_00_03_0   | pci        |         7 |
 scsi_host20            | pci_0000_22_00_0   | scsi_host  |           |
 net_enp22s0f0          | pci_0000_22_00_0   | net        |           | enp22s0f0

Version-Release number of selected component (if applicable):
rhevm-4.1.6.2-0.1.el7.noarch

How reproducible:
100%, use the attached hooks.

IMPORTANT: to reproduce the problem, the host needs to be installed with the hook already in place. If the host_nic_vfs_config table is already populated with the unmodified fakesriov hook, the problem does not reproduce. So please remove and re-install the host to reproduce (and QA).

Actual results:
No SR-IOV icon on the NIC.

Expected results:
SR-IOV icon on the NIC.

Comment 1 Germano Veit Michel 2017-10-27 05:29:01 UTC
*** Bug 1505873 has been marked as a duplicate of this bug. ***

Comment 2 Germano Veit Michel 2017-10-27 05:33:43 UTC
Created attachment 1344155 [details]
VDSM hooks to reproduce the problem

after_get_caps:
10_fakesriov      # place this hook to reproduce the problem

after_hostdev_list_by_caps:
10_fakesriov      # place this hook to reproduce the problem
20_filter_sriov   # hook to correct the problem on vdsm side

Comment 8 Michael Burman 2018-01-01 14:09:59 UTC
Tested and verified on 4.2.0.2-0.1.el7 and vdsm-4.20.9.3-1.el7ev.x86_64
Using Germano's vdsm fakesriov hooks only.

We still didn't get the 'offending' HW card and still didn't get reply from customer on the hot-fix.

Comment 12 errata-xmlrpc 2018-05-15 17:45:44 UTC
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/RHEA-2018:1488

Comment 13 Franta Kust 2019-05-16 13:06:12 UTC
BZ<2>Jira Resync


Note You need to log in before you can comment on or make changes to this bug.