[Linux-ia64] Can't boot in SMP with kernel 2.5.50 ia64

Xavier Bru
2002-12-19T07:53:06Z

Hello,

Booting 2.5.50 with David's patch, it seems we can't boot in SMP on an
ia64 machine. We get the message: SMP mode deactivated.
Problem is due to smp_prepare_cpus() declaring max_cpus as "unsigned
int" and testing against the -1 value.
Problem was not seen in 2.5.45 because max_cpus was initialized to
UINT_MAX.

Boot in SMP is OK with the following patch:

diff --exclude-from /home/xb/proc/diff.exclude -Nur 2.5.50.ref/arch/ia64/kernel/smpboot.c 2.5.50/arch/ia64/kernel/smpboot.c
--- 2.5.50.ref/arch/ia64/kernel/smpboot.c Wed Dec 18 11:15:48 2002
+++ 2.5.50/arch/ia64/kernel/smpboot.c Wed Dec 18 15:11:52 2002
@@ -472,7 +472,7 @@
* Cycle through the APs sending Wakeup IPIs to boot each.
*/
void __init
-smp_prepare_cpus (unsigned int max_cpus)
+smp_prepare_cpus (int max_cpus)
{
int boot_cpu_id = hard_smp_processor_id();

diff --exclude-from /home/xb/proc/diff.exclude -Nur 2.5.50.ref/include/linux/smp.h 2.5.50/include/linux/smp.h
--- 2.5.50.ref/include/linux/smp.h Wed Dec 18 11:15:48 2002
+++ 2.5.50/include/linux/smp.h Wed Dec 18 15:28:47 2002
@@ -34,7 +34,7 @@
/*
* Prepare machine for booting other CPUs.
*/
-extern void smp_prepare_cpus(unsigned int max_cpus);
+extern void smp_prepare_cpus(int max_cpus);

/*
* Bring a CPU up

--

Sincères salutations.
_____________________________________________________________________

Xavier BRU BULL ISD/R&D/INTEL office: FREC B1-422
tel : +33 (0)4 76 29 77 45 http://www-frec.bull.fr
fax : +33 (0)4 76 29 77 70 mailto:Xavier.Bru@bull.net
addr: BULL, 1 rue de Provence, BP 208, 38432 Echirolles Cedex, FRANCE
_____________________________________________________________________