[PATCH] net: sun: fix missing release regions in cas_init_one().

From: wu000273
Date: Fri May 22 2020 - 17:50:46 EST


From: Qiushi Wu <wu000273@xxxxxxx>

In cas_init_one(), "pdev" is requested by "pci_request_regions", but it
was not released after a call of the function âpci_write_config_byteâ
failed. Thus replace the jump target âerr_write_cachelineâ by
"err_out_free_res".

Fixes: 1f26dac32057 ("[NET]: Add Sun Cassini driver.")
Signed-off-by: Qiushi Wu <wu000273@xxxxxxx>
---
drivers/net/ethernet/sun/cassini.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/sun/cassini.c b/drivers/net/ethernet/sun/cassini.c
index e6d1aa882fa5..f1c8615ab6f0 100644
--- a/drivers/net/ethernet/sun/cassini.c
+++ b/drivers/net/ethernet/sun/cassini.c
@@ -4963,7 +4963,7 @@ static int cas_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
cas_cacheline_size)) {
dev_err(&pdev->dev, "Could not set PCI cache "
"line size\n");
- goto err_write_cacheline;
+ goto err_out_free_res;
}
}
#endif
@@ -5136,7 +5136,6 @@ static int cas_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
err_out_free_res:
pci_release_regions(pdev);

-err_write_cacheline:
/* Try to restore it in case the error occurred after we
* set it.
*/
--
2.17.1