Re: [PATCH v5 05/17] arm64: kexec_file: Fix elf_headers memory leak in retry loop
| Newsgroups | org.kernel.vger.linux-fsdevel,dev.linux.lists.driver-core,dev.linux.lists.loongarch,org.kernel.vger.linux-kernel,org.kvack.linux-mm,org.ozlabs.lists.linuxppc-dev |
|---|---|
| Message-ID | <[email protected]> |
> If load_other_segments() fails after image->elf_headers is assigned, > the memory lifecycle is safely managed by the global kimage object > and will be freed in arch_kimage_file_post_load_cleanup(). > > However, during a retry loop in image_load(), a subsequent iteration > will allocate a new buffer and overwrite image->elf_headers. This > permanently leaks the stale memory from the previous iteration before > the global cleanup can track it. > > Fix this by explicitly freeing the stale `image->elf_headers` buffer > before assigning the newly allocated headers. > > Cc: Catalin Marinas <[email protected]> > Cc: Will Deacon <[email protected]> > Cc: Thomas Huth <[email protected]> > Cc: Breno Leitao <[email protected]> > Cc: Andrew Morton <[email protected]> > Cc: Yeoreum Yun <[email protected]> > Cc: Baoquan He <[email protected]> > Cc: [email protected] > Fixes: 108aa503657e ("arm64: kexec_file: try more regions if loading segments fails") > Signed-off-by: Jinjie Ruan <[email protected]> Sashiko has reviewed this patch and found no issues. It looks great! -- Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=5