diff options
author | Florian Fainelli <florian@openwrt.org> | 2010-06-20 22:07:48 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-25 21:16:58 -0700 |
commit | ed770f01360b392564650bf1553ce723fa46afec (patch) | |
tree | e8d527f70f2746f823b907a4f8406963cb0f36ff /drivers/net/cpmac.c | |
parent | 9735b7ef005aaef5e5905cddba893f8725cd8867 (diff) | |
download | linux-ed770f01360b392564650bf1553ce723fa46afec.tar.gz linux-ed770f01360b392564650bf1553ce723fa46afec.tar.bz2 linux-ed770f01360b392564650bf1553ce723fa46afec.zip |
cpmac: do not leak struct net_device on phy_connect errors
If the call to phy_connect fails, we will return directly instead of freeing
the previously allocated struct net_device.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
CC: stable@kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/cpmac.c')
-rw-r--r-- | drivers/net/cpmac.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/cpmac.c b/drivers/net/cpmac.c index 3c58db595285..23786ee34bed 100644 --- a/drivers/net/cpmac.c +++ b/drivers/net/cpmac.c @@ -1181,7 +1181,8 @@ static int __devinit cpmac_probe(struct platform_device *pdev) if (netif_msg_drv(priv)) printk(KERN_ERR "%s: Could not attach to PHY\n", dev->name); - return PTR_ERR(priv->phy); + rc = PTR_ERR(priv->phy); + goto fail; } if ((rc = register_netdev(dev))) { |