NetBSD Problem Report #23566

Received: (qmail 20474 invoked by uid 605); 25 Nov 2003 15:05:28 -0000
Message-Id: <20031125150525.5C5B81659@chumby.dlib.vt.edu>
Date: Tue, 25 Nov 2003 10:05:25 -0500 (EST)
From: paul@chumby.dlib.vt.edu
Sender: gnats-bugs-owner@NetBSD.org
Reply-To: paul@gromit.dlib.vt.edu
To: gnats-bugs@gnats.netbsd.org
Subject: "pseudo-device vinum" breaks kernel build
X-Send-Pr-Version: 3.95

>Number:         23566
>Category:       port-alpha
>Synopsis:       GENERIC kernel fails to build with "pseudo-device vinum" included
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    port-alpha-maintainer
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Nov 25 15:06:00 +0000 2003
>Closed-Date:    Tue Nov 25 20:12:54 +0000 2003
>Last-Modified:  Tue Nov 25 20:12:54 +0000 2003
>Originator:     Paul Mather
>Release:        NetBSD 1.6ZE
>Organization:
	Virginia Tech, Digital Library Research Laboratory
>Environment:


System: NetBSD chumby.dlib.vt.edu 1.6ZE NetBSD 1.6ZE (CHUMBY) #0: Sun Nov 9 16:07:55 EST 2003 paul@chumby.dlib.vt.edu:/usr/obj/sys/arch/alpha/compile/CHUMBY alpha
Architecture: alpha
Machine: alpha
>Description:

Attempting to build a kernel with Vinum support enabled (pseudo-device
vinum) will cause the kernel build to fail due to a warning generated
by /usr/src/sys/dev/vinum/vinumdaemon.c:

-----
[[...]]
#   compile  vinumconfig.o
/usr/tools/bin/alpha--netbsd-gcc -mno-fp-regs -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Dalpha -I. -I/usr/src/sys/arch -I/usr/src/sys -nostdinc -DDIAGNOSTIC -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/dev/vinum/vinumconfig.c
#   compile  vinumdaemon.o
/usr/tools/bin/alpha--netbsd-gcc -mno-fp-regs -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Dalpha -I. -I/usr/src/sys/arch -I/usr/src/sys -nostdinc -DDIAGNOSTIC -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/dev/vinum/vinumdaemon.c
/usr/src/sys/dev/vinum/vinumdaemon.c: In function `vinum_daemon':
/usr/src/sys/dev/vinum/vinumdaemon.c:113: warning: long long unsigned int format, daddr_t arg (arg 7)

*** Failed target:  vinumdaemon.o
*** Failed command: echo '# ' "compile " vinumdaemon.o; echo /usr/tools/bin/alpha--netbsd-gcc -mno-fp-regs -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Dalpha -I. -I/usr/src/sys/arch -I/usr/src/sys -nostdinc -DDIAGNOSTIC -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/dev/vinum/vinumdaemon.c; /usr/tools/bin/alpha--netbsd-gcc -mno-fp-regs -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Dalpha -I. -I/usr/src/sys/arch -I/usr/src/sys -nostdinc -DDIAGNOSTIC -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/dev/vinum/vinumdaemon.c
*** Error code 1

Stop.
nbmake: stopped in /usr/obj/sys/arch/alpha/compile/GENERIC-VINUM

ERROR: Failed to make all in /usr/src/sys/arch/alpha/compile/obj/GENERIC-VINUM
*** BUILD ABORTED ***
-----

This problem has existed for several weeks now.  I don't know if it
exists on other architectures, as I've only tried compiling Vinum
support on NetBSD/alpha.

Note that other Vinum files also suffer from warnings breaking the build:

-----
#   compile  vinuminterrupt.o
/usr/tools/bin/alpha--netbsd-gcc -mno-fp-regs -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Dalpha -I. -I/usr/src/sys/arch -I/usr/src/sys -nostdinc -DDIAGNOSTIC -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/dev/vinum/vinuminterrupt.c
/usr/src/sys/dev/vinum/vinuminterrupt.c: In function `complete_rqe':
/usr/src/sys/dev/vinum/vinuminterrupt.c:107: warning: long long int format, daddr_t arg (arg 5)
/usr/src/sys/dev/vinum/vinuminterrupt.c:118: warning: long long int format, daddr_t arg (arg 5)
/usr/src/sys/dev/vinum/vinuminterrupt.c:124: warning: long long int format, daddr_t arg (arg 4)
/usr/src/sys/dev/vinum/vinuminterrupt.c:130: warning: long long int format, daddr_t arg (arg 4)

*** Failed target:  vinuminterrupt.o
-----

-----
#   compile  vinumrevive.o
/usr/tools/bin/alpha--netbsd-gcc -mno-fp-regs -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-sign-compare -Dalpha -I. -I/usr/src/sys/arch -I/usr/src/sys -nostdinc -DDIAGNOSTIC -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/dev/vinum/vinumrevive.c
/usr/src/sys/dev/vinum/vinumrevive.c: In function `parityops':
/usr/src/sys/dev/vinum/vinumrevive.c:305: warning: long long unsigned int format, __off_t arg (arg 3)

*** Failed target:  vinumrevive.o
-----

This problem affects any (alpha?) kernel config that includes
"pseudo-device vinum", not just GENERIC.

>How-To-Repeat:

With recent sources, do the following:

cd /usr/src
cp /usr/src/sys/arch/alpha/conf/GENERIC /usr/src/sys/arch/alpha/conf/GENERIC-VINUM
echo 'pseudo-device vinum' >> /usr/src/sys/arch/alpha/conf/GENERIC-VINUM
./build.sh tools kernel=GENERIC-VINUM

>Fix:

Compiling vinumdaemon.c, vinuminterrupt.c, and vinumrevive.c without
"-Werror" allows the kernel build to complete.  (Eliminating those
warnings is a better way to ensure that happens, though.:)
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed 
State-Changed-By: jdolecek 
State-Changed-When: Tue Nov 25 20:12:24 UTC 2003 
State-Changed-Why:  
Fixed to compile. No idea if the code actually works on LP64, tho. 

>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.