El día Thursday, May 31, 2012 a las 11:34:55AM -0400, John Baldwin escribió: > > cc1: warnings being treated as errors > > if_vxn.c: In function 'vxn_load_multicast': > > if_vxn.c:719: warning: implicit declaration of function 'IF_ADDR_LOCK' > > if_vxn.c:719: warning: nested extern declaration of 'IF_ADDR_LOCK' > > [-Wnested-ext erns] > > if_vxn.c:746: warning: implicit declaration of function 'IF_ADDR_UNLOCK' > > if_vxn.c:746: warning: nested extern declaration of 'IF_ADDR_UNLOCK' > > [-Wnested-e xterns] > > *** [if_vxn.o] Error code 1 > > > It should be using if_mcast_rlock() and if_mcast_runlock() instead of using > those macros directly. This works all the way back to 8.0. > Thanks for your patch proposal; but using this it can't find the if_mcast_rlock() and if_mcast_runlock() functions declaration (and I don't see them in /usr/src/... ); based on the SVN diff of the kernel: http://svnweb.freebsd.org/base/head/sys/net/if_var.h?r1=231229&r2=233202&pathrev=233202 I came up with another proposal: *** modules/freebsd/vmxnet/net_compat.h.orig Wed Sep 21 20:25:15 2011 --- modules/freebsd/vmxnet/net_compat.h Tue Jun 5 15:13:55 2012 *************** *** 170,178 **** #if __FreeBSD_version < 505000 # define VXN_IF_ADDR_LOCK(_ifp) # define VXN_IF_ADDR_UNLOCK(_ifp) #else ! # define VXN_IF_ADDR_LOCK(_ifp) IF_ADDR_LOCK((_ifp)) ! # define VXN_IF_ADDR_UNLOCK(_ifp) IF_ADDR_UNLOCK((_ifp)) #endif #endif /* _VXN_NET_COMPAT_H_ */ --- 170,181 ---- #if __FreeBSD_version < 505000 # define VXN_IF_ADDR_LOCK(_ifp) # define VXN_IF_ADDR_UNLOCK(_ifp) + #elif __FreeBSD_version < 800000 + # define VXN_IF_ADDR_LOCK(_ifp) IF_ADDR_LOCK((_ifp)) + # define VXN_IF_ADDR_UNLOCK(_ifp) IF_ADDR_UNLOCK((_ifp)) #else ! # define VXN_IF_ADDR_LOCK(_ifp) IF_ADDR_WLOCK((_ifp)) ! # define VXN_IF_ADDR_UNLOCK(_ifp) IF_ADDR_WUNLOCK((_ifp)) #endif #endif /* _VXN_NET_COMPAT_H_ */ and using this it compiles fine; but later on it has another problem: # make install clean ... Making all in modules make VM_UNAME=10.0-CURRENT MV=mv RM=rm OVT_SOURCE_DIR=/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873 MODULEBUILDDIR=/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd -C "/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd/vmmemctl" make VM_UNAME=10.0-CURRENT MV=mv RM=rm OVT_SOURCE_DIR=/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873 MODULEBUILDDIR=/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd -C "/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd/vmxnet" make VM_UNAME=10.0-CURRENT MV=mv RM=rm OVT_SOURCE_DIR=/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873 MODULEBUILDDIR=/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd -C "/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd/vmblock" Warning: Object directory not changed from original /usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd/vmblock cc -O2 -pipe -Wall -Werror -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc -I/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/lib/include -I/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd/shared -I/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/freebsd/vmblock -I/usr/ports/emulators/open-vm-tools/work/open-vm-tools-8.6.0-425873/modules/shared/vmblock -I. -I_at_ -I_at_/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-sse -msoft-float -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -c vnops.c vnops.c: In function 'VMBlockVopInactive': vnops.c:1373: error: too many arguments to function 'vrecycle' *** [vnops.o] Error code 1 Thanks for another hint matthias -- Matthias Apitz e <guru_at_unixarea.de> - w http://www.unixarea.de/ UNIX since V7 on PDP-11, UNIX on mainframe since ESER 1055 (IBM /370) UNIX on x86 since SVR4.2 UnixWare 2.1.2, FreeBSD since 2.2.5Received on Tue Jun 05 2012 - 11:28:03 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:27 UTC