[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0808151830170.19924@boston.corp.fedex.com>
Date: Fri, 15 Aug 2008 18:34:58 +0800 (SGT)
From: Jeff Chua <jeff.chua.linux@...il.com>
To: Ingo Molnar <mingo@...e.hu>
cc: Yinghai Lu <yhlu.kernel@...il.com>,
David Miller <davem@...emloft.net>,
Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: 2.6.27rc1 cannot boot more than 8CPUs
On Thu, Aug 14, 2008 at 5:07 PM, Ingo Molnar <mingo@...e.hu> wrote:
>
> * Jeff Chua <jeff.chua.linux@...il.com> wrote:
>
>> On Thu, Aug 14, 2008 at 2:33 AM, Yinghai Lu <yhlu.kernel@...il.com>
wrote:
>>
>> >>>> > With 16 CPUs, it still hangs, but now the console is showing the
>> >>>> > errors as intended.
>> >>>> > ... but it is supposed to hang?
>>
>> > please check the attached patch. it should fix the new regression and
>> > will not hang.
>>
>> Ok, booted up and not hanged, but those messages below don't show up
>> anywhere. I've tested with CONFIG_NR_CPUS=16 and 8 as well. Just got 8
>> cpus
>>
>> More than 8 CPUs detected - skipping them.
>> Use CONFIG_X86_GENERICARCH and CONFIG_X86_BIGSMP.
>>
>> # cat /sys/devices/system/cpu/possible
>> 0-7
>>
>> CONFIG_X86_32=y
>> CONFIG_X86_PC=y
>>
>>
>> Looks like it's not going into this condition
>> + if (def_to_bigsmp && nr_cpu_ids > 8) {
>>
>>
>> Shall this be put back so that it'll show the message?
>> - if (def_to_bigsmp && apicid > 8) {
>> - printk(KERN_WARNING
>> - "More than 8 CPUs detected - skipping them.\n"
>> - "Use CONFIG_X86_GENERICARCH and
CONFIG_X86_BIGSMP.\n");
>> - }
>
> could you post the full dmesg? And the modified patch that you've tested
> to both have 8 CPUs without bigsmp and which also shows the printk?
>
> Ingo
>
Attached. cpu.8
CONFIG_X86_32=y
CONFIG_X86_PC=y
CONFIG_X86=y
CONFIG_NR_CPUS=8
Attached. cpu.16
CONFIG_X86_32=y
CONFIG_X86_PC=y
CONFIG_X86=y
CONFIG_NR_CPUS=16
Attached cpu.16.big
CONFIG_X86_32=y
CONFIG_X86=y
CONFIG_X86_GENERICARCH=y
CONFIG_X86_BIGSMP=y
# CONFIG_X86_PC is not set
CONFIG_NR_CPUS=16
Attached cpu.16.nobig (same as cpu.16 except with modifed patch)
CONFIG_X86_32=y
CONFIG_X86_PC=y
CONFIG_X86=y
CONFIG_NR_CPUS=16
Attached is the modified patch to make the warning appears. It's Yinghai's
patch modified to just display the error and continue to boot.
Thanks,
Jeff
--- linux.16/arch/x86/kernel/smpboot.c.org 2008-08-15 18:15:37 +0800
+++ linux.16/arch/x86/kernel/smpboot.c 2008-08-15 18:13:42 +0800
@@ -999,9 +999,12 @@
printk(KERN_WARNING
"More than 8 CPUs detected - skipping them.\n"
"Use CONFIG_X86_GENERICARCH and CONFIG_X86_BIGSMP.\n");
- }
-#endif
+ err = -1;
+ } else
+ err = do_boot_cpu(apicid, cpu);
+#else
err = do_boot_cpu(apicid, cpu);
+#endif
zap_low_mappings();
low_mappings = 0;
View attachment "cpu.8" of type "TEXT/PLAIN" (31509 bytes)
View attachment "cpu.16" of type "TEXT/PLAIN" (31509 bytes)
View attachment "cpu.16.big" of type "TEXT/PLAIN" (31519 bytes)
View attachment "cpu.16.nobig" of type "TEXT/PLAIN" (31517 bytes)
Powered by blists - more mailing lists