From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH 13/18] PVH xen: mtrr, tsc, grant changes... Date: Tue, 25 Jun 2013 10:30:48 -0400 Message-ID: <20130625143048.GI28113@phenom.dumpdata.com> References: <1372118507-16864-1-git-send-email-mukesh.rathor@oracle.com> <1372118507-16864-14-git-send-email-mukesh.rathor@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1372118507-16864-14-git-send-email-mukesh.rathor@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Mukesh Rathor Cc: Xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On Mon, Jun 24, 2013 at 05:01:42PM -0700, Mukesh Rathor wrote: > PVH only supports limited memory types in Phase I. TSC is limited to native > mode only also for the moment. Finally, grant mapping of iomem for PVH hasn't > been explorted in phase I. explored. > > Signed-off-by: Mukesh Rathor > --- > xen/arch/x86/hvm/mtrr.c | 8 ++++++++ > xen/arch/x86/time.c | 8 ++++++++ > xen/common/grant_table.c | 4 ++-- > 3 files changed, 18 insertions(+), 2 deletions(-) > > diff --git a/xen/arch/x86/hvm/mtrr.c b/xen/arch/x86/hvm/mtrr.c > index ef51a8d..b9d6411 100644 > --- a/xen/arch/x86/hvm/mtrr.c > +++ b/xen/arch/x86/hvm/mtrr.c > @@ -693,6 +693,14 @@ uint8_t epte_get_entry_emt(struct domain *d, unsigned long gfn, mfn_t mfn, > ((d->vcpu == NULL) || ((v = d->vcpu[0]) == NULL)) ) > return MTRR_TYPE_WRBACK; > > + /* PVH fixme: Add support for more memory types. */ > + if ( is_pvh_domain(d) ) > + { > + if ( direct_mmio ) > + return MTRR_TYPE_UNCACHABLE; > + return MTRR_TYPE_WRBACK; > + } > + > if ( !v->domain->arch.hvm_domain.params[HVM_PARAM_IDENT_PT] ) > return MTRR_TYPE_WRBACK; > > diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c > index 86640f5..5b1b6bb 100644 > --- a/xen/arch/x86/time.c > +++ b/xen/arch/x86/time.c > @@ -1893,6 +1893,14 @@ void tsc_set_info(struct domain *d, > d->arch.vtsc = 0; > return; > } > + if ( is_pvh_domain(d) && tsc_mode != TSC_MODE_NEVER_EMULATE ) > + { > + /* PVH fixme: support more tsc modes. */ > + printk(XENLOG_WARNING > + "PVH currently does not support tsc emulation. Setting timer_mode = native\n"); > + d->arch.vtsc = 0; > + return; > + } > > switch ( d->arch.tsc_mode = tsc_mode ) > { > diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c > index 3f97328..a2073d2 100644 > --- a/xen/common/grant_table.c > +++ b/xen/common/grant_table.c > @@ -721,7 +721,7 @@ __gnttab_map_grant_ref( > > double_gt_lock(lgt, rgt); > > - if ( !is_hvm_domain(ld) && need_iommu(ld) ) > + if ( is_pv_domain(ld) && need_iommu(ld) ) > { > unsigned int wrc, rdc; > int err = 0; > @@ -932,7 +932,7 @@ __gnttab_unmap_common( > act->pin -= GNTPIN_hstw_inc; > } > > - if ( !is_hvm_domain(ld) && need_iommu(ld) ) > + if ( is_pv_domain(ld) && need_iommu(ld) ) > { > unsigned int wrc, rdc; > int err = 0; > -- > 1.7.2.3 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel >