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-ppc-devel

[XenPPC] [xenppc-unstable] [POWERPC][XEN] implement the UP side of __flu

To: xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
Subject: [XenPPC] [xenppc-unstable] [POWERPC][XEN] implement the UP side of __flush_tlb_mask()
From: Xen patchbot-xenppc-unstable <patchbot-xenppc-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sun, 08 Oct 2006 18:02:45 +0000
Delivery-date: Sun, 08 Oct 2006 11:32:20 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ppc-devel-request@lists.xensource.com?subject=help>
List-id: Xen PPC development <xen-ppc-devel.lists.xensource.com>
List-post: <mailto:xen-ppc-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ppc-devel>, <mailto:xen-ppc-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ppc-devel>, <mailto:xen-ppc-devel-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-ppc-devel-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
# Node ID e30376a0abc39117f604b0f6cc7817deb3eb9079
# Parent  aebee004e517fb391c1345749c71a22861ec254d
[POWERPC][XEN] implement the UP side of __flush_tlb_mask()

The SMP side will need to be done soone enough

Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
---
 xen/arch/powerpc/smp.c |   16 +++++++++++++++-
 1 files changed, 15 insertions(+), 1 deletion(-)

diff -r aebee004e517 -r e30376a0abc3 xen/arch/powerpc/smp.c
--- a/xen/arch/powerpc/smp.c    Sat Oct 07 15:38:27 2006 -0400
+++ b/xen/arch/powerpc/smp.c    Sat Oct 07 16:25:46 2006 -0400
@@ -29,7 +29,21 @@ int ht_per_core = 1;
 
 void __flush_tlb_mask(cpumask_t mask, unsigned long addr)
 {
-    unimplemented();
+    if (cpu_isset(smp_processor_id(), mask)) {
+            cpu_clear(smp_processor_id(), mask);
+            if (cpus_empty(mask)) {
+                /* only local */
+                if (addr == FLUSH_ALL_ADDRS)
+                    local_flush_tlb();
+                else
+                    local_flush_tlb_one(addr);
+                return;
+            }
+    }
+    /* if we are still here and the mask is non-empty, then we need to
+     * flush other TLBs so we flush em all */
+    if (!cpus_empty(mask))
+        unimplemented();
 }
 
 void smp_send_event_check_mask(cpumask_t mask)

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

<Prev in Thread] Current Thread [Next in Thread>
  • [XenPPC] [xenppc-unstable] [POWERPC][XEN] implement the UP side of __flush_tlb_mask(), Xen patchbot-xenppc-unstable <=