aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/iov.c
diff options
context:
space:
mode:
authorSebastian Ott <sebott@linux.ibm.com>2018-12-21 15:14:19 +0100
committerBjorn Helgaas <bhelgaas@google.com>2019-01-01 19:04:37 -0600
commitaff68a5a621e2569d126b817d0d42f658df524bf (patch)
tree25493ee845607f4de46651739fcc8b31896ae9fc /drivers/pci/iov.c
parentPCI/IOV: Factor out sriov_add_vfs() (diff)
downloadlinux-dev-aff68a5a621e2569d126b817d0d42f658df524bf.tar.xz
linux-dev-aff68a5a621e2569d126b817d0d42f658df524bf.zip
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>
Diffstat (limited to 'drivers/pci/iov.c')
-rw-r--r--drivers/pci/iov.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c
index 408db232a328..3aa115ed3a65 100644
--- a/drivers/pci/iov.c
+++ b/drivers/pci/iov.c
@@ -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);
}