On Fri 12-02-21 10:56:19, David Hildenbrand wrote: > On 12.02.21 10:55, David Hildenbrand wrote: > > On 08.02.21 12:08, Mike Rapoport wrote: [...] > > > @@ -6519,8 +6581,19 @@ void __init get_pfn_range_for_nid(unsigned int nid, > > > *end_pfn = max(*end_pfn, this_end_pfn); > > > } > > > - if (*start_pfn == -1UL) > > > + if (*start_pfn == -1UL) { > > > *start_pfn = 0; > > > + return; > > > + } > > > + > > > +#ifdef CONFIG_SPARSEMEM > > > + /* > > > + * Sections in the memory map may not match actual populated > > > + * memory, extend the node span to cover the entire section. > > > + */ > > > + *start_pfn = round_down(*start_pfn, PAGES_PER_SECTION); > > > + *end_pfn = round_up(*end_pfn, PAGES_PER_SECTION); > > > > Does that mean that we might create overlapping zones when one node > > s/overlapping zones/overlapping nodes/ I didn't get to review the patch yet. Just wanted to note that we can interleave nodes/zone. Or what kind of concern do you have in mind? -- Michal Hocko SUSE Labs