>> For s390x, it seems to be fairly easy to avoid CONFIG_ARCH_KEEP_MEMBLOCK. >> arm64 could rework most code (esp., pfn_valid(), valid_phys_addr_range() >> and kexec_file_load()) to not require memblocks for hotplugged >> memory. E.g., as hotplugged memory has no holes and can be identified >> using !early_section(), arm64's variant of pfn_valid() could be reworked >> fairly easily to not require memblocks for hotadded memory. powerpc might >> be more involed. > > I haven't checked these architectures but is the information really > useful for this patch? It might of interest for Arm64 people (cced below). I sent out s390x patches to change that. I can drop that part. > >> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> >> Cc: Michal Hocko <mhocko@xxxxxxxxxx> >> Cc: Baoquan He <bhe@xxxxxxxxxx> >> Cc: Oscar Salvador <osalvador@xxxxxxx> >> Cc: Pankaj Gupta <pankaj.gupta.linux@xxxxxxxxx> >> Cc: Mike Rapoport <rppt@xxxxxxxxxxxxx> >> Cc: Anshuman Khandual <anshuman.khandual@xxxxxxx> >> Signed-off-by: David Hildenbrand <david@xxxxxxxxxx> > > Acked-by: Michal Hocko <mhocko@xxxxxxxx> > > with a minor nit > >> - /* >> - * Add new range to memblock so that when hotadd_new_pgdat() is called >> - * to allocate new pgdat, get_pfn_range_for_nid() will be able to find >> - * this new range and calculate total pages correctly. The range will >> - * be removed at hot-remove time. >> - */ >> +#ifdef CONFIG_ARCH_KEEP_MEMBLOCK > > if (IS_ENABLED(CONFIG_ARCH_KEEP_MEMBLOCK) > > would be slightly nicer. This should work for all the ifedefs in this > patch. Yeah, will change if it compiles. -- Thanks, David / dhildenb