WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] [IA64] ptc.g virtualization fix 2

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] ptc.g virtualization fix 2
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 03 Jul 2006 10:20:45 +0000
Delivery-date: Mon, 03 Jul 2006 03:28:33 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID e97e31e26bd5985514d331298eb264a07e368b7e
# Parent  85958f34f18314f50a63662eaa1a186cf726531b
[IA64] ptc.g virtualization fix 2

When emulating ptc.ga, VMM needs to change pta temporarily,
which cause VHPT is not mapped by TR, then vhpt fault may
happen inside VMM, it is not correct.
This patch is to fix this issue.
When changing pta, VMM makes VHPT disabled temporarily.

Signed-off-by: Anthony Xu <anthony.xu@xxxxxxxxx>
---
 xen/arch/ia64/vmx/vmmu.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)

diff -r 85958f34f183 -r e97e31e26bd5 xen/arch/ia64/vmx/vmmu.c
--- a/xen/arch/ia64/vmx/vmmu.c  Mon Jun 26 14:41:54 2006 -0600
+++ b/xen/arch/ia64/vmx/vmmu.c  Tue Jun 27 16:35:59 2006 -0600
@@ -526,7 +526,7 @@ static void ptc_ga_remote_func (void *va
     moldrid = ia64_get_rr(0x0);
     ia64_set_rr(0x0,vrrtomrr(v,args->rid));
     mpta = ia64_get_pta();
-    ia64_set_pta(v->arch.arch_vmx.mpta);
+    ia64_set_pta(v->arch.arch_vmx.mpta&(~1));
     ia64_srlz_d();
     vmx_vcpu_ptc_l(v, args->vadr, args->ps);
     VMX(v, vrr[0]) = oldrid; 
@@ -561,6 +561,8 @@ IA64FAULT vmx_vcpu_ptc_ga(VCPU *vcpu,UIN
                 /* Try again if VCPU has migrated.  */
             } while (proc != v->processor);
         }
+        else if(v == vcpu)
+            vmx_vcpu_ptc_l(v, va, ps);
         else
             ptc_ga_remote_func(&args);
     }

_______________________________________________
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] ptc.g virtualization fix 2, Xen patchbot-unstable <=