Re: [PATCH] X86_NUMAQ build fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dave Hansen <[email protected]> writes:

> On Sat, 2006-04-22 at 01:06 +0900, OGAWA Hirofumi wrote:
>> This patch fixes the build breakage of X86_NUMAQ. And this declares
>> xquad_portio on only X86_NUMAQ.
>
> What bug does this patch fix?  What is your .config?  I'm not having any
> compile problems on my NUMAQ lately.

Ah, sorry for stuipd description...

>>  obj-$(CONFIG_PCI_DIRECT)       += direct.o
>>  
>>  pci-y                          := fixup.o
>> -pci-$(CONFIG_ACPI)             += acpi.o
>>  pci-y                          += legacy.o irq.o
>>  
>>  pci-$(CONFIG_X86_VISWS)                := visws.o fixup.o
>>  pci-$(CONFIG_X86_NUMAQ)                := numa.o irq.o
>>  
>> +pci-$(CONFIG_ACPI)             += acpi.o
>
> Am I reading this wrong, or does this just move the option down a bit?
> Did you need to change the link order?  Why?

No, this is not link order. Note that CONFIG_X86_VISWS/CONFIG_X86_NUMAQ
uses ":=", not "+=".  In case of ACPI=y", it breaks build.

Maybe NUMAQ shouldn't allow ACPI=y in Kconfig (very old Makefile
doesn't allow to build acpi.o), but I think Makefile is ok with this,
and it also fixes CONFIG_X86_VISWS case (very old Makefile also allow to
build acpi.o).

>> +++ linux-2.6-hirofumi/arch/i386/boot/compressed/misc.c 2006-04-22 00:54:29.000000000 +0900
>> @@ -122,7 +122,9 @@ static int vidport;
>>  static int lines, cols;
>>  
>>  #ifdef CONFIG_X86_NUMAQ
>> -static void * xquad_portio = NULL;
>> +/* hack to avoid using xquad_portio=NULL */
>> +#undef outb_p
>> +#define outb_p         outb_local_p
>>  #endif
>
> It's really weird, but I'd hope that there was a reason for having two
> xquad_portio.  Are you sure that this has no other consequences?

Note that this is boot/compressed/misc.c. We can't share vmlinux's
data in here. However we can share macros, so probably, it's using
"static void * xquad_portio = NULL" hack.

But, in include/asm-i386/io.h, it is declared as "extern". At least,
gcc-4.0 doesn't allow "static" and "extern" mismatch.

> That said, it does boot on my 16-way NUMAQ, but I still have no real
> idea what problem this is solving or what it is actually doing ;)

Oh, good. Thanks.
-- 
OGAWA Hirofumi <[email protected]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux