[PATCH 11/19] rtl818x_pci: Disable pci device in error handling code
From: Julian Calaby <hidden>
Date: 2016-03-18 02:24:58
Subsystem:
rtl8180 wireless driver, the rest · Maintainer:
Linus Torvalds
From: Julian Calaby <hidden>
Date: 2016-03-18 02:24:58
Subsystem:
rtl8180 wireless driver, the rest · Maintainer:
Linus Torvalds
From: Jia-Ju Bai <redacted> When pci_request_regions in rtl8180_probe fails, pci_disable_device is not called to disable the device which is enabled by pci_enbale_device. This patch fixes the problem by adding a new lable in error handling code. Signed-off-by: Jia-Ju Bai <redacted> Acked-by: Andrea Merello <redacted> Signed-off-by: Julian Calaby <redacted> --- drivers/net/wireless/realtek/rtl818x/rtl8180/dev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/realtek/rtl818x/rtl8180/dev.c b/drivers/net/wireless/realtek/rtl818x/rtl8180/dev.c
index a43a16f..c76af5d 100644
--- a/drivers/net/wireless/realtek/rtl818x/rtl8180/dev.c
+++ b/drivers/net/wireless/realtek/rtl818x/rtl8180/dev.c@@ -1736,7 +1736,7 @@ static int rtl8180_probe(struct pci_dev *pdev, if (err) { printk(KERN_ERR "%s (rtl8180): Cannot obtain PCI resources\n", pci_name(pdev)); - return err; + goto err_disable_dev; } io_addr = pci_resource_start(pdev, 0);
@@ -1938,6 +1938,8 @@ static int rtl8180_probe(struct pci_dev *pdev, err_free_reg: pci_release_regions(pdev); + + err_disable_dev: pci_disable_device(pdev); return err; }
--
2.7.0