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] [IA64] in_tpa is now an argument of vcpu_translate

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [IA64] in_tpa is now an argument of vcpu_translate
From: Xen patchbot -unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sat, 18 Mar 2006 11:18:15 +0000
Delivery-date: Sat, 18 Mar 2006 11:20:45 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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 405f0f847c0f33381c69a04a168f34150a2bca7d
# Parent  3b877779e9a3522d83fde9dfe5d43d16b571dc17
[IA64] in_tpa is now an argument of vcpu_translate

this makes in_tpa SMP-safe.

Signed-off-by: Tristan Gingold <tristan.gingold@xxxxxxxx>

diff -r 3b877779e9a3 -r 405f0f847c0f xen/arch/ia64/xen/process.c
--- a/xen/arch/ia64/xen/process.c       Thu Mar  9 23:16:20 2006
+++ b/xen/arch/ia64/xen/process.c       Thu Mar  9 23:24:31 2006
@@ -280,7 +280,7 @@
                return;
        }
 
-       fault = vcpu_translate(current,address,is_data,&pteval,&itir,&iha);
+       fault = vcpu_translate(current,address,is_data,0,&pteval,&itir,&iha);
        if (fault == IA64_NO_FAULT) {
                pteval = translate_domain_pte(pteval,address,itir);
                
vcpu_itc_no_srlz(current,is_data?2:1,address,pteval,-1UL,(itir>>2)&0x3f);
diff -r 3b877779e9a3 -r 405f0f847c0f xen/arch/ia64/xen/vcpu.c
--- a/xen/arch/ia64/xen/vcpu.c  Thu Mar  9 23:16:20 2006
+++ b/xen/arch/ia64/xen/vcpu.c  Thu Mar  9 23:24:31 2006
@@ -5,12 +5,6 @@
  *     Dan Magenheimer (dan.magenheimer@xxxxxx)
  *
  */
-
-#if 1
-// TEMPORARY PATCH for match_dtlb uses this, can be removed later
-// FIXME SMP
-int in_tpa = 0;
-#endif
 
 #include <linux/sched.h>
 #include <public/arch-ia64.h>
@@ -1290,7 +1284,7 @@
 
 int warn_region0_address = 0; // FIXME later: tie to a boot parameter?
 
-IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, UINT64 
*pteval, UINT64 *itir, UINT64 *iha)
+IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, BOOLEAN 
in_tpa, UINT64 *pteval, UINT64 *itir, UINT64 *iha)
 {
        unsigned long region = address >> 61;
        unsigned long pta, pte, rid, rr;
@@ -1402,9 +1396,7 @@
        UINT64 pteval, itir, mask, iha;
        IA64FAULT fault;
 
-       in_tpa = 1;
-       fault = vcpu_translate(vcpu, vadr, 1, &pteval, &itir, &iha);
-       in_tpa = 0;
+       fault = vcpu_translate(vcpu, vadr, TRUE, TRUE, &pteval, &itir, &iha);
        if (fault == IA64_NO_FAULT)
        {
                mask = itir_mask(itir);
diff -r 3b877779e9a3 -r 405f0f847c0f xen/include/asm-ia64/vcpu.h
--- a/xen/include/asm-ia64/vcpu.h       Thu Mar  9 23:16:20 2006
+++ b/xen/include/asm-ia64/vcpu.h       Thu Mar  9 23:24:31 2006
@@ -140,7 +140,9 @@
 extern IA64FAULT vcpu_ptc_ga(VCPU *vcpu, UINT64 vadr, UINT64 addr_range);
 extern IA64FAULT vcpu_ptr_d(VCPU *vcpu,UINT64 vadr, UINT64 addr_range);
 extern IA64FAULT vcpu_ptr_i(VCPU *vcpu,UINT64 vadr, UINT64 addr_range);
-extern IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address, BOOLEAN is_data, 
UINT64 *pteval, UINT64 *itir, UINT64 *iha);
+extern IA64FAULT vcpu_translate(VCPU *vcpu, UINT64 address,
+                               BOOLEAN is_data, BOOLEAN in_tpa,
+                               UINT64 *pteval, UINT64 *itir, UINT64 *iha);
 extern IA64FAULT vcpu_tpa(VCPU *vcpu, UINT64 vadr, UINT64 *padr);
 extern IA64FAULT vcpu_force_data_miss(VCPU *vcpu, UINT64 ifa);
 extern IA64FAULT vcpu_fc(VCPU *vcpu, UINT64 vadr);

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [IA64] in_tpa is now an argument of vcpu_translate, Xen patchbot -unstable <=