[PATCH 2/3] soc: kvx: Fix memory leaks

Jules Maselbas jmaselbas at kalray.eu
Tue Jul 11 02:11:22 PDT 2023


When calling nvmem_cell_get_and_read the resulting memory must be freed.

Signed-off-by: Jules Maselbas <jmaselbas at kalray.eu>
---
 drivers/soc/kvx/kvx_socinfo.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/soc/kvx/kvx_socinfo.c b/drivers/soc/kvx/kvx_socinfo.c
index fc7ba1c1b9..496e817755 100644
--- a/drivers/soc/kvx/kvx_socinfo.c
+++ b/drivers/soc/kvx/kvx_socinfo.c
@@ -102,6 +102,7 @@ static int kvx_read_mppa_id(struct device_node *socinfo)
 	ews_val = (ews_val >> 32) | (ews_val << 32);
 	wafer_id = (ews_val >> EWS_WAFER_ID_SHIFT) & EWS_WAFER_ID_MASK;
 	base38_decode(lot_id, ews_val & EWS_LOT_ID_MASK, LOT_ID_STR_LEN);
+	free(cell_val64);
 
 	cell_val32 = (u32 *) nvmem_cell_get_and_read(socinfo, "ft_fuse", 4);
 	if (IS_ERR(cell_val32)) {
@@ -112,6 +113,7 @@ static int kvx_read_mppa_id(struct device_node *socinfo)
 	ft_val = *cell_val32;
 	device_id = (ft_val >> FT_DEVICE_ID_SHIFT) & FT_DEVICE_ID_MASK;
 	base38_decode(&com_ap, (ft_val >> FT_COM_AP_SHIFT) & FT_COM_AP_MASK, 1);
+	free(cell_val32);
 
 	kvx_mppa_id = basprintf("%sA-%d%c-%03d", lot_id, wafer_id, com_ap,
 			       device_id);
-- 
2.17.1








More information about the barebox mailing list