mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
i386: fix boot
Since the Xen heap pages (which are the only ones mapped at this point) don't get passed to init_boot_pages(), it has no place to store the bootmem regions without faulting. Hence, a mapped page must be passed to that function as the very first thing. Signed-off-by: Jan Beulich <jbeulich@novell.com>
This commit is contained in:
1 parent
7ace84ccbc
commit
2e2e8763c2
1 file changed
+3
-1
@@ -763,7 +763,9 @@ void __init __start_xen(unsigned long mbi_p)
|
||||
reserve_e820_ram(&boot_e820, initial_images_base, initial_images_end);
|
||||
|
||||
#if defined(CONFIG_X86_32)
|
||||
xenheap_initial_phys_start = __pa(&_end);
|
||||
xenheap_initial_phys_start = (PFN_UP(__pa(&_end)) + 1) << PAGE_SHIFT;
|
||||
/* Must pass a single mapped page for populating bootmem_region_list. */
|
||||
init_boot_pages(__pa(&_end), xenheap_initial_phys_start);
|
||||
xenheap_phys_end = DIRECTMAP_MBYTES << 20;
|
||||
#else
|
||||
if ( !xen_phys_start )
|
||||
|
||||