On 8/16/18 7:00 AM, David Hildenbrand wrote: > On 16.08.2018 12:47, Oscar Salvador wrote: >> 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 > > Right, I missed that function. > >> >> 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. I am OK with that, but will wait for a patch to review. Pavel