From: Mario Six Date: Mon, 15 Jan 2018 10:08:22 +0000 (+0100) Subject: net: tsec: Fix memory leak in error path X-Git-Tag: v2018.03-rc4~24^2~8 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=5775f00e1206fd425609c26ee9a3620149e567ac;p=u-boot net: tsec: Fix memory leak in error path tsec_initialize allocates a private driver structure using malloc. Should the memory allocation of this private structure fail, the function execution is aborted with a return 0, but the previously allocated device structure is never freed, hence leaked. Free the device structure in the error case. Signed-off-by: Mario Six Acked-by: Joe Hershberger --- diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c index 071595218e..44140fb037 100644 --- a/drivers/net/tsec.c +++ b/drivers/net/tsec.c @@ -701,8 +701,10 @@ static int tsec_initialize(bd_t *bis, struct tsec_info_struct *tsec_info) priv = (struct tsec_private *)malloc(sizeof(*priv)); - if (!priv) + if (!priv) { + free(dev); return 0; + } priv->regs = tsec_info->regs; priv->phyregs_sgmii = tsec_info->miiregs_sgmii;