|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v7 2/5] xen/arm: move setup_mm right after setup_pagetables
At the moment we destroy the DTB mappings we have in setup_pagetables
and we restore them only in setup_mm.
Move setup_mm right after setup_pagetables.
This ensures we have a valid DTB mapping while running the subsequent
initialization code.
Changes in v7:
- turn more printk's into early_printk.
Changes in v5:
- reword commit message;
- turn printk in setup_mm into an early_printk.
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
xen/arch/arm/setup.c | 7 +++----
xen/common/page_alloc.c | 6 ------
2 files changed, 3 insertions(+), 10 deletions(-)
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index e1ab7f6..c568be5 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -246,11 +246,11 @@ static void __init setup_mm(unsigned long dtb_paddr,
size_t dtb_size)
} while ( xenheap_pages > 128<<(20-PAGE_SHIFT) );
if ( ! e )
- panic("Not not enough space for xenheap\n");
+ early_panic("Not not enough space for xenheap\n");
domheap_pages = heap_pages - xenheap_pages;
- printk("Xen heap: %lu pages Dom heap: %lu pages\n", xenheap_pages,
domheap_pages);
+ early_printk("Xen heap: %lu pages Dom heap: %lu pages\n", xenheap_pages,
domheap_pages);
setup_xenheap_mappings((e >> PAGE_SHIFT) - xenheap_pages, xenheap_pages);
@@ -349,6 +349,7 @@ void __init start_xen(unsigned long boot_phys_offset,
cmdline_parse(device_tree_bootargs(fdt));
setup_pagetables(boot_phys_offset, get_xen_paddr());
+ setup_mm(atag_paddr, fdt_size);
#ifdef EARLY_UART_ADDRESS
/* TODO Need to get device tree or command line for UART address */
@@ -366,8 +367,6 @@ void __init start_xen(unsigned long boot_phys_offset,
set_current((struct vcpu *)0xfffff000); /* debug sanity */
idle_vcpu[0] = current;
- setup_mm(atag_paddr, fdt_size);
-
/* Setup Hyp vector base */
WRITE_CP32((uint32_t) hyp_traps_vector, HVBAR);
printk("Set hyp vector base to %"PRIx32" (expected %p)\n",
diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 6b8bc39..6c2215b 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -182,12 +182,6 @@ void __init init_boot_pages(paddr_t ps, paddr_t pe)
else if ( *p != '\0' )
break;
- if ( bad_epfn == bad_spfn )
- printk("Marking page %lx as bad\n", bad_spfn);
- else
- printk("Marking pages %lx through %lx as bad\n",
- bad_spfn, bad_epfn);
-
bootmem_region_zap(bad_spfn, bad_epfn+1);
}
}
--
1.7.2.5
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |