On 02/04/26 12:56, Jinjie Ruan wrote:
In get_crash_memory_ranges(), if crash_exclude_mem_range() failed
after realloc_mem_ranges() has successfully allocated the cmem
memory, it just returns an error but leaves cmem pointing to
the allocated memory, nor is it freed in the caller
update_crash_elfcorehdr(), which cause a memory leak, goto out
to free the cmem.

Cc: Sourabh Jain <[email protected]>
Cc: Hari Bathini <[email protected]>
Cc: Michael Ellerman <[email protected]>
Fixes: 849599b702ef ("powerpc/crash: add crash memory hotplug support")
Signed-off-by: Jinjie Ruan <[email protected]>
---
  arch/powerpc/kexec/crash.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/kexec/crash.c b/arch/powerpc/kexec/crash.c
index a325c1c02f96..1d12cef8e1e0 100644
--- a/arch/powerpc/kexec/crash.c
+++ b/arch/powerpc/kexec/crash.c
@@ -440,7 +440,7 @@ static void update_crash_elfcorehdr(struct kimage *image, 
struct memory_notify *
        ret = get_crash_memory_ranges(&cmem);
        if (ret) {
                pr_err("Failed to get crash mem range\n");
-               return;
+               goto out;
        }
/*
Thanks for fixing this Jinjie.

Feel free to add:
Reviewed-by: Sourabh Jain <[email protected]>

- Sourabh Jain

Reply via email to