]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - mm/nobootmem.c
Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdim...
[karo-tx-linux.git] / mm / nobootmem.c
index 5258386fa1beb44842dbbf9a7b85de07d54d83e1..e57cf24babd671c0757eaf320673777774a0658c 100644 (file)
@@ -86,7 +86,7 @@ void __init free_bootmem_late(unsigned long addr, unsigned long size)
        end = PFN_DOWN(addr + size);
 
        for (; cursor < end; cursor++) {
-               __free_pages_bootmem(pfn_to_page(cursor), 0);
+               __free_pages_bootmem(pfn_to_page(cursor), cursor, 0);
                totalram_pages++;
        }
 }
@@ -101,7 +101,7 @@ static void __init __free_pages_memory(unsigned long start, unsigned long end)
                while (start + (1UL << order) > end)
                        order--;
 
-               __free_pages_bootmem(pfn_to_page(start), order);
+               __free_pages_bootmem(pfn_to_page(start), start, order);
 
                start += (1UL << order);
        }
@@ -130,6 +130,9 @@ static unsigned long __init free_low_memory_core_early(void)
 
        memblock_clear_hotplug(0, -1);
 
+       for_each_reserved_mem_region(i, &start, &end)
+               reserve_bootmem_region(start, end);
+
        for_each_free_mem_range(i, NUMA_NO_NODE, MEMBLOCK_NONE, &start, &end,
                                NULL)
                count += __free_memory_core(start, end);