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

[Xen-changelog] [xen-unstable] [IA64] physical mode fix



# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID 9c649ca5c1ccf745ec4c22944475ae2d9322b30d
# Parent  64ede00a004d5c72b902ca7936e6d1b079e1a7d6
[IA64] physical mode fix

1. use WB attribute to emulate UC guest physical page.
2. corretly handle GUEST_PHY_EMUL

Signed-off-by: Anthony Xu <anthony.xu@xxxxxxxxx>
---
 xen/arch/ia64/vmx/vmx_phy_mode.c |   16 ++++++----------
 1 files changed, 6 insertions(+), 10 deletions(-)

diff -r 64ede00a004d -r 9c649ca5c1cc xen/arch/ia64/vmx/vmx_phy_mode.c
--- a/xen/arch/ia64/vmx/vmx_phy_mode.c  Tue Oct 31 22:25:35 2006 -0700
+++ b/xen/arch/ia64/vmx/vmx_phy_mode.c  Tue Oct 31 22:25:40 2006 -0700
@@ -113,10 +113,7 @@ physical_tlb_miss(VCPU *vcpu, u64 vadr, 
     ia64_rr rr;
     rr.rrval = ia64_get_rr(vadr);
     pte =  vadr& _PAGE_PPN_MASK;
-    if (vadr >> 63)
-        pte = pte | PHY_PAGE_UC;
-    else
-        pte = pte | PHY_PAGE_WB;
+    pte = pte | PHY_PAGE_WB;
     thash_vhpt_insert(vcpu, pte, (rr.ps << 2), vadr, type);
     return;
 }
@@ -347,10 +344,9 @@ void
 void
 recover_if_physical_mode(VCPU *vcpu)
 {
-    if (is_physical_mode(vcpu)) {
-       vcpu->arch.mode_flags &= ~GUEST_PHY_EMUL;
+    if (is_physical_mode(vcpu))
         switch_to_physical_rid(vcpu);
-    }
-    return;
-}
-
+    vcpu->arch.mode_flags &= ~GUEST_PHY_EMUL;
+    return;
+}
+

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

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