oops bringing up secondary cpus

Benjamin Herrenschmidt benh at kernel.crashing.org
Sat Jul 17 04:53:15 EST 2004


Ok, here's the patch I sent that got in last month fixing that:

-----Forwarded Message-----
From: Benjamin Herrenschmidt <benh at kernel.crashing.org>
To: Andrew Morton <akpm at osdl.org>
Cc: Linus Torvalds <torvalds at osdl.org>, Paul Mackerras <paulus at samba.org>, Linux Kernel list <linux-kernel at vger.kernel.org>
Subject: [PATCH] ppc64: Fix booting on LPAR machines with more than 1 CPU
Date: Thu, 24 Jun 2004 11:28:39 -0500

Hi !

The exception rewrite contains a small bug that prevents bring up of CPUs
on logically partitioned machines. The kernel is trying to zero the backlink
on the new stack while running with relocation disabled, which potentially
cause it to try to access an address outside of the region allowed in
real mode. This seem to be a leftover from previous code as we also zero
the backlink later after turning off the MMU. This patch removes the
offending bit.

===== arch/ppc64/kernel/head.S 1.61 vs edited =====
--- 1.61/arch/ppc64/kernel/head.S	2004-06-17 00:46:06 -05:00
+++ edited/arch/ppc64/kernel/head.S	2004-06-24 11:25:41 -05:00
@@ -1833,8 +1833,6 @@
 	sldi	r28,r24,3		/* get current_set[cpu#] */
 	ldx	r1,r3,r28
 	addi	r1,r1,THREAD_SIZE-STACK_FRAME_OVERHEAD
-	li	r0,0
-	std	r0,0(r1)
 	std	r1,PACAKSAVE(r13)

 	ld	r3,PACASTABREAL(r13)    /* get raddr of segment table       */


** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/





More information about the Linuxppc64-dev mailing list