[PATCH] ppc64: fix smp_startup_cpu for cpu hotplug

Nathan Lynch nathanl at austin.ibm.com
Sat Oct 16 16:14:17 EST 2004


This change is needed in order to allow cpus to be onlined after
boot.  This used to work but the declaration of
pseries_secondary_smp_init in this file was changed in Ben's big
cleanup patch a while back, so the cpu would start at a bad address.

Signed-off-by: Nathan Lynch <nathanl at austin.ibm.com>


 smp.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

Index: 2.6.9-rc4/arch/ppc64/kernel/smp.c
===================================================================
--- 2.6.9-rc4.orig/arch/ppc64/kernel/smp.c	2004-10-16 00:38:57.404529136 -0500
+++ 2.6.9-rc4/arch/ppc64/kernel/smp.c	2004-10-16 00:56:13.266054248 -0500
@@ -390,7 +390,8 @@
 static inline int __devinit smp_startup_cpu(unsigned int lcpu)
 {
 	int status;
-	unsigned long start_here = __pa(pseries_secondary_smp_init);
+	unsigned long start_here = __pa((u32)*((unsigned long *)
+					       pseries_secondary_smp_init));
 	unsigned int pcpu;
 
 	/* At boot time the cpus are already spinning in hold





More information about the Linuxppc64-dev mailing list