On Thu, Jun 20, 2019 at 3:31 AM David Hildenbrand <david@xxxxxxxxxx> wrote: > > On 19.06.19 07:52, Dan Williams wrote: > > Prepare the memory hot-{add,remove} paths for handling sub-section > > ranges by plumbing the starting page frame and number of pages being > > handled through arch_{add,remove}_memory() to > > sparse_{add,remove}_one_section(). > > > > This is simply plumbing, small cleanups, and some identifier renames. No > > intended functional changes. > > > > Cc: Michal Hocko <mhocko@xxxxxxxx> > > Cc: Vlastimil Babka <vbabka@xxxxxxx> > > Cc: Logan Gunthorpe <logang@xxxxxxxxxxxx> > > Cc: Oscar Salvador <osalvador@xxxxxxx> > > Reviewed-by: Pavel Tatashin <pasha.tatashin@xxxxxxxxxx> > > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx> > > --- > > include/linux/memory_hotplug.h | 5 +- > > mm/memory_hotplug.c | 114 +++++++++++++++++++++++++--------------- > > mm/sparse.c | 16 ++---- > > 3 files changed, 81 insertions(+), 54 deletions(-) [..] > > @@ -528,31 +556,31 @@ static void __remove_section(struct zone *zone, struct mem_section *ms, > > * sure that pages are marked reserved and zones are adjust properly by > > * calling offline_pages(). > > */ > > -void __remove_pages(struct zone *zone, unsigned long phys_start_pfn, > > +void __remove_pages(struct zone *zone, unsigned long pfn, > > unsigned long nr_pages, struct vmem_altmap *altmap) > > { > > - unsigned long i; > > unsigned long map_offset = 0; > > - int sections_to_remove; > > + int i, start_sec, end_sec; > > As mentioned in v9, use "unsigned long" for start_sec and end_sec please. Honestly I saw you and Andrew going back and forth about "unsigned long i" that I thought this would be handled by a follow on patchset when that debate settled.