2004-01-01 09:25:49

by Juergen Hasch

[permalink] [raw]
Subject: Re: 2.6.1-rc1 compile error

Am Mittwoch, 31. Dezember 2003 15:09 schrieb Srihari Vijayaraghavan:
>
>
> Then it compiled the io_apic.c and progressed (maybe a lot). But it failed
> and showed this error message:
> LD .tmp_vmlinux1
>
> arch/i386/pci/built-in.o(.text+0xc6e): In function `pcibios_lookup_irq':
> : undefined reference to `can_request_irq'
>
> make: *** [.tmp_vmlinux1] Error 1
>

This is obviously due to can_request_irq is found in arch/i386/kernel/irq.c
and the x86_64 build just includes some stuff from arch/i386/pci/irq.c where
can_request_irq is used too.

Linus introduced this function a few weeks ago. I used the patch below to move
the function from kernel/irq.c to pci/irq.c, but he will probably fix it
himself soon.

Btw. there are a lot of other fixes for the x86_64 build from Andi Kleen which
you should apply too. However, they don't apply cleanly anymore.

...Juergen


Attachments:
(No filename) (880.00 B)
can_request_irq.diff (1.05 kB)
Download all attachments

2004-01-01 19:34:56

by Linus Torvalds

[permalink] [raw]
Subject: Re: 2.6.1-rc1 compile error



On Thu, 1 Jan 2004, Juergen Hasch wrote:
>
> Linus introduced this function a few weeks ago. I used the patch below to move
> the function from kernel/irq.c to pci/irq.c, but he will probably fix it
> himself soon.

I'd much rather have x86-64 have their own version. I would prefer to keep
the irq knowledge in the irq layer. Eventually that irq layer will get
unified, but for now I do _not_ want some random PCI file to know about
irq handler internal data structures.

Linus