2002-10-02 20:48:49

by tim

[permalink] [raw]
Subject: include/asm/irq_vectors.h not found

when installing dri drivers for my gfx card (r200-20020927-linux.i386) i get the following error during kernel module compilation:

cc -O2 -Wall -Wwrite-strings -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wnested-externs -Wpointer-arith -D__KERNEL__ -DMODULE -fomit-frame-pointer -DCONFIG_AGP -DCONFIG_AGP_MODULE -DCONFIG_DRM_SIS -DMODVERSIONS -include /lib/modules/2.5.39/build/include/linux/modversions.h -DEXPORT_SYMTAB -I/lib/modules/2.5.39/build/include -c radeon_drv.c -o radeon_drv.o
In file included from /lib/modules/2.5.39/build/include/linux/irq.h:19,
from /lib/modules/2.5.39/build/include/asm/hardirq.h:6,
from /lib/modules/2.5.39/build/include/linux/interrupt.h:44,
from drm_os_linux.h:3,
from drmP.h:75,
from radeon_drv.c:32:
/lib/modules/2.5.39/build/include/asm/irq.h:16: irq_vectors.h: No such file or directory
make: *** [radeon_drv.o] Error 1

this is with linux kernel version 2.5.39 and 2.5.40 (wasn't a problem in 2.5.36). here is my kernel .config:

CONFIG_X86=y
CONFIG_ISA=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_EXPERIMENTAL=y
CONFIG_NET=y
CONFIG_SYSVIPC=y
CONFIG_SYSCTL=y
CONFIG_MODULES=y
CONFIG_MODVERSIONS=y
CONFIG_KMOD=y
CONFIG_MK7=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_USE_3DNOW=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
CONFIG_NOHIGHMEM=y
CONFIG_MTRR=y
CONFIG_PM=y
CONFIG_APM=y
CONFIG_APM_DO_ENABLE=y
CONFIG_PCI=y
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_NAMES=y
CONFIG_KCORE_ELF=y
CONFIG_BINFMT_ELF=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_LOOP=m
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_CMD640=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_IDEDMA_AUTO=y
CONFIG_BLK_DEV_IDE_MODES=y
CONFIG_SCSI=m
CONFIG_BLK_DEV_SR=m
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_SR_EXTRA_DEVS=2
CONFIG_CHR_DEV_SG=m
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IPV6_SCTP__=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=m
CONFIG_INPUT=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_JOYDEV=m
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_AGP=y
CONFIG_AGP_VIA=y
CONFIG_DRM=y
CONFIG_EXT3_FS=y
CONFIG_JBD=y
CONFIG_FAT_FS=m
CONFIG_VFAT_FS=m
CONFIG_TMPFS=y
CONFIG_RAMFS=y
CONFIG_ISO9660_FS=m
CONFIG_PROC_FS=y
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
CONFIG_EXT2_FS=y
CONFIG_MSDOS_PARTITION=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_VGA_CONSOLE=y
CONFIG_SOUND=m
CONFIG_SND=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_VIA8233=m
CONFIG_USB=m
CONFIG_USB_UHCI_HCD_ALT=m
CONFIG_USB_HID=m
CONFIG_X86_EXTRA_IRQS=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_SECURITY_CAPABILITIES=y
CONFIG_X86_BIOS_REBOOT=y

tim


2002-10-02 21:18:51

by Sam Ravnborg

[permalink] [raw]
Subject: Re: include/asm/irq_vectors.h not found

On Wed, Oct 02, 2002 at 01:59:39PM -0700, tim wrote:
> when installing dri drivers for my gfx card (r200-20020927-linux.i386) i get the following error during kernel module compilation:
>
> cc -O2 -Wall -Wwrite-strings -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wnested-externs -Wpointer-arith -D__KERNEL__ -DMODULE -fomit-frame-pointer -DCONFIG_AGP -DCONFIG_AGP_MODULE -DCONFIG_DRM_SIS -DMODVERSIONS -include /lib/modules/2.5.39/build/include/linux/modversions.h -DEXPORT_SYMTAB -I/lib/modules/2.5.39/build/include -c radeon_drv.c -o radeon_drv.o
> In file included from /lib/modules/2.5.39/build/include/linux/irq.h:19,
> from /lib/modules/2.5.39/build/include/asm/hardirq.h:6,
> from /lib/modules/2.5.39/build/include/linux/interrupt.h:44,
> from drm_os_linux.h:3,
> from drmP.h:75,
> from radeon_drv.c:32:
> /lib/modules/2.5.39/build/include/asm/irq.h:16: irq_vectors.h: No such file or directory
> make: *** [radeon_drv.o] Error 1

Try changing the line in irq.h from:
#include "irq_vectors.h"
to
#include <irq_vectors.h>

This should make it locate the file in arch/i386/mach-generic/irq_vectors.h

Sam

2002-10-02 21:16:50

by Petr Vandrovec

[permalink] [raw]
Subject: Re: include/asm/irq_vectors.h not found

On Wed, Oct 02, 2002 at 01:59:39PM -0700, tim wrote:
> when installing dri drivers for my gfx card (r200-20020927-linux.i386) i get the following error during kernel module compilation:

VMware suffers from same problem. Because of I do not support VMware
on SGI visual workstation, I now use an additional
-I/lib/modules/`uname -r`/build/arch/i386/mach-generic
in vmmon/vmnet Makefile, and for 2.5.x it is required to have full kernel
source installed, not only kernel-headers package (if there is some distro
that distributes kernel-headers 2.5.x package...).

> cc -O2 -Wall -Wwrite-strings -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wnested-externs -Wpointer-arith -D__KERNEL__ -DMODULE -fomit-frame-pointer -DCONFIG_AGP -DCONFIG_AGP_MODULE -DCONFIG_DRM_SIS -DMODVERSIONS -include /lib/modules/2.5.39/build/include/linux/modversions.h -DEXPORT_SYMTAB -I/lib/modules/2.5.39/build/include -c radeon_drv.c -o radeon_drv.o
> In file included from /lib/modules/2.5.39/build/include/linux/irq.h:19,
> from /lib/modules/2.5.39/build/include/asm/hardirq.h:6,
> from /lib/modules/2.5.39/build/include/linux/interrupt.h:44,
> from drm_os_linux.h:3,
> from drmP.h:75,
> from radeon_drv.c:32:
> /lib/modules/2.5.39/build/include/asm/irq.h:16: irq_vectors.h: No such file or directory
> make: *** [radeon_drv.o] Error 1

I think that behavior should be changed. irq_vectors.h (and eventually other .h) should
be moved to include/asm-i386/irq_vectors-generic.h (or irq_vectors-visws.h) and irq_vectors.h
should be either appropriate symlink, or simple

#ifdef CONFIG_VISWS
#include <irq_vectors-visws.h>
#else
#include <irq_vectors-generic.h>
#endif

Or vendors should be taught to install properly configured kernel-sources by default,
so that we can use (cd /lib/modules/`uname -r`/build; make SUBDIRS=`pwd` modules) (or how
it works in 2.5.x kbuild) instead of just trying to guess compiler, compiler options
and include paths because of by default vendors's sources are configured for something
else than running kernel (f.e. -Xcustom instead of -X in EXTRAVERSION in main makefile).

Best regards,
Petr Vandrovec
[email protected]