[GIT PULL] liveupdate: updates for 7.4-rc1
Mike Rapoport
rppt at kernel.org
Sat Oct 24 04:22:27 PDT 2026
Hi Linus,
The following changes since commit cee9395acd8043be0644b25c34bfa86623f2b935:
Linux 7.3-rc1 (2026-08-30 13:34:40 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/liveupdate/linux.git liveupdate-v7.4-rc1
for you to fetch changes up to 9a6a70aefe77f6fb9ff2b3037dcf87f6dff65c8c:
kho: do not reserve empty per-node bootmem areas (2026-10-15 11:37:32 +0300)
There is a conflict in mm/memblock.c and mm/mm_init.c and here is how I would
resolve it:
diff --cc mm/memblock.c
index e6fdf95a0534d,f5aaa38cfa313..0000000000000
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@@ -2885,8 -2885,7 +2885,8 @@@ static const char * const flagname[] =
[ilog2(MEMBLOCK_DRIVER_MANAGED)] = "DRV_MNG",
[ilog2(MEMBLOCK_RSRV_NOINIT)] = "RSV_NIT",
[ilog2(MEMBLOCK_RSRV_KERN)] = "RSV_KERN",
- [ilog2(MEMBLOCK_KHO_SCRATCH)] = "KHO_SCRATCH",
+ [ilog2(MEMBLOCK_KHO_NOPRSRV)] = "KHO_NOPRSRV",
+ [ilog2(MEMBLOCK_RSRV_HUGETLB)] = "RSV_HUGETLB",
};
static int memblock_debug_show(struct seq_file *m, void *private)
diff --cc mm/mm_init.c
index 2e55be1457385,24a53d5f0893d..0000000000000
--- a/mm/mm_init.c
+++ b/mm/mm_init.c
@@@ -684,10 -684,10 +684,10 @@@ static __meminit void pageblock_migrate
const unsigned long end = pfn + nr_pages;
for (pfn = pageblock_align(pfn); pfn < end; pfn += pageblock_nr_pages) {
- enum migratetype mt = kho_scratch_migratetype(pfn, migratetype);
+ enum migratetype mt = kho_bootmem_migratetype(pfn, migratetype);
- init_pageblock_migratetype(pfn_to_page(pfn), mt, false);
- if (!atomic && IS_ALIGNED(pfn, PAGES_PER_SECTION))
+ init_pageblock_migratetype(pfn_to_page(pfn), mt, isolate);
+ if (!atomic && IS_ALIGNED(pfn, PFN_DOWN(SZ_1G)))
cond_resched();
}
}
@@@ -769,12 -757,17 +769,12 @@@ static void __meminit __init_deferred_p
if (early_page_initialised(pfn, nid))
return;
- for (zid = 0; zid < MAX_NR_ZONES; zid++) {
- struct zone *zone = &pgdat->node_zones[zid];
-
- if (zone_spans_pfn(zone, pfn))
- break;
- }
- __init_single_page(pfn_to_page(pfn), pfn, zid, nid);
-
+ zone = pfn_to_zone(pfn, nid);
+ __init_single_page(pfn_to_page(pfn), pfn,
+ zone ? zone_idx(zone) : MAX_NR_ZONES, nid);
if (pageblock_aligned(pfn)) {
enum migratetype mt =
- kho_scratch_migratetype(pfn, MIGRATE_MOVABLE);
+ kho_bootmem_migratetype(pfn, MIGRATE_MOVABLE);
init_pageblock_migratetype(pfn_to_page(pfn), mt, false);
}
}
----------------------------------------------------------------
liveupdate: updates for 7.4-rc1
* Several small fixes to KHO and LiveUpdate selftest
* A series that renames "KHO scratch" to "KHO bootmem" because this memory is
way more important in kexec'ed kernels rather than in the original cold
boot kernel and the new name reflects it.
----------------------------------------------------------------
David Matlack (1):
selftests/liveupdate: Prefer KVM and HVF over TCG in vmtest.sh
Kamalesh Babulal (1):
kho: docs: fix scratch_phys debugfs cross-reference
Maxi Saparov (1):
kho: do not reserve scratch memory in the kdump kernel
Mike Rapoport (Microsoft) (1):
Merge patch series "kho: rename "scratch" to "bootmem""
Pratyush Yadav (Google) (5):
memblock: get rid of CONFIG_MEMBLOCK_KHO_SCRATCH
memblock: rename KHO_SCRATCH to KHO_NOPRSRV
kho: rename KHO scratch to KHO bootmem
kho: rename kho_scratch= commandline parameter to kho_bootmem=
kho: do not reserve empty per-node bootmem areas
Documentation/admin-guide/kernel-parameters.txt | 15 +-
Documentation/admin-guide/mm/kho.rst | 18 +-
Documentation/core-api/kho/index.rst | 38 +--
arch/x86/boot/compressed/kaslr.c | 12 +-
arch/x86/include/uapi/asm/setup_data.h | 4 +-
arch/x86/kernel/e820.c | 11 +-
arch/x86/kernel/kexec-bzimage64.c | 6 +-
arch/x86/kernel/setup.c | 2 +-
arch/x86/realmode/init.c | 2 +-
drivers/firmware/efi/efi-init.c | 6 +-
drivers/of/fdt.c | 8 +-
drivers/of/kexec.c | 16 +-
include/asm-generic/kexec_handover.h | 2 +-
include/linux/kexec.h | 2 +-
include/linux/kexec_handover.h | 16 +-
include/linux/memblock.h | 30 +-
kernel/kexec_file.c | 4 +-
kernel/liveupdate/Kconfig | 1 -
kernel/liveupdate/kexec_handover.c | 358 +++++++++++++-----------
kernel/liveupdate/kexec_handover_debugfs.c | 24 +-
kernel/liveupdate/kexec_handover_internal.h | 4 +-
mm/Kconfig | 4 -
mm/memblock.c | 56 ++--
mm/memfd_luo.c | 3 +-
mm/mm_init.c | 6 +-
tools/testing/memblock/internal.h | 2 +-
tools/testing/selftests/liveupdate/vmtest.sh | 2 +-
27 files changed, 332 insertions(+), 320 deletions(-)
More information about the kexec
mailing list