qlcnic: Fix an error handling path in 'qlcnic_probe()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sat, 12 Jun 2021 12:37:46 +0000 (14:37 +0200)
committerSasha Levin <sashal@kernel.org>
Wed, 30 Jun 2021 12:48:18 +0000 (08:48 -0400)
[ Upstream commit cb3376604a676e0302258b01893911bdd7aa5278 ]

If an error occurs after a 'pci_enable_pcie_error_reporting()' call, it
must be undone by a corresponding 'pci_disable_pcie_error_reporting()'
call, as already done in the remove function.

Fixes: 451724c821c1 ("qlcnic: aer support")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c

index ed34b7d1a9e11bb131eae9f294185afacafc52da..43920374beae2d4d6565df87b5c03709d003306d 100644 (file)
@@ -2708,6 +2708,7 @@ qlcnic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
        kfree(ahw);
 
 err_out_free_res:
+       pci_disable_pcie_error_reporting(pdev);
        pci_release_regions(pdev);
 
 err_out_disable_pdev: