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

[Xen-changelog] [xen-unstable] [XEN][POWERPC] Flush all of text per CPU in case the loader did not



# HG changeset patch
# User Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
# Node ID 24fd597879823265b4144f09a71128d9c636dc22
# Parent  6ff313c841dbd9325a2a50d039b0dfcca7909e6f
[XEN][POWERPC] Flush all of text per CPU in case the loader did not
Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
Signed-off-by: Hollis Blanchard <hollisb@xxxxxxxxxx>
---
 xen/arch/powerpc/powerpc64/exceptions.S |   12 ++++++++++++
 1 files changed, 12 insertions(+)

diff -r 6ff313c841db -r 24fd59787982 xen/arch/powerpc/powerpc64/exceptions.S
--- a/xen/arch/powerpc/powerpc64/exceptions.S   Mon Oct 02 11:04:00 2006 -0400
+++ b/xen/arch/powerpc/powerpc64/exceptions.S   Mon Oct 02 11:06:10 2006 -0400
@@ -564,6 +564,18 @@ _GLOBAL(sleep)
  */    
     .globl spin_start
 spin_start:
+
+    /* Do a cache flush for our text, in case the loader didn't */
+    LOADADDR(r9, _start)
+    LOADADDR(r8, _etext)
+4:  dcbf r0,r9
+    icbi r0,r9
+    addi r9,r9,0x20            /* up to a 4 way set per line */
+    cmpld cr0,r9,r8
+    blt        4b
+    sync
+    isync
+
     /* Write our processor number as an acknowledgment that we're alive.  */
     LOADADDR(r14, __spin_ack)
     stw r3, 0(r14)

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


 


Rackspace

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