From: Baoquan He <bhe@redhat.com>
To: Qiang Ma <maqianga@uniontech.com>
Cc: akpm@linux-foundation.org, kexec@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] kexec: Fix uninitialized struct kimage *image pointer
Date: Fri, 12 Dec 2025 18:53:15 +0800 [thread overview]
Message-ID: <aTv0G4BYQv9J8ytY@MiWiFi-R3L-srv> (raw)
In-Reply-To: <20251212071656.834079-1-maqianga@uniontech.com>
On 12/12/25 at 03:16pm, Qiang Ma wrote:
> The image is initialized to NULL. Then, after calling kimage_alloc_init,
> we can directly goto 'out' because at this time, the kimage_free will
> determine whether image is a NULL pointer.
Rechecked the code flow, in kimage_alloc_init(), if anything wrong, the
allocated memory are all freed via out_free_control_pages and
out_free_image accordingly, any place missed? If no, I think the current
code is correctly handled.
>
> Signed-off-by: Qiang Ma <maqianga@uniontech.com>
> ---
> kernel/kexec.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
Acked-by: Baoquan He <bhe@redhat.com>
>
> diff --git a/kernel/kexec.c b/kernel/kexec.c
> index 28008e3d462e..9bb1f2b6b268 100644
> --- a/kernel/kexec.c
> +++ b/kernel/kexec.c
> @@ -95,6 +95,8 @@ static int do_kexec_load(unsigned long entry, unsigned long nr_segments,
> unsigned long i;
> int ret;
>
> + image = NULL;
> +
> /*
> * Because we write directly to the reserved memory region when loading
> * crash kernels we need a serialization here to prevent multiple crash
> @@ -129,7 +131,7 @@ static int do_kexec_load(unsigned long entry, unsigned long nr_segments,
>
> ret = kimage_alloc_init(&image, entry, nr_segments, segments, flags);
> if (ret)
> - goto out_unlock;
> + goto out;
>
> if (flags & KEXEC_PRESERVE_CONTEXT)
> image->preserve_context = 1;
> --
> 2.20.1
>
next prev parent reply other threads:[~2025-12-12 10:53 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-12 7:16 [PATCH] kexec: Fix uninitialized struct kimage *image pointer Qiang Ma
2025-12-12 10:53 ` Baoquan He [this message]
2025-12-14 10:23 ` Baoquan He
2025-12-14 11:35 ` Qiang Ma
2025-12-15 1:18 ` Baoquan He
2025-12-15 4:41 ` Qiang Ma
2025-12-15 8:50 ` Baoquan He
2025-12-15 9:18 ` Qiang Ma
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aTv0G4BYQv9J8ytY@MiWiFi-R3L-srv \
--to=bhe@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maqianga@uniontech.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.