Re: [PATCH] smp: Add bootcpus parameter to boot subset of CPUs

From: Peter Zijlstra
Date: Mon Oct 26 2020 - 13:12:30 EST


On Mon, Oct 26, 2020 at 10:08:47AM -0700, psodagud@xxxxxxxxxxxxxx wrote:
> On 2020-10-23 14:59, Thomas Gleixner wrote:
> > On Thu, Oct 22 2020 at 15:04, Elliot Berman wrote:
> > > In a heterogeneous multiprocessor system, specifying the 'maxcpus'
> > > parameter on kernel command line does not provide sufficient control
> > > over which CPUs are brought online at kernel boot time, since CPUs may
> > > have nonuniform performance characteristics. Thus, add bootcpus kernel
> > > parameter to control which CPUs should be brought online during kernel
> > > boot. When both maxcpus and bootcpus is set, the more restrictive of
> > > the
> > > two are booted.
> >
> > What for? 'maxcpus' is a debug hack at best and outright dangerous on
> > certain architectures. Why do we need more of that? Just let the machine
> > boot and offline the CPUs from user space.
>
> Hi Thomas and Peter,
>
> Based on my understanding with maxcpus option provides, maximum no of CPUs
> are brough up during the device boot up. There is a different case, in which
> we want to restrict which CPUs to be brough up.
> On a system with 8 cpus, if we set maxcpus as 3, cpu0, cpu1, and cpu2 are
> brough up during the bootup. For example, if we want to bring core0, core3
> and core4 current maxcpu(as 3) setting would not help us.
> On some platform we want the flexibility on which CPUs to bring up during
> the device bootup. bootcpus command line is helping to bring specific CPUs
> and these patches are working downstream.

That's a lot of words, but exactly 0 on _WHY_ you would want to do that.