|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-changelog
[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
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread> |  
- [Xen-changelog] [xen-unstable] [IA64] physical mode fix,
Xen patchbot-unstable <=
  
 |  
  
 | 
    | 
  
  
    |   | 
    |