]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - mm/sparse-vmemmap.c
memory hotplug fix: fix section mismatch in vmammap_allock_block()
[linux-2.6-omap-h63xx.git] / mm / sparse-vmemmap.c
index 22620f6a976bd3909a92ad1d8f1720ab09e4dce4..cd75b21dd4c312e1cf3dcf22a2801ad2f49c24c6 100644 (file)
  * or to back the page tables that are used to create the mapping.
  * Uses the main allocators if they are available, else bootmem.
  */
+
+static void * __init_refok __earlyonly_bootmem_alloc(int node,
+                               unsigned long size,
+                               unsigned long align,
+                               unsigned long goal)
+{
+       return __alloc_bootmem_node(NODE_DATA(node), size, align, goal);
+}
+
+
 void * __meminit vmemmap_alloc_block(unsigned long size, int node)
 {
        /* If the main allocator is up use that, fallback to bootmem. */
@@ -44,7 +54,7 @@ void * __meminit vmemmap_alloc_block(unsigned long size, int node)
                        return page_address(page);
                return NULL;
        } else
-               return __alloc_bootmem_node(NODE_DATA(node), size, size,
+               return __earlyonly_bootmem_alloc(node, size, size,
                                __pa(MAX_DMA_ADDRESS));
 }