[ldv-project] [PATCH] scripts/dtc: Fix memory leak in check_msg()

Stanislav Goriainov goriainov at ispras.ru
Mon Jul 25 18:59:55 MSK 2022


When the function check_msg() is called, memory for str is allocated
via xasprintf() and xasprintf_append() (as well as for file_str),
but is not freed anywhere later (although file_str is).

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: c2e7075ca830 ("scripts/dtc: Update to upstream version v1.4.7-57-gf267e674d145")
Signed-off-by: Stanislav Goriainov <goriainov at ispras.ru>
---
 scripts/dtc/checks.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/scripts/dtc/checks.c b/scripts/dtc/checks.c
index 781ba1129a8e..92ffc8de6a52 100644
--- a/scripts/dtc/checks.c
+++ b/scripts/dtc/checks.c
@@ -114,6 +114,7 @@ static inline void  PRINTF(5, 6) check_msg(struct check *c, struct dt_info *dti,
 	}
 
 	fputs(str, stderr);
+	free(str);
 }
 
 #define FAIL(c, dti, node, ...)						\
-- 2.34.1




More information about the ldv-project mailing list