bnx2x: More Shutdown revisions
authorYuval Mintz <yuvalmin@broadcom.com>
Mon, 27 Jan 2014 15:11:58 +0000 (17:11 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 27 Jan 2014 20:57:31 +0000 (12:57 -0800)
Submission d9aee59 "bnx2x: Don't release PCI bars on shutdown" separated
the PCI remove and shutdown flows, but pci_disable_device() is still
being called on both.
As a result, a dev_WARN_ONCE will be hit during shutdown for every bnx2x
VF probed on a hypervisor (as its shutdown callback will be called and later
pci_disable_sriov() will call its remove callback).

This calls the pci_disable_device() only on the remove flow.

Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com>
Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c

index e118a3ec62bc263fcf380aa9832c7b251bf59460..c9c445e7b4a5ab0d756880926fc529ed538a70a6 100644 (file)
@@ -13102,9 +13102,9 @@ static void __bnx2x_remove(struct pci_dev *pdev,
 
                if (atomic_read(&pdev->enable_cnt) == 1)
                        pci_release_regions(pdev);
-       }
 
-       pci_disable_device(pdev);
+               pci_disable_device(pdev);
+       }
 }
 
 static void bnx2x_remove_one(struct pci_dev *pdev)