public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Make SMP x86-64 kernels boot on more UP systems.
@ 2006-02-24  1:41 Dave Jones
  2006-02-24  1:45 ` Andi Kleen
  0 siblings, 1 reply; 3+ messages in thread
From: Dave Jones @ 2006-02-24  1:41 UTC (permalink / raw)
  To: ak; +Cc: Linux Kernel

Should someone boot an SMP kernel on UP hardware on some systems,
strange things happen, such as..

SMP: Allowing 0 CPUs.

We blow up shortly afterwards.

Signed-off-by: Dave Jones <davej@redhat.com>

--- linux-2.6.15.noarch/arch/x86_64/kernel/smpboot.c~	2006-02-20 21:59:56.000000000 -0500
+++ linux-2.6.15.noarch/arch/x86_64/kernel/smpboot.c	2006-02-20 22:01:57.000000000 -0500
@@ -975,6 +975,11 @@ __init void prefill_possible_map(void)
 	if (possible > NR_CPUS) 
 		possible = NR_CPUS;
 
+	if (possible == 0) {	/* Could be SMP kernel on UP hw with broken BIOS */
+		possible = 1;
+		printk (KERN_DEBUG "BIOS never enumerated boot CPU, fixing.\n");
+	}
+
 	printk(KERN_INFO "SMP: Allowing %d CPUs, %d hotplug CPUs\n",
 		possible,
 	        max_t(int, possible - num_processors, 0));

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Make SMP x86-64 kernels boot on more UP systems.
  2006-02-24  1:41 Make SMP x86-64 kernels boot on more UP systems Dave Jones
@ 2006-02-24  1:45 ` Andi Kleen
  2006-02-24  2:11   ` Dave Jones
  0 siblings, 1 reply; 3+ messages in thread
From: Andi Kleen @ 2006-02-24  1:45 UTC (permalink / raw)
  To: Dave Jones; +Cc: Linux Kernel

On Friday 24 February 2006 02:41, Dave Jones wrote:
> Should someone boot an SMP kernel on UP hardware on some systems,
> strange things happen, such as..

Boot logs?
 
> SMP: Allowing 0 CPUs.
> 
> We blow up shortly afterwards.
> 
> Signed-off-by: Dave Jones <davej@redhat.com>
> 
> --- linux-2.6.15.noarch/arch/x86_64/kernel/smpboot.c~	2006-02-20 21:59:56.000000000 -0500
> +++ linux-2.6.15.noarch/arch/x86_64/kernel/smpboot.c	2006-02-20 22:01:57.000000000 -0500
> @@ -975,6 +975,11 @@ __init void prefill_possible_map(void)
>  	if (possible > NR_CPUS) 
>  		possible = NR_CPUS;
>  
> +	if (possible == 0) {	/* Could be SMP kernel on UP hw with broken BIOS */
> +		possible = 1;
> +		printk (KERN_DEBUG "BIOS never enumerated boot CPU, fixing.\n");
> +	}

It's the wrong place to handle this. Better would be in mpparse.c

-Andi

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Make SMP x86-64 kernels boot on more UP systems.
  2006-02-24  1:45 ` Andi Kleen
@ 2006-02-24  2:11   ` Dave Jones
  0 siblings, 0 replies; 3+ messages in thread
From: Dave Jones @ 2006-02-24  2:11 UTC (permalink / raw)
  To: Andi Kleen; +Cc: Linux Kernel

On Fri, Feb 24, 2006 at 02:45:00AM +0100, Andi Kleen wrote:
 > On Friday 24 February 2006 02:41, Dave Jones wrote:
 > > Should someone boot an SMP kernel on UP hardware on some systems,
 > > strange things happen, such as..
 > Boot logs?

https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=124341

 > > SMP: Allowing 0 CPUs.
 > > 
 > > We blow up shortly afterwards.
 > > 
 > > Signed-off-by: Dave Jones <davej@redhat.com>

revisiting the bug, I'm not 100% sure my patch was the actual
fix or just something cosmetic, as I changed other things
too in subsequent kernels. I'll get the user to double check it.

		Dave


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-02-24  2:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-02-24  1:41 Make SMP x86-64 kernels boot on more UP systems Dave Jones
2006-02-24  1:45 ` Andi Kleen
2006-02-24  2:11   ` Dave Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox