Browse Source

net: cpmac: fix in releasing resources

before registering the the net device this code freeing net device
by using the label 'fail'

fixed by introducing an another label 'out'

Signed-off-by: Varka Bhadram <varkab@cdac.in>
Signed-off-by: David S. Miller <davem@davemloft.net>
Varka Bhadram 11 years ago
parent
commit
0465be8f4f
1 changed files with 3 additions and 2 deletions
  1. 3 2
      drivers/net/ethernet/ti/cpmac.c

+ 3 - 2
drivers/net/ethernet/ti/cpmac.c

@@ -1142,7 +1142,7 @@ static int cpmac_probe(struct platform_device *pdev)
 	mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, "regs");
 	mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, "regs");
 	if (!mem) {
 	if (!mem) {
 		rc = -ENODEV;
 		rc = -ENODEV;
-		goto fail;
+		goto out;
 	}
 	}
 
 
 	dev->irq = platform_get_irq_byname(pdev, "irq");
 	dev->irq = platform_get_irq_byname(pdev, "irq");
@@ -1170,7 +1170,7 @@ static int cpmac_probe(struct platform_device *pdev)
 			dev_err(&pdev->dev, "Could not attach to PHY\n");
 			dev_err(&pdev->dev, "Could not attach to PHY\n");
 
 
 		rc = PTR_ERR(priv->phy);
 		rc = PTR_ERR(priv->phy);
-		goto fail;
+		goto out;
 	}
 	}
 
 
 	rc = register_netdev(dev);
 	rc = register_netdev(dev);
@@ -1189,6 +1189,7 @@ static int cpmac_probe(struct platform_device *pdev)
 
 
 fail:
 fail:
 	free_netdev(dev);
 	free_netdev(dev);
+out:
 	return rc;
 	return rc;
 }
 }