PCI: Add sysfs sriov_drivers_autoprobe to control VF driver binding
authorBodong Wang <bodong@mellanox.com>
Wed, 12 Apr 2017 22:51:40 +0000 (01:51 +0300)
committerBjorn Helgaas <bhelgaas@google.com>
Thu, 20 Apr 2017 13:53:51 +0000 (08:53 -0500)
commit0e7df22401a3dfd403b26dea62dd00e0598b538b
tree484063ef8f232bf8d51d998a1331513a9f2c8b5a
parentf65fd1aa4f9881d5540192d11f7b8ed2fec936db
PCI: Add sysfs sriov_drivers_autoprobe to control VF driver binding

Sometimes it is not desirable to bind SR-IOV VFs to drivers.  This can save
host side resource usage by VF instances that will be assigned to VMs.

Add a new PCI sysfs interface "sriov_drivers_autoprobe" to control that
from the PF.  To modify it, echo 0/n/N (disable probe) or 1/y/Y (enable
probe) to:

  /sys/bus/pci/devices/<DOMAIN:BUS:DEVICE.FUNCTION>/sriov_drivers_autoprobe

Note that this must be done before enabling VFs.  The change will not take
effect if VFs are already enabled.  Simply, one can disable VFs by setting
sriov_numvfs to 0, choose whether to probe or not, and then re-enable the
VFs by restoring sriov_numvfs.

[bhelgaas: changelog, ABI doc]
Signed-off-by: Bodong Wang <bodong@mellanox.com>
Signed-off-by: Eli Cohen <eli@mellanox.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Documentation/ABI/testing/sysfs-bus-pci
Documentation/PCI/pci-iov-howto.txt
drivers/pci/iov.c
drivers/pci/pci-driver.c
drivers/pci/pci-sysfs.c
drivers/pci/pci.h