[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [Patch V5 13/16] xen: add explicit memblock_reserve() calls for special pages
On 07/10/2015 03:36 PM, Konrad Rzeszutek Wilk wrote: diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c index 1982617..c28f7f7 100644 --- a/arch/x86/xen/mmu.c +++ b/arch/x86/xen/mmu.c @@ -2084,6 +2084,19 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn) } #endif /* CONFIG_X86_64 */ +void __init xen_reserve_special_pages(void) +{ + phys_addr_t paddr; + + memblock_reserve(__pa(xen_start_info), PAGE_SIZE); + if (!xen_initial_domain()) { + paddr = PFN_PHYS(mfn_to_pfn(xen_start_info->store_mfn)); + memblock_reserve(paddr, PAGE_SIZE); + paddr = PFN_PHYS(mfn_to_pfn(xen_start_info->console.domU.mfn)); + memblock_reserve(paddr, PAGE_SIZE); + }I believe we can start an MiniOS as the 'dom0' (so first domain), and then Linux right after as the 'dom1' (semi-dom0?). In which case XenStore would be actually available. And this dom1 would still be the "initial domain" (SIF_INITDOMAIN set)? I couldn't spot other Xen usage of this flag as the one in the hypervisor when constructing the "real" initial domain. Is there an way to figure out whether these mfns are valid and just piggyback on that? For store_mfn: yes (it's initialized to 0 by the hypervisor). The console mfn: no, as the console info is a union which will hold different information in case of the initial domain. Juergen _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |