Re: [PATCH v3 02/30] kho: mm: Don't allow deferred struct page with KHO
From: Pasha Tatashin
Date: Fri Aug 08 2025 - 10:02:20 EST
On Fri, Aug 8, 2025 at 11:47 AM Pratyush Yadav <pratyush@xxxxxxxxxx> wrote:
>
> On Thu, Aug 07 2025, Pasha Tatashin wrote:
>
> > KHO uses struct pages for the preserved memory early in boot, however,
> > with deferred struct page initialization, only a small portion of
> > memory has properly initialized struct pages.
> >
> > This problem was detected where vmemmap is poisoned, and illegal flag
> > combinations are detected.
> >
> > Don't allow them to be enabled together, and later we will have to
> > teach KHO to work properly with deferred struct page init kernel
> > feature.
> >
> > Fixes: 990a950fe8fd ("kexec: add config option for KHO")
> >
> > Signed-off-by: Pasha Tatashin <pasha.tatashin@xxxxxxxxxx>
>
> Nit: Drop the blank line before fixes. git interpret-trailers doesn't
Makes sense.
> seem to recognize the fixes otherwise, so this may break some tooling.
> Try it yourself:
>
> $ git interpret-trailers --parse commit_message.txt
>
> Other than this,
>
> Acked-by: Pratyush Yadav <pratyush@xxxxxxxxxx>
Thank you for the review.
Pasha
>
> > Acked-by: Mike Rapoport (Microsoft) <rppt@xxxxxxxxxx>
> > ---
> > kernel/Kconfig.kexec | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/kernel/Kconfig.kexec b/kernel/Kconfig.kexec
> > index 2ee603a98813..1224dd937df0 100644
> > --- a/kernel/Kconfig.kexec
> > +++ b/kernel/Kconfig.kexec
> > @@ -97,6 +97,7 @@ config KEXEC_JUMP
> > config KEXEC_HANDOVER
> > bool "kexec handover"
> > depends on ARCH_SUPPORTS_KEXEC_HANDOVER && ARCH_SUPPORTS_KEXEC_FILE
> > + depends on !DEFERRED_STRUCT_PAGE_INIT
> > select MEMBLOCK_KHO_SCRATCH
> > select KEXEC_FILE
> > select DEBUG_FS
>
> --
> Regards,
> Pratyush Yadav