summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorPankaj Bansal <pankaj.bansal@nxp.com>2019-02-08 08:46:11 +0000
committerJoe Hershberger <joe.hershberger@ni.com>2019-05-08 17:26:59 -0500
commit4b0880d66baa1b96c6293051a03af0ad1bee7cb0 (patch)
tree513f0a8f969838f41232c85d588d15c0c2a5a0b5 /drivers/net
parentd47cfdbd315297af73746462599b0c81dac6054a (diff)
drivers: net: ldpaa_eth: fix resource leak
if an error occurs in ldpaa_eth_init, need to free all resources before returning the error. Threfore, free net_dev before returning from ldpaa_eth_init. Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ldpaa_eth/ldpaa_eth.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c
index 73b7ba29df..34253e3924 100644
--- a/drivers/net/ldpaa_eth/ldpaa_eth.c
+++ b/drivers/net/ldpaa_eth/ldpaa_eth.c
@@ -1074,6 +1074,7 @@ int ldpaa_eth_init(int dpmac_id, phy_interface_t enet_if)
priv = (struct ldpaa_eth_priv *)malloc(sizeof(struct ldpaa_eth_priv));
if (!priv) {
printf("ldpaa_eth_priv malloc() failed\n");
+ free(net_dev);
return -ENOMEM;
}
memset(priv, 0, sizeof(struct ldpaa_eth_priv));