From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [Patch V5 13/16] xen: add explicit memblock_reserve() calls for special pages Date: Fri, 10 Jul 2015 09:36:02 -0400 Message-ID: <20150710133602.GH23038@l.oracle.com> References: <1436532481-1224-1-git-send-email-jgross@suse.com> <1436532481-1224-14-git-send-email-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1436532481-1224-14-git-send-email-jgross@suse.com> Sender: linux-kernel-owner@vger.kernel.org To: Juergen Gross Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xensource.com, david.vrabel@citrix.com, boris.ostrovsky@oracle.com List-Id: xen-devel@lists.xenproject.org > 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. Is there an way to figure out whether these mfns are valid and just piggyback on that?