ZFS cannot be compiled by changing sleepq_*

Pawel Jakub Dawidek pjd at FreeBSD.org
Mon Dec 18 13:22:17 PST 2006


On Mon, Dec 18, 2006 at 01:22:29AM +0900, Norikatsu Shigemura wrote:
> Hi pjd!
> 
> 	In recently 7-current, by changing sleepq_* by kmacy,
> 	I cannot compile ZFS.
> 
> cc -O2 -fno-strict-aliasing -pipe -march=pentium3 -D_SOLARIS_C_SOURCE -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=2 -D_XOPEN_VERSION=600 -D_POSIX_C_SOURCE=200112L -D__BSD_VISIBLE=1 -D_STDC_C99 -DZFS_NO_ZONE -DZFS_MPSAFE -Werror -D_KERNEL -DKLD_MODULE -std=c99 -nostdinc -I-  -I/usr/src/sys/modules/zfs/../../i386/include -I/usr/src/sys/modules/zfs/../../compat/opensolaris -I/usr/src/sys/modules/zfs/../../contrib/opensolaris/uts/common/fs/zfs -I/usr/src/sys/modules/zfs/../../contrib/opensolaris/uts/common -I/usr/src/sys/modules/zfs/../.. -I/usr/src/sys/modules/zfs/../../i386/include -I/usr/src/sys/modules/zfs/../../../contrib/opensolaris/common/zfs -I/usr/src/sys/modules/zfs/../../../contrib/opensolaris/common -I/usr/include -I. -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common -g -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Wall -Wno-u!
>  nknown-pragmas -Wno-missing-braces -Wno-sign-compare -Wno-parentheses -Wno-uninitialized -Wno-implicit-function-declaration -Wno-unused -Wno-trigraphs -Wno-char-subscripts -Wno-switch -c /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c: In function `cv_wait_unlock':
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c:128: error: too few arguments to function `sleepq_add'
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c: In function `cv_timedwait':
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c:165: error: too few arguments to function `sleepq_add'
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c: In function `cv_signal':
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c:189: error: too few arguments to function `sleepq_signal'
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c: In function `cv_broadcast':
> /usr/src/sys/modules/zfs/../../compat/opensolaris/kern/opensolaris_condvar.c:205: error: too few arguments to function `sleepq_broadcast'
> *** Error code 1
> 
> Stop in /usr/src/sys/modules/zfs.

That's why there is a date in the patch name, so you can fetch FreeBSD
source from exactly that date:)

If you still want to compile it on recent HEAD, add '0' argument at the
end of those functions calls:

-sleepq_add(cvp, &mp->sx_object, cvp->cv_description, SLEEPQ_CONDVAR);
+sleepq_add(cvp, &mp->sx_object, cvp->cv_description, SLEEPQ_CONDVAR, 0);

-sleepq_add(cvp, &mp->sx_object, cvp->cv_description, SLEEPQ_CONDVAR);
+sleepq_add(cvp, &mp->sx_object, cvp->cv_description, SLEEPQ_CONDVAR, 0);

-sleepq_signal(cvp, SLEEPQ_CONDVAR, -1);
+sleepq_signal(cvp, SLEEPQ_CONDVAR, -1, 0);

-sleepq_broadcast(cvp, SLEEPQ_CONDVAR, -1);
+sleepq_broadcast(cvp, SLEEPQ_CONDVAR, -1, 0);

-- 
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd at FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20061218/e218e551/attachment.pgp


More information about the freebsd-fs mailing list