Re: for_each_online_cpu broken ?

Nigel Cunningham
2005-12-08T06:25:39Z

Hi.

On Thu, 2005-12-08 at 15:33, Dave Jones wrote:
> On Thu, Dec 08, 2005 at 06:26:32AM +0100, Andi Kleen wrote:
>
> Hi Andi,
>
> > > Whilst debugging a memory leak, I hit sysrq meminfo,
> > > and got hot/cold info for CONFIG_NR_CPUS rather than 4 cpus
> > >
> > > I've only tried reproducing this on x86-64 so far.
> >
> > If the online map is wrong all kinds of things would go wrong.
> >
> > Most likely your kernel doesn't have the fix.
>
> This was seen with a .15rc5-git1 kernel.
> Is this something still living in your x86-64 patchset or -mm ?
>
> > The possible map is fixed kind of BTW in 2.6.15rc*. It was a side effect
> > of CPU hotplug, which now uses a better algorithm to guess the
> > number of possible CPUs. In 2.6.15 you will just get half the number
> > of available CPUs in addition by default
>
> Yep, I noticed it offers a maximum of 6 cpus on my way.
> As a sidenote, seems kinda funny (and wasteful maybe?), doing this
> on a lot of hardware that isn't hotplug capable. (Whilst I could
> disable cpu hotplug in my local build, this isn't an answer for
> a generic distro kernel).

Both suspend to disk (and suspend to ram?) implementations now depend on
hotplug_cpu to enable extra cpus, so there is at least one reason for
them to want hotplug support in a generic kernel.

Regards,

Nigel