[PATCH] kexec_core: Remove superfluous page offset handling in segment loading

Andrew Morton akpm at linux-foundation.org
Mon Sep 22 20:07:32 PDT 2025


On Fri, 12 Sep 2025 14:11:04 +0800 Baoquan He <bhe at redhat.com> wrote:

> > int sanity_check_segment_list(struct kimage *image)
> > {
> >     // ...
> >     for (i = 0; i < nr_segments; i++) {
> >         unsigned long mstart, mend;
> > 
> >         mstart = image->segment[i].mem;
> >         mend   = mstart + image->segment[i].memsz;
> >         if (mstart > mend)
> >             return -EADDRNOTAVAIL;
> >         if ((mstart & ~PAGE_MASK) || (mend & ~PAGE_MASK))
> >             return -EADDRNOTAVAIL;
> >         if (mend >= KEXEC_DESTINATION_MEMORY_LIMIT)
> >             return -EADDRNOTAVAIL;
> >     }
> >     // ...
> > }
> > 
> > > That better be explained in log.
> > Does it warrant a second revision to change the log?
> 
> I would appreciate it if we can tell the reason a little bit in patch
> log. Because we have codes as below where people assign a non PAGE_SIZE
> to kbuf.buf_align. With a general conclusion, people need explore code
> to find out. At least that's what I do when I check this patch.
> 
> arch/x86/kernel/kexec-bzimage64.c:
> static void *bzImage64_load(struct kimage *image, char *kernel,
>                             unsigned long kernel_len, char *initrd,
>                             unsigned long initrd_len, char *cmdline,
>                             unsigned long cmdline_len)
> {

I'll drop this patch.  Justinien, please send along an updated version
for the next -rc cycle, thanks.




More information about the kexec mailing list