45 lines
1.7 KiB
Diff
45 lines
1.7 KiB
Diff
From 8f64c65c577701d4f11d4aa6b487126d52a471c5 Mon Sep 17 00:00:00 2001
|
|
From: Pasha Tatashin <pasha.tatashin@soleen.com>
|
|
Date: Fri, 8 Aug 2025 20:18:03 +0000
|
|
Subject: kho: mm: don't allow deferred struct page with KHO
|
|
|
|
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.
|
|
|
|
Link: https://lkml.kernel.org/r/20250808201804.772010-3-pasha.tatashin@soleen.com
|
|
Fixes: 4e1d010e3bda ("kexec: add config option for KHO")
|
|
Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
|
|
Acked-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
|
|
Acked-by: Pratyush Yadav <pratyush@kernel.org>
|
|
Cc: Alexander Graf <graf@amazon.com>
|
|
Cc: Arnd Bergmann <arnd@arndb.de>
|
|
Cc: Baoquan He <bhe@redhat.com>
|
|
Cc: Changyuan Lyu <changyuanl@google.com>
|
|
Cc: Coiby Xu <coxu@redhat.com>
|
|
Cc: Dave Vasilevsky <dave@vasilevsky.ca>
|
|
Cc: Eric Biggers <ebiggers@google.com>
|
|
Cc: Kees Cook <kees@kernel.org>
|
|
Cc: <stable@vger.kernel.org>
|
|
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
|
---
|
|
kernel/Kconfig.kexec | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
--- 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
|