fa.openbsd.tech
[Top] [All Lists]

sparc64 diff

Subject: sparc64 diff
From: Mark Kettenis <mark.kettenis@xxxxxxxxx>
Date: Thu, 24 Jul 2008 19:24:20 UTC
Newsgroups: fa.openbsd.tech

This diff is necessary to make the new T2 systems boot.  It shouldn't
hurt other machines, but since we don't know exactly how much stack we
need, having this tested on a variety of sparc64 systems would be
good.

Please send me a short reply with the model you tested and whether it
works with this diff or not.

Thanks,

Mark


Index: locore.s
===================================================================
RCS file: /cvs/src/sys/arch/sparc64/sparc64/locore.s,v
retrieving revision 1.147
diff -u -p -r1.147 locore.s
--- locore.s    21 Jul 2008 13:30:05 -0000      1.147
+++ locore.s    24 Jul 2008 19:02:35 -0000
@@ -347,6 +347,13 @@ _C_LABEL(data_start):                                      
! Start of dat
 _C_LABEL(u0):  .xword  0
 estack0:       .xword  0
 
+/*
+ * This stack is used for bootstrapping and spinning up CPUs.
+ */
+       .space  4096
+       .align  16
+tmpstack:
+
 #ifdef DEBUG
 /*
  * This stack is used when we detect kernel stack corruption.
@@ -4857,6 +4864,11 @@ dostart:
 #endif /* 0 */
 
        /*
+        * Switch to temporary stack.
+        */
+       set     tmpstack-CC64FSZ-BIAS, %sp
+
+       /*
         * Ready to run C code; finish bootstrap.
         */
 1:
@@ -4964,12 +4976,6 @@ ENTRY(sun4u_set_tsbs)
 
 
 #ifdef MULTIPROCESSOR
-       .data
-       .space 2048
-       _ALIGN
-tmpstack:
-       .text
-
 ENTRY(cpu_mp_startup)
        mov     %o0, %g2


<Prev in Thread] Current Thread [Next in Thread>
  • sparc64 diff, Mark Kettenis <=