[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 07/34] x86: only call memory_type_changed for HVM guests
Jan indicated that for PV guests the memory type is not changed, for HVM guests memory_type_changed is needed for EPT's effective memory type calculation. Call memory_type_changed for HVM guests only. Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- xen/arch/x86/domctl.c | 4 ++-- xen/common/domctl.c | 5 +++-- xen/drivers/passthrough/iommu.c | 3 ++- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/xen/arch/x86/domctl.c b/xen/arch/x86/domctl.c index 1002659..a8325f5 100644 --- a/xen/arch/x86/domctl.c +++ b/xen/arch/x86/domctl.c @@ -416,7 +416,7 @@ long arch_do_domctl( ret = ioports_permit_access(d, fp, fp + np - 1); else ret = ioports_deny_access(d, fp, fp + np - 1); - if ( !ret ) + if ( !ret && is_hvm_domain(d) ) memory_type_changed(d); break; } @@ -824,7 +824,7 @@ long arch_do_domctl( "ioport_map: error %ld denying dom%d access to [%x,%x]\n", ret, d->domain_id, fmp, fmp + np - 1); } - if ( !ret ) + if ( !ret && is_hvm_domain(d) ) memory_type_changed(d); break; } diff --git a/xen/common/domctl.c b/xen/common/domctl.c index 0ef554a..ae99fed 100644 --- a/xen/common/domctl.c +++ b/xen/common/domctl.c @@ -977,7 +977,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) ret = iomem_permit_access(d, mfn, mfn + nr_mfns - 1); else ret = iomem_deny_access(d, mfn, mfn + nr_mfns - 1); - if ( !ret ) + if ( !ret && is_hvm_domain(d) ) memory_type_changed(d); break; } @@ -1037,7 +1037,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) ret, d->domain_id, mfn, mfn_end); } /* Do this unconditionally to cover errors on above failure paths. */ - memory_type_changed(d); + if ( is_hvm_domain(d) ) + memory_type_changed(d); break; } diff --git a/xen/drivers/passthrough/iommu.c b/xen/drivers/passthrough/iommu.c index 70d218f..cf5aa20 100644 --- a/xen/drivers/passthrough/iommu.c +++ b/xen/drivers/passthrough/iommu.c @@ -240,7 +240,8 @@ int iommu_construct(struct domain *d) * memory_type_changed lose effect if memory type changes. * Call memory_type_changed here to amend this. */ - memory_type_changed(d); + if ( is_hvm_domain(d) ) + memory_type_changed(d); return 0; } -- git-series 0.9.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |