ARM: OMAP2+: PRCM: create SoC-specific chip restart functions
[firefly-linux-kernel-4.4.55.git] / mm / memory_hotplug.c
index 7d0797475a470a9ef76a0de07f8cdb3379ddf69f..56b758ae57d2eeb2230bbcaf3f8e8d4538a15a9d 100644 (file)
@@ -369,11 +369,11 @@ int __remove_pages(struct zone *zone, unsigned long phys_start_pfn,
        BUG_ON(phys_start_pfn & ~PAGE_SECTION_MASK);
        BUG_ON(nr_pages % PAGES_PER_SECTION);
 
+       release_mem_region(phys_start_pfn << PAGE_SHIFT, nr_pages * PAGE_SIZE);
+
        sections_to_remove = nr_pages / PAGES_PER_SECTION;
        for (i = 0; i < sections_to_remove; i++) {
                unsigned long pfn = phys_start_pfn + i*PAGES_PER_SECTION;
-               release_mem_region(pfn << PAGE_SHIFT,
-                                  PAGES_PER_SECTION << PAGE_SHIFT);
                ret = __remove_section(zone, __pfn_to_section(pfn));
                if (ret)
                        break;