scripts/kallsyms: fix definitely-lost memory leak
build_initial_tok_table() overwrites unused sym_entry to shrink the table size. Before the entry is overwritten, table[i].sym must be freed since it is malloc'ed data. This fixes the 'definitely lost' report from valgrind. I ran valgrind against x86_64_defconfig of v5.4-rc8 kernel, and here is the summary: [Before the fix] LEAK SUMMARY: definitely lost: 53,184 bytes in 2,874 blocks [After the fix] LEAK SUMMARY: definitely lost: 0 bytes in 0 blocks Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
parent
1ef26b7c94
commit
21915eca08
|
@ -487,6 +487,8 @@ static void build_initial_tok_table(void)
|
|||
table[pos] = table[i];
|
||||
learn_symbol(table[pos].sym, table[pos].len);
|
||||
pos++;
|
||||
} else {
|
||||
free(table[i].sym);
|
||||
}
|
||||
}
|
||||
table_cnt = pos;
|
||||
|
|
Loading…
Reference in New Issue