# HG changeset patch
# User Jimi Xenidis <[EMAIL PROTECTED]>
# Node ID 85c482f30a0ab7e9d8730331e77c9e202d8ea6b1
# Parent  276d39822a21da13dddd8bc409316105d2fa3838
[XEN][POWERPC] Flush all of text per CPU in case the loader did not

Signed-off-by: Jimi Xenidis <[EMAIL PROTECTED]>
---
 xen/arch/powerpc/powerpc64/exceptions.S |   12 ++++++++++++
 1 files changed, 12 insertions(+)

diff -r 276d39822a21 -r 85c482f30a0a 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-ppc-devel mailing list
Xen-ppc-devel@lists.xensource.com
http://lists.xensource.com/xen-ppc-devel

Reply via email to