[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CA+CK2bBfJDD5SPJqwCaGbaGZe9FncONMsck0QkOb8WwmDSh_Yg@mail.gmail.com>
Date: Wed, 11 Feb 2026 14:40:01 -0500
From: Pasha Tatashin <pasha.tatashin@...een.com>
To: Michal Clapinski <mclapinski@...gle.com>
Cc: Evangelos Petrongonas <epetron@...zon.de>, Mike Rapoport <rppt@...nel.org>,
Pratyush Yadav <pratyush@...nel.org>, Alexander Graf <graf@...zon.com>, kexec@...ts.infradead.org,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH v3] kho: add support for deferred struct page init
On Wed, Feb 11, 2026 at 12:40 PM Michal Clapinski <mclapinski@...gle.com> wrote:
>
> From: Evangelos Petrongonas <epetron@...zon.de>
>
> When CONFIG_DEFERRED_STRUCT_PAGE_INIT is enabled, struct page
> initialization is deferred to parallel kthreads that run later
> in the boot process.
>
> During KHO restoration, deserialize_bitmap() writes metadata for
> each preserved memory region. However, if the struct page has not been
> initialized, this write targets uninitialized memory, potentially
> leading to errors like:
> BUG: unable to handle page fault for address: ...
>
> Fix this by introducing kho_get_preserved_page(), which ensures
> all struct pages in a preserved region are initialized by calling
> init_deferred_page() which is a no-op when deferred init is disabled
> or when the struct page is already initialized.
>
Co-developed-by: Michal Clapinski <mclapinski@...gle.com>
> Signed-off-by: Evangelos Petrongonas <epetron@...zon.de>
> Signed-off-by: Michal Clapinski <mclapinski@...gle.com>
> Reviewed-by: Pratyush Yadav (Google) <pratyush@...nel.org>
> ---
> v3:
> - changed commit msg
> - don't invoke early_pfn_to_nid if CONFIG_DEFERRED_STRUCT_PAGE_INIT=n
Reviewed-by: Pasha Tatashin <pasha.tatashin@...een.com>
Thanks,
Pasha
Powered by blists - more mailing lists