2002-09-19 04:17:20

by Wes Kurdziolek

[permalink] [raw]
Subject: Compile problem w/ 2.4.20-pre7-ac2

Found a compile problem w/ 2.4.20-pre7-ac2 when attempting to compile
the PIIX driver:

make[4]: Entering directory
`/usr/src/linux-2.4.20-pre7-ac2/drivers/ide/pci'
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-pre7-ac2/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common
-fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686
-I../ -nostdinc -iwithprefix include -DKBUILD_BASENAME=piix -c -o
piix.o piix.c
piix.c: In function `init_chipset_piix':
piix.c:533: init_chipset_piix causes a section type conflict
piix.c: In function `piix_init_one':
piix.c:677: piix_init_one causes a section type conflict
piix.c: At top level:
piix.c:696: warning: `piix_remove_one' defined but not used
make[4]: *** [piix.o] Error 1
make[4]: Leaving directory
`/usr/src/linux-2.4.20-pre7-ac2/drivers/ide/pci'
make[3]: *** [first_rule] Error 2
make[3]: Leaving directory
`/usr/src/linux-2.4.20-pre7-ac2/drivers/ide/pci'
make[2]: *** [_subdir_pci] Error 2
make[2]: Leaving directory `/usr/src/linux-2.4.20-pre7-ac2/drivers/ide'
make[1]: *** [_subdir_ide] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.20-pre7-ac2/drivers'
make: *** [_dir_drivers] Error 2
yavin:/usr/src/linux-2.4.20-pre7-ac2# gcc -v
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20011002 (Debian prerelease)
yavin:/usr/src/linux-2.4.20-pre7-ac2# ld -v
GNU ld version 2.13.90.0.4 20020814 Debian GNU/Linux
yavin:/usr/src/linux-2.4.20-pre7-ac2#


2002-09-19 08:00:17

by Jens Axboe

[permalink] [raw]
Subject: Re: Compile problem w/ 2.4.20-pre7-ac2

On Thu, Sep 19 2002, Wes Kurdziolek wrote:
> Found a compile problem w/ 2.4.20-pre7-ac2 when attempting to compile
> the PIIX driver:
>
> make[4]: Entering directory
> `/usr/src/linux-2.4.20-pre7-ac2/drivers/ide/pci'
> gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-pre7-ac2/include -Wall
> -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common
> -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686
> -I../ -nostdinc -iwithprefix include -DKBUILD_BASENAME=piix -c -o
> piix.o piix.c
> piix.c: In function `init_chipset_piix':
> piix.c:533: init_chipset_piix causes a section type conflict
> piix.c: In function `piix_init_one':
> piix.c:677: piix_init_one causes a section type conflict
> piix.c: At top level:
> piix.c:696: warning: `piix_remove_one' defined but not used


# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.536.9.8 -> 1.536.9.9
# drivers/ide/pci/piix.h 1.2 -> 1.3
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/09/16 [email protected] 1.536.9.9
# piix_pci_info() needs to be __initdata, not __devinit
# --------------------------------------------
#
diff -Nru a/drivers/ide/pci/piix.h b/drivers/ide/pci/piix.h
--- a/drivers/ide/pci/piix.h Thu Sep 19 10:04:36 2002
+++ b/drivers/ide/pci/piix.h Thu Sep 19 10:04:36 2002
@@ -38,7 +38,7 @@
*
*/

-static ide_pci_device_t piix_pci_info[] __devinit = {
+static ide_pci_device_t piix_pci_info[] __initdata = {
{ /* 0 */
vendor: PCI_VENDOR_ID_INTEL,
device: PCI_DEVICE_ID_INTEL_82371FB_0,


--
Jens Axboe

2002-09-19 10:21:01

by Alan

[permalink] [raw]
Subject: Re: Compile problem w/ 2.4.20-pre7-ac2

On Thu, 2002-09-19 at 09:05, Jens Axboe wrote:

> -static ide_pci_device_t piix_pci_info[] __devinit = {
> +static ide_pci_device_t piix_pci_info[] __initdata = {

That won't work either. The table is needed in cases __devinit is - its
basically __devinitdata. I need to go look up the right types for it