Re: [PATCH] x86: make generic arch support NUMAQ v2

From: Yinghai Lu
Date: Fri Jun 06 2008 - 14:05:26 EST


On Fri, Jun 6, 2008 at 7:09 AM, Ingo Molnar <mingo@xxxxxxx> wrote:
>
> * Yinghai Lu <yhlu.kernel@xxxxxxxxx> wrote:
>
>> > It is my understanding that special support for NUMAQ should die, so
>> > the only remaning usage of CONFIG_NUMAQ is if set to select
>> > GENERICARCH. In other words that you should not use CONFIG_NUMAQ
>> > anywhere in the code but solely rely on GENERICARCH and then do
>> > runtime detection of the other things.
>>
>> in case someone don't want to build that special numaq code in.
>>
>> I think we should make ES7000, Summit depend to GENERICARCH too.
>
> correct. If someone wants more restricted support, pure CONFIG_X86_PC
> should do that fine.
>
> also, even GENERICARCH should have as little Kconfig implications as
> possible. I.e. before your cleanups the subarch code was used to
> implement something very non-PC, and it was done build-time - which is a
> PITA in terms of testing and in terms of general complexity. We want to
> remove those complications and eventually we want to remove the subarch
> code altogether. (without narrowing hw support of course)

current

static struct genapic *apic_probe[] __initdata = {
#ifdef CONFIG_X86_NUMAQ
&apic_numaq,
#endif
&apic_summit,
&apic_bigsmp,
&apic_es7000,
&apic_default, /* must be last */
NULL,
};

the apic_default is the 86_PC.

so could make GENERICARCH default to yes.

and have

static struct genapic *apic_probe[] __initdata = {
#ifdef CONFIG_X86_NUMAQ
&apic_numaq,
#endif
#ifdef CONFIG_X86_SUMMIT
&apic_summit,
#endif
#ifdef CONFIG_X86_BIGSMP
&apic_bigsmp,
#endif
#ifdef CONFIG_X86_ES7000
&apic_es7000,
Eendif
&apic_default, /* must be last */
NULL,
};


also may expand probe a little bit...to cover other different.

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