Re: [PATCH v1 3/5] mm/memory_hotplug: check if sections are already online/offline

From: Oscar Salvador
Date: Thu Aug 16 2018 - 06:47:43 EST


On Thu, Aug 16, 2018 at 12:06:26PM +0200, David Hildenbrand wrote:

> +
> +/* check if all mem sections are offline */
> +bool mem_sections_offline(unsigned long pfn, unsigned long end_pfn)
> +{
> + for (; pfn < end_pfn; pfn += PAGES_PER_SECTION) {
> + unsigned long section_nr = pfn_to_section_nr(pfn);
> +
> + if (WARN_ON(!valid_section_nr(section_nr)))
> + continue;
> + if (online_section_nr(section_nr))
> + return false;
> + }
> + return true;
> +}

AFAICS pages_correctly_probed will catch this first.
pages_correctly_probed checks for the section to be:

- present
- valid
- !online

Maybe it makes sense to rename it, and write another pages_correctly_probed routine
for the offline case.

So all checks would stay in memory_block_action level, and we would not need
the mem_sections_offline/online stuff.

Thanks
--
Oscar Salvador
SUSE L3