Re: [RFC PATCH 1/5] use nr_cpus= to set nr_cpu_ids early

From: Yinghai Lu
Date: Tue Jan 12 2010 - 17:20:32 EST


On Tue, Jan 12, 2010 at 12:31 PM, Christoph Lameter
<cl@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, 12 Jan 2010, Yinghai Lu wrote:
>
>> > Why do we need this twice?
>>
>> maxcpus only change setup_max_cpus., and if you are using maxcpus=1,
>> and you have 8 cpus installed, you can put other
>> cpus back online via /sys/interface.
>
> Hmmm.. Strange semantics since maxcpus=0 disables smp completely. No cpu
> can be activated later. Similar to nr_cpus ?

no
for SMP kernel, when nr_cpus=1 is specified, it looks like only one
cpu is installed physically.
smp is still enabled.

maxcpus=0 is really caused misunderstanding.

other maxcpus=1 and other should be rename to boot_online_cpus=


>
>> nr_cpus= is hard limit nr_cpu_ids, so if you have 16 cpus installed,
>> nr_cpus=8 will make your nr_cpu_ids=8, and you can not put back
>> other 8 back. and apic mode could stay with logical flat.
>> this is used to simulate some debug case. for example you have kernel
>> support physflat, and flat, with CONFIG_NR_CPUS=255. to run that on
>> system that only have 8 cpus, you will have apic mode in logical flat.
>>  but if you have run the kernel on system with 32 cpus installed, it
>> will switch to physflat even you have maxcpus=8 appedded.
>
> Ok makes sense.

good.

YH
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/