[U-Boot] [PATCH v2 23/78] net: tsec: Fix memory leak in error path
Mario Six
mario.six at gdsys.cc
Wed Dec 13 07:18:51 UTC 2017
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 <mario.six at gdsys.cc>
---
v1 -> v2:
None
---
drivers/net/tsec.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
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;
--
2.13.6
More information about the U-Boot
mailing list