Hi Lukasz, On 07/13/2015 09:54 PM, Lukasz Anaczkowski wrote:
This patch is based on work of "Yinghai Lu <yinghai@xxxxxxxxxx>" previously published at https://lkml.org/lkml/2013/1/21/563. In case when BIOS is populating MADT wiht both x2apic and local apic entries (as per ACPI spec), kernel builds it's processor table in the following order: BSP, X2APIC, local APIC, resulting in processors on the same core are not separated by core count.
I'm confused here, I can't figure out where is the problem, could you explain it in detail? For me, logical CPU IDs allocated by OS will have mappings to physical CPU IDs, what you are saying seems CPU topology problem to me.
This patch fixes this behavior and resulting assignment is correct. Signed-off-by: Lukasz Anaczkowski <lukasz.anaczkowski@xxxxxxxxx> --- arch/x86/kernel/acpi/boot.c | 29 +++++++++++++----- drivers/acpi/numa.c | 28 ++++++++++++----- drivers/acpi/tables.c | 75 ++++++++++++++++++++++++++++----------------- drivers/irqchip/irq-gic.c | 15 ++++++---
Anyway, You also miss the SMP boot for ARM64 in ACPI way, which will cause compile error on ARM64. Thanks Hanjun -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html