nfp: stop limiting VFs to 0
authorJakub Kicinski <jakub.kicinski@netronome.com>
Fri, 29 Jun 2018 20:09:00 +0000 (15:09 -0500)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 29 Jun 2018 20:09:00 +0000 (15:09 -0500)
commit83235822b8b4fe47ecbd6b6bcbcc902860ac00fc
tree19b9db3e4ace53c54a0fbfea6c27dc9dc1248273
parent38972375ef7bdc7dd989bcb48d5448662a95bca2
nfp: stop limiting VFs to 0

Before 8d85a7a4f2c9 ("PCI/IOV: Allow PF drivers to limit total_VFs to 0"),
pci_sriov_set_totalvfs(pdev, 0) meant "we can enable TotalVFs virtual
functions".  After 8d85a7a4f2c9, it means "we can't enable *any* VFs".

That broke this scenario where nfp intends to remove any limit on the
number of VFs that can be enabled:

  nfp_pci_probe
    nfp_pcie_sriov_read_nfd_limit
      nfp_rtsym_read_le("nfd_vf_cfg_max_vfs", &err)
      pci_sriov_set_totalvfs(pf->pdev, 0)   # if FW didn't expose a limit

  ...
  # userspace writes N to sysfs "sriov_numvfs":
  sriov_numvfs_store
    pci_sriov_get_totalvfs                  # now returns 0
    return -ERANGE

Prior to 8d85a7a4f2c9, pci_sriov_get_totalvfs() returned TotalVFs, but it
now returns 0.

Remove the pci_sriov_set_totalvfs(pdev, 0) calls so we don't limit the
number of VFs that can be enabled.

Fixes: 8d85a7a4f2c9 ("PCI/IOV: Allow PF drivers to limit total_VFs to 0")
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
[bhelgaas: changelog]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/net/ethernet/netronome/nfp/nfp_main.c