encoder->secinfo is allocated in btf_encoder__new and is never freed. Fix that. Link: https://lore.kernel.org/dwarves/YiiVvWJxHUyK75b4FqlvAOnHvX9WLzCsRLG-236zf_cPZy1jmgbUq2xM4ChxRob1kaTVUdtVljtcpL2Cs3v1wXPGcP8dPeASBiYVGH3jEaQ=@pm.me/ Signed-off-by: Ihor Solodrai <ihor.solodrai@xxxxx> --- btf_encoder.c | 1 + 1 file changed, 1 insertion(+) diff --git a/btf_encoder.c b/btf_encoder.c index 2e51afd..6720065 100644 --- a/btf_encoder.c +++ b/btf_encoder.c @@ -2453,6 +2453,7 @@ void btf_encoder__delete(struct btf_encoder *encoder) btf_encoders__delete(encoder); for (shndx = 0; shndx < encoder->seccnt; shndx++) __gobuffer__delete(&encoder->secinfo[shndx].secinfo); + free(encoder->secinfo); zfree(&encoder->filename); zfree(&encoder->source_filename); btf__free(encoder->btf); -- 2.47.1