aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2010-06-20 22:07:48 +0000
committerDavid S. Miller <davem@davemloft.net>2010-06-25 21:16:58 -0700
commited770f01360b392564650bf1553ce723fa46afec (patch)
treee8d527f70f2746f823b907a4f8406963cb0f36ff /drivers/net
parentsmc91c92_cs: fix the problem that lan & modem does not work simultaneously (diff)
downloadlinux-dev-ed770f01360b392564650bf1553ce723fa46afec.tar.xz
linux-dev-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')
-rw-r--r--drivers/net/cpmac.c3
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))) {