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

Re: [Xen-devel] [PATCH v2] PVH Dom0 RMRR IOMMU mapping regression fix



On Mon, Sep 28, 2015 at 01:04:48AM -0600, Jan Beulich wrote:
> >>> On 25.09.15 at 22:59, <elena.ufimtseva@xxxxxxxxxx> wrote:
> > From: Elena Ufimtseva <elena.ufimtseva@xxxxxxxxxx>
> > 
> > This patch addresses a regression introduced by commit 
> > 5ae03990c120a7b3067a52d9784c9aa72c0705a6 in new set_identity_p2m_entry.
> > RMRRs are not being mapped in IOMMU for PVH Dom0. This causes pages faults 
> > and
> > some long 'hang-like' delays during Dom0 PVH boot and device assignments.
> > 
> > During construct_dom0, in PVH path p2m is being constructed and identity 
> > mapped
> > in IOMMU. The p2m type is p2m_mmio_direct and p2m access p2m_rwx.
> > New code used to map RMRRs invoked from rmrr_identity_mapping
> > checks if p2m entry exists with same type and access and if yes, skips iommu
> > mapping. Since there are p2m entries for pvh dom0 iomem, RMRRs are not being
> > mapped in IOMMU.
> > 
> > As was mentioned in the earlier discussion, the PVH Dom0 construction code
> > should be modified to properly map RMRR regions in IOMMU. Since change will 
> > be
> > too invasive, this solution is a temporary fix at this time before better
> > solution is in. Also as Jan mentioned, there is no need in having 'x' 
> > permissions
> > for p2m entry of a mmio region, thus changed here.
> 
> Well, now that I look at this again I think there could be reasons for
> execute permission to be needed: Code placed in ROM may require
> this. But then again Dom0 shouldn't on its own (i.e. without
> involving the hypervisor) invoke such code, which usually would be
> expecting to be run in root mode ring 0 anyway. So I think not
> defaulting to include X is the right thing. Hence ...
>
> > Signed-off-by: Elena Ufimtseva <elena.ufimtseva@xxxxxxxxxx>
> 
> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
> 

Thanks Jan!

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


 


Rackspace

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