Skip to contentSkip to conversation

2.5.20-dj2 : "Duplicate initializer" in drivers/scsi/aic7xxx/aic7xxx_linux.c

DISCUSSION Nathan 3 participants 3 messages Jun 4, 2002 – Jun 5, 2002 SCSI

lore
Share & tools
lore

Nathan

author
#0 lore raw

gcc -D__KERNEL__ -I/home/wes/src/kernel/linux-2.5.20/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -malign-functions=4 -DKBUILD_BASENAME=aic7xxx_linux -c -o aic7xxx_linux.o aic7xxx_linux.c
aic7xxx_linux.c:2829: unknown field abort' specified in initializer aic7xxx_linux.c:2829: unknown field reset' specified in initializer aic7xxx_linux.c:2829: duplicate initializer
aic7xxx_linux.c:2829: (near initialization for `driver_template.slave_attach') aic7xxx_linux.c:2829: duplicate initializer
aic7xxx_linux.c:2829: (near initialization for `driver_template.bios_param') make[3]: *** [aic7xxx_linux.o] Error 1

Erhm, what's that mean? ^_^ And more importantly, how does one fix that?

--Nathan

#1 lore raw
Quoted 9 lines · Nathan

gcc -D__KERNEL__ -I/home/wes/src/kernel/linux-2.5.20/include -Wall

(quoted diff) +0 -3
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common 
-fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 
-malign-functions=4     -DKBUILD_BASENAME=aic7xxx_linux  -c -o 

aic7xxx_linux.o aic7xxx_linux.c
aic7xxx_linux.c:2829: unknown field abort' specified in initializer aic7xxx_linux.c:2829: unknown field reset' specified in initializer

Erhm, what's that mean? ^_^ And more importantly, how does one fix that?

It means the scsi driver has no error handling. Either a, add appropriate error handling routines, or b, enable the option in
the scsi menu labelled "Use SCSI drivers with broken error handling [DANGEROUS]"

This is the fallout of a patch from Christoph Hellwig to make it more obvious which drivers are still in need of attention. This patch is missing from Linus' tree, so things compile fine there. As there's been little to no progress at fixing these, I'll push the same patch to Linus in the next round, so things will break there too.

Dave.

Signature · 2 lines
| Dave Jones.        http://www.codemonkey.org.uk
| SuSE Labs
#2 lore raw
In reply to Nathan
Quoted 15 lines · Dave Jones
Quoted 9 lines · Nathan

gcc -D__KERNEL__ -I/home/wes/src/kernel/linux-2.5.20/include -Wall

(quoted diff) +0 -3
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common 
-fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 
-malign-functions=4     -DKBUILD_BASENAME=aic7xxx_linux  -c -o 

aic7xxx_linux.o aic7xxx_linux.c
aic7xxx_linux.c:2829: unknown field abort' specified in initializer aic7xxx_linux.c:2829: unknown field reset' specified in initializer

Erhm, what's that mean? ^_^ And more importantly, how does one fix that?

It means the scsi driver has no error handling. Either a, add appropriate error handling routines, or b, enable the option in
the scsi menu labelled "Use SCSI drivers with broken error handling [DANGEROUS]"

Quoted 7 lines

This is the fallout of a patch from Christoph Hellwig to make it more obvious which drivers are still in need of attention. This patch is missing from Linus' tree, so things compile fine there. As there's been little to no progress at fixing these, I'll push the same patch to Linus in the next round, so things will break there too.

Dave.

The aic driver already uses the new error handler, it just references the removed fields when initializing them to NULL.

-- Patrick Mansfield