[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20110131122447.GA30149@elte.hu>
Date: Mon, 31 Jan 2011 13:24:47 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Yinghai Lu <yinghai@...nel.org>, Len Brown <lenb@...nel.org>
Cc: Len Brown <len.brown@...el.com>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>,
Suresh Siddha <suresh.b.siddha@...el.com>,
Pavel Machek <pavel@....cz>, "Rafael J. Wysocki" <rjw@...k.pl>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH -v2] x86, acpi: Handle xapic/x2apic entries in MADT at
same time
* Yinghai Lu <yinghai@...nel.org> wrote:
>
> One system have mixing xapic and x2apic entries in MADT and SRAT.
> BIOS guys insist that ACPI 4.0 SPEC said so, if apic id < 255, even
> the cpus are with x2apic mode pre-enabled, still need to use xapic entries
> instead of x2apic entries.
>
> on 8 socket system with x2apic pre-enabled, will get out of order sequence:
> CPU0: socket0, core0, thread0.
> CPU1 - CPU 40: socket 4 - socket 7, thread 0
> CPU41 - CPU 80: socket 4 - socket 7, thread 1
> CPU81 - CPU 119: socket 0 - socket 3, thread 0
> CPU120 - CPU 159: socket 0 - socket 3, thread 1
>
> so max_cpus=80 will not get all thread0 now.
>
> Need to handle every entry in MADT at same time with xapic and x2apic.
> so we can honor sequence in MADT.
>
> We can use max_cpus= command line to use thread0 in every core,
> because recent MADT always have all thread0 at first.
> Also it could make the cpu to node mapping more sane.
>
> after patch will get
> CPU0 - CPU 79: socket 0 - socket 7, thread 0
> CPU80 - CPU 159: socket 0 - socket 7, thread 1
>
> -v2: update some comments, and change to pass array pointer.
>
> Signed-off-by: Yinghai Lu <yinghai@...nel.org>
>
> ---
> arch/x86/kernel/acpi/boot.c | 30 ++++++++++++++++-------
> drivers/acpi/numa.c | 16 +++++++++---
> drivers/acpi/tables.c | 57 +++++++++++++++++++++++++++++++++-----------
> include/linux/acpi.h | 9 ++++++
> 4 files changed, 86 insertions(+), 26 deletions(-)
Seems useful - we can queue it up and can get it tested in the x86 tree if Len acks
the principle and the ACPI approach.
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists