Re: disabled APICs being counted as processors ?

From: Henrique de Moraes Holschuh
Date: Sat Jan 25 2014 - 11:42:44 EST


On Sat, 25 Jan 2014, Ingo Molnar wrote:
> * Dave Jones <davej@xxxxxxxxxx> wrote:
> > I have a system with 4 cores (configured with CONFIG_NR_CPUS=4) that shows during boot..
> >
> > [ 0.000000] smpboot: 8 Processors exceeds NR_CPUS limit of 4
> >
> > it looks like this is because..
> >
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] enabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x04] enabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x06] enabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x05] lapic_id[0xff] disabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x06] lapic_id[0xff] disabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x07] lapic_id[0xff] disabled)
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x08] lapic_id[0xff] disabled)
> >
> > Should the CPU counting code be ignoring those disabled APICs ?
>
> Hm, so to the kernel it looks like as if those were 'possible CPUs',
> in theory hotpluggable. Not sure what they are - disabled cores in an
> 8-core system? Or BIOS reporting crap?

It is sort of a standard practice for the BIOS to report ACPI tables listing
all possible cores for the largest possible processor the motherboard
(sometimes several motherboards that share the same BIOS) could handle.
Really easy to find that quirk in anything by SuperMicro, for example.

The kernel things these extra CPU cores will show up eventually, and lists
them (and reserves resources to handle them) as hotpluggable CPUs.

--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh
--
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/