]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: sun: fix missing release regions in cas_init_one().
authorQiushi Wu <wu000273@umn.edu>
Fri, 22 May 2020 21:50:27 +0000 (16:50 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Jun 2020 06:22:56 +0000 (08:22 +0200)
commit 5a730153984dd13f82ffae93d7170d76eba204e9 upstream.

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@umn.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/sun/cassini.c

index 6ec9163e232c41c12e95a50ab62fdffb4949864b..b716f188188ea6a3f5b10541ea6026c128b88f4d 100644 (file)
@@ -4971,7 +4971,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
@@ -5144,7 +5144,6 @@ err_out_iounmap:
 err_out_free_res:
        pci_release_regions(pdev);
 
-err_write_cacheline:
        /* Try to restore it in case the error occurred after we
         * set it.
         */