forked from luck/tmp_suning_uos_patched
cxgb4: free up resources of pf 0-3
free pf 0-3 resources, commitbaf5086840
("cxgb4: restructure VF mgmt code") erroneously removed the code which frees the pf 0-3 resources, causing the probe of pf 0-3 to fail in case of driver reload. Fixes:baf5086840
("cxgb4: restructure VF mgmt code") Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a8c6db1dfd
commit
c4e43e14cd
|
@ -4982,9 +4982,10 @@ static int cxgb4_iov_configure(struct pci_dev *pdev, int num_vfs)
|
|||
|
||||
pcie_fw = readl(adap->regs + PCIE_FW_A);
|
||||
/* Check if cxgb4 is the MASTER and fw is initialized */
|
||||
if (!(pcie_fw & PCIE_FW_INIT_F) ||
|
||||
if (num_vfs &&
|
||||
(!(pcie_fw & PCIE_FW_INIT_F) ||
|
||||
!(pcie_fw & PCIE_FW_MASTER_VLD_F) ||
|
||||
PCIE_FW_MASTER_G(pcie_fw) != CXGB4_UNIFIED_PF) {
|
||||
PCIE_FW_MASTER_G(pcie_fw) != CXGB4_UNIFIED_PF)) {
|
||||
dev_warn(&pdev->dev,
|
||||
"cxgb4 driver needs to be MASTER to support SRIOV\n");
|
||||
return -EOPNOTSUPP;
|
||||
|
@ -5599,24 +5600,24 @@ static void remove_one(struct pci_dev *pdev)
|
|||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
t4_cleanup_clip_tbl(adapter);
|
||||
#endif
|
||||
iounmap(adapter->regs);
|
||||
if (!is_t4(adapter->params.chip))
|
||||
iounmap(adapter->bar2);
|
||||
pci_disable_pcie_error_reporting(pdev);
|
||||
if ((adapter->flags & DEV_ENABLED)) {
|
||||
pci_disable_device(pdev);
|
||||
adapter->flags &= ~DEV_ENABLED;
|
||||
}
|
||||
pci_release_regions(pdev);
|
||||
kfree(adapter->mbox_log);
|
||||
synchronize_rcu();
|
||||
kfree(adapter);
|
||||
}
|
||||
#ifdef CONFIG_PCI_IOV
|
||||
else {
|
||||
cxgb4_iov_configure(adapter->pdev, 0);
|
||||
}
|
||||
#endif
|
||||
iounmap(adapter->regs);
|
||||
pci_disable_pcie_error_reporting(pdev);
|
||||
if ((adapter->flags & DEV_ENABLED)) {
|
||||
pci_disable_device(pdev);
|
||||
adapter->flags &= ~DEV_ENABLED;
|
||||
}
|
||||
pci_release_regions(pdev);
|
||||
kfree(adapter->mbox_log);
|
||||
synchronize_rcu();
|
||||
kfree(adapter);
|
||||
}
|
||||
|
||||
/* "Shutdown" quiesces the device, stopping Ingress Packet and Interrupt
|
||||
|
|
Loading…
Reference in New Issue
Block a user