* linux-next: manual merge of the mm-nonmm-unstable tree with the risc-v-fixes tree
@ 2026-07-14 11:47 Mark Brown
2026-07-14 17:13 ` Andrew Morton
0 siblings, 1 reply; 2+ messages in thread
From: Mark Brown @ 2026-07-14 11:47 UTC (permalink / raw)
To: Andrew Morton
Cc: Linux Kernel Mailing List, Linux Next Mailing List, Paul Walmsley,
Vivian Wang
[-- Attachment #1: Type: text/plain, Size: 3604 bytes --]
Hi all,
Today's linux-next merge of the mm-nonmm-unstable tree got a conflict in:
mm/sparse-vmemmap.c
between commit:
4edd70ee6a7d0 ("mm/sparse-vmemmap: flush_cache_vmap() after hotplugging vmemmap")
from the risc-v-fixes tree and commit:
7605044cea4d2 ("riscv: mm: avoid spurious fault after hotplugging vmemmap")
from the mm-nonmm-unstable tree. These appear to be two versions of the
same fix, it looks like one needs to be chosen - I did the conflict
resolution picking based on taste but left the non-conflicting bits of
both changes.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
diff --combined mm/sparse-vmemmap.c
index 5a2469fb1838c,290cafcfd7230..0000000000000
--- a/mm/sparse-vmemmap.c
+++ b/mm/sparse-vmemmap.c
@@@ -41,8 -41,6 +41,8 @@@
#define VMEMMAP_POPULATE_PAGEREF 0x0001
#include "internal.h"
+#include "mm_init.h"
+#include "sparse.h"
/*
* Allocate a block of memory to be used to back the virtual memory map
@@@ -344,8 -342,8 +344,8 @@@ static __meminit struct page *vmemmap_g
*
* Any initialization done here will be overwritten by memmap_init().
*
- * hugetlb_vmemmap_init() will take care of initialization after
- * memmap_init().
+ * hugetlb_bootmem_struct_page_init() will take care of initialization
+ * after memmap_init().
*/
p = vmemmap_alloc_block_zero(PAGE_SIZE, node);
@@@ -546,6 -544,12 +546,12 @@@ static int __meminit vmemmap_populate_c
#endif
+ #ifndef vmemmap_populate_finalize
+ static void __meminit vmemmap_populate_finalize(void)
+ {
+ }
+ #endif
+
struct page * __meminit __populate_section_memmap(unsigned long pfn,
unsigned long nr_pages, int nid, struct vmem_altmap *altmap,
struct dev_pagemap *pgmap)
@@@ -566,7 -570,7 +572,7 @@@
if (r < 0)
return NULL;
- flush_cache_vmap(start, end);
+ vmemmap_populate_finalize();
return pfn_to_page(pfn);
}
@@@ -583,6 -587,17 +589,6 @@@ void __init sparse_vmemmap_init_nid_ear
{
hugetlb_vmemmap_init_early(nid);
}
-
-/*
- * This is called just before the initialization of page structures
- * through memmap_init. Zones are now initialized, so any work that
- * needs to be done that needs zone information can be done from
- * here.
- */
-void __init sparse_vmemmap_init_nid_late(int nid)
-{
- hugetlb_vmemmap_init_late(nid);
-}
#endif
static void subsection_mask_set(unsigned long *map, unsigned long pfn,
@@@ -594,7 -609,7 +600,7 @@@
bitmap_set(map, idx, end - idx + 1);
}
-void __init sparse_init_subsection_map(unsigned long pfn, unsigned long nr_pages)
+static void __init sparse_init_subsection_map_range(unsigned long pfn, unsigned long nr_pages)
{
int end_sec_nr = pfn_to_section_nr(pfn + nr_pages - 1);
unsigned long nr, start_sec_nr = pfn_to_section_nr(pfn);
@@@ -617,15 -632,6 +623,15 @@@
}
}
+void __init sparse_init_subsection_map(void)
+{
+ int i, nid;
+ unsigned long start, end;
+
+ for_each_mem_pfn_range(i, MAX_NUMNODES, &start, &end, &nid)
+ sparse_init_subsection_map_range(start, end - start);
+}
+
#ifdef CONFIG_MEMORY_HOTPLUG
/* Mark all memory sections within the pfn range as online */
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: linux-next: manual merge of the mm-nonmm-unstable tree with the risc-v-fixes tree
2026-07-14 11:47 linux-next: manual merge of the mm-nonmm-unstable tree with the risc-v-fixes tree Mark Brown
@ 2026-07-14 17:13 ` Andrew Morton
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Morton @ 2026-07-14 17:13 UTC (permalink / raw)
To: Mark Brown
Cc: Linux Kernel Mailing List, Linux Next Mailing List, Paul Walmsley,
Vivian Wang
On Tue, 14 Jul 2026 12:47:57 +0100 Mark Brown <broonie@kernel.org> wrote:
> Today's linux-next merge of the mm-nonmm-unstable tree got a conflict in:
>
> mm/sparse-vmemmap.c
>
> between commit:
>
> 4edd70ee6a7d0 ("mm/sparse-vmemmap: flush_cache_vmap() after hotplugging vmemmap")
>
> from the risc-v-fixes tree and commit:
>
> 7605044cea4d2 ("riscv: mm: avoid spurious fault after hotplugging vmemmap")
>
> from the mm-nonmm-unstable tree. These appear to be two versions of the
> same fix, it looks like one needs to be chosen - I did the conflict
> resolution picking based on taste but left the non-conflicting bits of
> both changes.
OK, thanks. I'll remove "riscv: mm: avoid spurious fault after
hotplugging vmemmap" from mm.git.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-07-14 17:13 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-14 11:47 linux-next: manual merge of the mm-nonmm-unstable tree with the risc-v-fixes tree Mark Brown
2026-07-14 17:13 ` Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox