[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 3/4] x86: split PVH dom0 builder to hvm/dom0_build.c



On Thu, Mar 16, 2017 at 06:21:16PM +0000, Wei Liu wrote:
> On Thu, Mar 16, 2017 at 06:16:26PM +0000, Roger Pau Monné wrote:
> > On Thu, Mar 16, 2017 at 05:54:57PM +0000, Wei Liu wrote:
> > [...]
> > > diff --git a/xen/arch/x86/dom0_build.c b/xen/arch/x86/dom0_build.c
> > > index c74f9b52e0..772f077d5a 100644
> > > --- a/xen/arch/x86/dom0_build.c
> > > +++ b/xen/arch/x86/dom0_build.c
> > [...]
> > > @@ -261,8 +240,8 @@ boolean_param("ro-hpet", ro_hpet);
> > >  
> > >  unsigned int __initdata dom0_memflags = MEMF_no_dma|MEMF_exact_node;
> > >  
> > > -static unsigned long __init dom0_paging_pages(const struct domain *d,
> > > -                                              unsigned long nr_pages)
> > > +unsigned long __init dom0_paging_pages(const struct domain *d,
> > > +                                       unsigned long nr_pages)
> > >  {
> > >      /* Copied from: libxl_get_required_shadow_memory() */
> > >      unsigned long memkb = nr_pages * (PAGE_SIZE / 1024);
> > 
> > Shouldn't this be moved to the PVH Dom0 file? AFAICT this is not used by 
> > the PV
> > Dom0, or else you would have made that global in the previous patch.
> > 
> 
> It is needed by dom0_compute_nr_pages which is used by PV dom0 builder
> and PVH dom0 builder, plus it is directly called by PVH dom0 builder.
> It's best to leave it here.

Right, Xen needs that in order to account for the memory used by the paging
code, plus for setting the paging buffer itself.

I'm quite sure that creating a PV Dom0 with shadow is completely broken, and
that this could be moved provided that compute_dom0_nr_pages is also split
between PV and PVH, but let's leave this for another time.

Acked-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>

Thanks, Roger.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.