From f8b9e5945738d25c04d6735c2a070f574d2b34c5 Mon Sep 17 00:00:00 2001 From: Kyle McMartin Date: Thu, 18 Oct 2007 00:03:50 -0700 Subject: [PATCH] [PARISC] Unbreak processor_probe when we have more than NR_CPUS If we already have NR_CPUS worth of cpus online, we obviously shouldn't be trying to bring up more... Fixes a particularly vexing issue I had when running another machines kernel on my rp3440. Signed-off-by: Kyle McMartin --- arch/parisc/kernel/processor.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/parisc/kernel/processor.c b/arch/parisc/kernel/processor.c index 549f5484342c..370086fb8333 100644 --- a/arch/parisc/kernel/processor.c +++ b/arch/parisc/kernel/processor.c @@ -82,7 +82,12 @@ static int __cpuinit processor_probe(struct parisc_device *dev) unsigned long cpuid; struct cpuinfo_parisc *p; -#ifndef CONFIG_SMP +#ifdef CONFIG_SMP + if (num_online_cpus() >= NR_CPUS) { + printk(KERN_INFO "num_online_cpus() >= NR_CPUS\n"); + return 1; + } +#else if (boot_cpu_data.cpu_count > 0) { printk(KERN_INFO "CONFIG_SMP=n ignoring additional CPUs\n"); return 1;