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

[Xen-ia64-devel] A small cleanup for vtlb collision chain search


  • To: <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Zhang, Xiantao" <xiantao.zhang@xxxxxxxxx>
  • Date: Fri, 7 Mar 2008 10:57:12 +0800
  • Cc: Alex Williamson <alex.williamson@xxxxxx>
  • Delivery-date: Thu, 06 Mar 2008 18:59:46 -0800
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: Ach/5YSBjfTO64xERjS+gAI7YweagAAGQ/Dg
  • Thread-topic: A small cleanup for vtlb collision chain search

# HG changeset patch
# User root@xxxxxxxxxxxxxxxxxxxxxx
# Date 1204830453 -28800
# Node ID fccd0d524c3b7b6989346e77ea855754799281c0
# Parent  ff90abf572f2d5aa7d4a7f764b3c343b66a06210
no need to continue search collision chain
after one is found since guest TLB can't
have any overlap.

Signed-off-by: Dong Yaozu <eddie.dong@xxxxxxxxx>
Signed-off-by: Zhang Xiantao <xiantao.zhang@xxxxxxxxx>

diff -r ff90abf572f2 xen/arch/ia64/vmx/vtlb.c
--- a/xen/arch/ia64/vmx/vtlb.c  Fri Jan 18 14:11:20 2008 -0700
+++ b/xen/arch/ia64/vmx/vtlb.c  Fri Mar 07 07:29:13 2008 +0800
@@ -332,8 +332,10 @@ static void vtlb_purge(VCPU *v, u64 va, 
         while (num) {
             cur = vtlb_thash(hcb->pta, curadr, vrr.rrval, &tag);
             while (cur) {
-                if (cur->etag == tag && cur->ps == rr_ps)
+                if (cur->etag == tag && cur->ps == rr_ps) {
                     cur->etag = 1UL << 63;
+                    break;
+                }
                 cur = cur->next;
             }
             curadr += size;
@@ -361,8 +363,10 @@ static void vhpt_purge(VCPU *v, u64 va, 
         cur = (thash_data_t *)ia64_thash(start);
         tag = ia64_ttag(start);
         while (cur) {
-            if (cur->etag == tag)
+            if (cur->etag == tag) {
                 cur->etag = 1UL << 63; 
+               break;
+           }
             cur = cur->next;
         }
         start += size;

Attachment: ipf-clear1.patch
Description: ipf-clear1.patch

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

 


Rackspace

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