Re: disabled APICs being counted as processors ?

From: Ingo Molnar
Date: Sun Jan 26 2014 - 04:09:45 EST



* Yinghai Lu <yinghai@xxxxxxxxxx> wrote:

> On Sun, Jan 26, 2014 at 12:36 AM, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
> >
> > No, this message is printed in prefill_possible_map() which
> > _generates_ cpu_possible_map, so '8' is the number of bits in
> > cpu_possible_map.
> >
> > So the problem is that the counting of disabled but hotpluggable CPUs
> > is over-eager. Since I haven't actually seen _true_ hotplug CPU
> > hardware yet, I'd argue we do the change below - allocating space for
> > never-present CPUs is stupid. If there's true hot-plug CPUs around
> > that could come online after we've booted, then we want to know about
> > them explicitly.
> >
> >
> > diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
> > index a32da80..75a351a 100644
> > --- a/arch/x86/kernel/smpboot.c
> > +++ b/arch/x86/kernel/smpboot.c
> > @@ -1223,10 +1223,7 @@ __init void prefill_possible_map(void)
> > i = setup_max_cpus ?: 1;
> > if (setup_possible_cpus == -1) {
> > possible = num_processors;
> > -#ifdef CONFIG_HOTPLUG_CPU
> > - if (setup_max_cpus)
> > - possible += disabled_cpus;
> > -#else
> > +#ifndef CONFIG_HOTPLUG_CPU
> > if (possible > i)
> > possible = i;
> > #endif
>
> Agreed.

A question would be kexec and virtualization: do any of those variants
boot a kernel with 'disabled but working' CPUs, which could be
hot-onlined later on?

Thanks,

Ingo
--
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/