PCI/IOV: Add flag so platforms can skip VF scanning
Provide a flag to skip scanning for new VFs after SR-IOV enablement. This can be set by implementations for which the VFs are already reported by other means. Signed-off-by: Sebastian Ott <sebott@linux.ibm.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
parent
18f9e9d150
commit
aff68a5a62
|
@ -257,6 +257,9 @@ static int sriov_add_vfs(struct pci_dev *dev, u16 num_vfs)
|
|||
unsigned int i;
|
||||
int rc;
|
||||
|
||||
if (dev->no_vf_scan)
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < num_vfs; i++) {
|
||||
rc = pci_iov_add_virtfn(dev, i);
|
||||
if (rc)
|
||||
|
@ -385,6 +388,9 @@ static void sriov_del_vfs(struct pci_dev *dev)
|
|||
struct pci_sriov *iov = dev->sriov;
|
||||
int i;
|
||||
|
||||
if (dev->no_vf_scan)
|
||||
return;
|
||||
|
||||
for (i = 0; i < iov->num_VFs; i++)
|
||||
pci_iov_remove_virtfn(dev, i);
|
||||
}
|
||||
|
|
|
@ -405,6 +405,7 @@ struct pci_dev {
|
|||
unsigned int non_compliant_bars:1; /* Broken BARs; ignore them */
|
||||
unsigned int is_probed:1; /* Device probing in progress */
|
||||
unsigned int link_active_reporting:1;/* Device capable of reporting link active */
|
||||
unsigned int no_vf_scan:1; /* Don't scan for VFs after IOV enablement */
|
||||
pci_dev_flags_t dev_flags;
|
||||
atomic_t enable_cnt; /* pci_enable_device has been called */
|
||||
|
||||
|
|
Loading…
Reference in a new issue