[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 19/20] PVH xen: elf and iommu related changes to prep for dom0 PVH
>>> On 15.05.13 at 02:52, Mukesh Rathor <mukesh.rathor@xxxxxxxxxx> wrote: > --- a/xen/arch/x86/setup.c > +++ b/xen/arch/x86/setup.c > @@ -60,6 +60,10 @@ integer_param("maxcpus", max_cpus); > static bool_t __initdata disable_smep; > invbool_param("smep", disable_smep); > > +/* Boot dom0 in PVH mode */ > +bool_t __initdata opt_dom0pvh; > +boolean_param("dom0pvh", opt_dom0pvh); Does this really belong here (instead of domain_build.c)? > --- a/xen/common/libelf/libelf-loader.c > +++ b/xen/common/libelf/libelf-loader.c > @@ -127,6 +131,16 @@ static int elf_load_image(void *dst, const void *src, > uint64_t filesz, uint64_t > int rc; > if ( filesz > ULONG_MAX || memsz > ULONG_MAX ) > return -1; > + > + if ( opt_dom0pvh ) So you define (above) and declare (below) the variable in x86- specific files, but use it in common code? That's going to break the ARM build. > + { > + unsigned long addr = (unsigned long)dst; > + early_pvh_copy_or_zero(addr, src, filesz); > + early_pvh_copy_or_zero(addr + filesz, NULL, memsz - filesz); And anyway - repeating my earlier complaint - I don't see why this is necessary. In fact I don't see why most of the PV Dom0 building code can't be used unchanged for PVH: There's no real need for lifting the few restrictions that apply, and hence there needn't be any fear of colliding address spaces. > @@ -146,7 +158,15 @@ void __init iommu_dom0_init(struct domain *d) > ((page->u.inuse.type_info & PGT_type_mask) > == PGT_writable_page) ) > mapping |= IOMMUF_writable; > - hd->platform_ops->map_page(d, mfn, mfn, mapping); > + > + if ( is_pvh_domain(d) ) > + { > + unsigned long gfn = mfn_to_gfn(d, _mfn(mfn)); > + hd->platform_ops->map_page(d, gfn, mfn, mapping); > + } > + else > + hd->platform_ops->map_page(d, mfn, mfn, mapping); With mfn_to_gfn(mfn) == mfn, is there really a need for two code paths here? Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |