From: Benjamin Herrenschmidt <[email protected]> commit 78c5c68a4cf4329d17abfa469345ddf323d4fd62 upstream.
The code for "powersurge" SMP would kick in and cause a crash at boot due to the lack of a NULL test. Adam Conrad reports that the 3.2 kernel, with CONFIG_SMP=y, will not boot on an OldWorld G3; we're unconditionally writing to psurge_start, but this is only set on powersurge machines. Signed-off-by: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Jeremy Kerr <[email protected]> Reported-by: Adam Conrad <[email protected]> Tested-by: Adam Conrad <[email protected]> --- Hi stable-ers, This issue applies to the following active stable branches: linux-2.6.32.y linux-3.0.y linux-3.2.y smp_psurge_setup_cpu was altered in 7ccbe504, so a slightly different fix is required for 2.6.27.y. Patch for that coming separately. --- arch/powerpc/platforms/powermac/smp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/platforms/powermac/smp.c b/arch/powerpc/platforms/powermac/smp.c index 9b6a820..3394254 100644 --- a/arch/powerpc/platforms/powermac/smp.c +++ b/arch/powerpc/platforms/powermac/smp.c @@ -414,7 +414,7 @@ static struct irqaction psurge_irqaction = { static void __init smp_psurge_setup_cpu(int cpu_nr) { - if (cpu_nr != 0) + if (cpu_nr != 0 || !psurge_start) return; /* reset the entry point so if we get another intr we won't -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
