On Thu, 2012-03-15 at 13:23 -0700, Yinghai Lu wrote:On Thu, Mar 15, 2012 at 11:03 AM, Steffen Persvold<sp@xxxxxxxxxxxxx> wrote:Use x2apic_supported() in the default_apic_id_valid() function. If x2apic mode is disabled (via nox2apic for example), x2apic_supported() will return false.
This allows us to substitute the check in arch/x86/kernel/acpi/boot.c::acpi_parse_x2apic and avoid feigning the x2apic cpu feature in the NumaChip apic code.
Signed-off-by: Steffen Persvold<sp@xxxxxxxxxxxxx>
Reviewed-by: Daniel J Blueman<daniel@xxxxxxxxxxxxxxxxxx>
I double checked on system with x2apic preenabled,
nox2apic in boot command line still works well and it
skips starting APs with apic id> 255.
Acked-by: Yinghai Lu<yinghai@xxxxxxxxxx>
This breaks the smpboot check if enabling interrupt-remapping/x2apic
fails on a platform. We will be in xapic mode and we don't clear the
x2apic cpufeature bit in this case and as such smpboot check will fail.
So this change breaks the commit
c284b42abadbb22083bfde24d308899c08d44ffa.
I think the right thing is to have two different apid_id_valid checks
one for xapic driver (apic_flat_64.c) and another for x2apic driver
(x2apic_phys/cluster.c) and that way, x2apic MADT entries will be parsed
only if bios has handed over the OS in x2apic mode or if we have
selected the numachip model.