summaryrefslogtreecommitdiff
path: root/arch/x86/mm/init_64.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/mm/init_64.c')
-rw-r--r--arch/x86/mm/init_64.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index 69ddfbd91135..e9b040e1cde5 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -572,6 +572,7 @@ kernel_physical_mapping_init(unsigned long start,
void __init initmem_init(unsigned long start_pfn, unsigned long end_pfn,
int acpi, int k8)
{
+#ifndef CONFIG_NO_BOOTMEM
unsigned long bootmap_size, bootmap;
bootmap_size = bootmem_bootmap_pages(end_pfn)<<PAGE_SHIFT;
@@ -579,13 +580,15 @@ void __init initmem_init(unsigned long start_pfn, unsigned long end_pfn,
PAGE_SIZE);
if (bootmap == -1L)
panic("Cannot find bootmem map of size %ld\n", bootmap_size);
+ reserve_early(bootmap, bootmap + bootmap_size, "BOOTMAP");
/* don't touch min_low_pfn */
bootmap_size = init_bootmem_node(NODE_DATA(0), bootmap >> PAGE_SHIFT,
0, end_pfn);
e820_register_active_regions(0, start_pfn, end_pfn);
free_bootmem_with_active_regions(0, end_pfn);
- early_res_to_bootmem(0, end_pfn<<PAGE_SHIFT);
- reserve_bootmem(bootmap, bootmap_size, BOOTMEM_DEFAULT);
+#else
+ e820_register_active_regions(0, start_pfn, end_pfn);
+#endif
}
#endif
@@ -974,7 +977,7 @@ vmemmap_populate(struct page *start_page, unsigned long size, int node)
if (pmd_none(*pmd)) {
pte_t entry;
- p = vmemmap_alloc_block(PMD_SIZE, node);
+ p = vmemmap_alloc_block_buf(PMD_SIZE, node);
if (!p)
return -ENOMEM;
d=95afae481414cbdb0567bf82d5e5077c3ac9da20'>xen: remove DEFINE_XENBUS_DRIVER() macroDavid Vrabel1-9/+12 2014-02-28xen/xenbus: remove unused xenbus_bind_evtchn()David Vrabel1-1/+0 2013-05-29xenbus: delay xenbus frontend resume if xenstored is not runningAurelien Chartier1-0/+1 2012-03-23include/ and checkpatch: prefer __scanf to __attribute__((format(scanf,...)Joe Perches1-2/+2 2012-01-04Xen: consolidate and simplify struct xenbus_driver instantiationJan Beulich1-22/+9 2011-11-06Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-0/+1 2011-10-31treewide: use __printf not __attribute__((format(printf,...)))Joe Perches1-6/+6 2011-10-31xen: Add export.h for THIS_MODULE/EXPORT_SYMBOL to various xen users.Paul Gortmaker1-0/+1 2011-06-30xen: Add __attribute__((format(printf... where appropriateJoe Perches1-0/+2 2011-03-16xen: xenbus PM events supportKazuhiro SUZUKI1-1/+1 2011-01-05xen: add backend driver supportIan Campbell1-1/+1 2010-03-30include cleanup: Update gfp.h and slab.h includes to prepare for breaking imp...Tejun Heo1-0/+1 2009-03-30xen: use device model for suspending xenbus devicesIan Campbell1-1/+1 2009-03-30xen: remove suspend_cancel hookIan Campbell1-1/+0 2009-01-08xen: add xenfs to allow usermode <-> Xen interactionAlex Zeffertt1-2/+0