svn commit: r251504 - in stable/9: sys/dev/filemon sys/modules/filemon tools/regression/filemon
David E. O'Brien
obrien at FreeBSD.org
Fri Jun 7 19:02:34 UTC 2013
Author: obrien
Date: Fri Jun 7 19:02:32 2013
New Revision: 251504
URL: http://svnweb.freebsd.org/changeset/base/251504
Log:
MFC: r251368, r251382: Match the options of the kernel.
Modified:
stable/9/sys/dev/filemon/filemon.c
stable/9/sys/dev/filemon/filemon_wrapper.c
stable/9/sys/modules/filemon/Makefile
stable/9/tools/regression/filemon/Makefile
stable/9/tools/regression/filemon/filemontest.c
stable/9/tools/regression/filemon/test_script.sh
Directory Properties:
stable/9/ (props changed)
stable/9/sys/ (props changed)
stable/9/sys/dev/ (props changed)
stable/9/sys/modules/ (props changed)
stable/9/tools/ (props changed)
stable/9/tools/regression/ (props changed)
Modified: stable/9/sys/dev/filemon/filemon.c
==============================================================================
--- stable/9/sys/dev/filemon/filemon.c Fri Jun 7 18:46:47 2013 (r251503)
+++ stable/9/sys/dev/filemon/filemon.c Fri Jun 7 19:02:32 2013 (r251504)
@@ -28,6 +28,8 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
+#include "opt_compat.h"
+
#include <sys/param.h>
#include <sys/file.h>
#include <sys/systm.h>
Modified: stable/9/sys/dev/filemon/filemon_wrapper.c
==============================================================================
--- stable/9/sys/dev/filemon/filemon_wrapper.c Fri Jun 7 18:46:47 2013 (r251503)
+++ stable/9/sys/dev/filemon/filemon_wrapper.c Fri Jun 7 19:02:32 2013 (r251504)
@@ -28,6 +28,8 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
+#include "opt_compat.h"
+
#if __FreeBSD_version > 800032
#define FILEMON_HAS_LINKAT
#endif
Modified: stable/9/sys/modules/filemon/Makefile
==============================================================================
--- stable/9/sys/modules/filemon/Makefile Fri Jun 7 18:46:47 2013 (r251503)
+++ stable/9/sys/modules/filemon/Makefile Fri Jun 7 19:02:32 2013 (r251504)
@@ -4,6 +4,6 @@
KMOD= filemon
SRCS= ${KMOD}.c
-SRCS+= vnode_if.h opt_compat.h opt_capsicum.h
+SRCS+= opt_compat.h
.include <bsd.kmod.mk>
Modified: stable/9/tools/regression/filemon/Makefile
==============================================================================
--- stable/9/tools/regression/filemon/Makefile Fri Jun 7 18:46:47 2013 (r251503)
+++ stable/9/tools/regression/filemon/Makefile Fri Jun 7 19:02:32 2013 (r251504)
@@ -1,10 +1,20 @@
# $FreeBSD$
-BINS= \
+.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "ia64"
+BI_BITS=
+.endif
+
+_BINS= \
filemontest \
- timed-forkb
+ timed-forkb \
+ sizeof_long
+
+BINS= ${_BINS}
+.if defined(BI_BITS)
+BINS+= ${_BINS:C/$/32/g}
+.endif
-bins: filemontest timed-forkb
+bins: ${BINS}
all: bins
NO_MAN=
@@ -18,16 +28,25 @@ WITHOUT_CDDL=
CLEANFILES+= ${BINS}
-tests: bins
+
+.for f32 in ${BINS}
+${f32}32: ${f32}.c
+ ${CC} -m32 -DBIT=\"32\" -o ${.TARGET} ${CFLAGS} ${.ALLSRC}
+.endfor
+
+tests:
kldstat | grep filemon
- ${MAKE} test
- ./timed-forkb
+ @echo ""
+ ${MAKE} test01
+ ${MAKE} test02
+.if defined(BI_BITS)
+ ${MAKE} test32
+.endif
@echo "filemon(4) tests passed."
# Cannot use .OBJDIR -- 'filemontest' expects 'test_script.sh' in .
-#FILEMONTEST32= filemontest32
-test: filemontest clean-test
-.for BIN in filemontest ${FILEMONTEST32}
+test01: ${BINS:Mfilemontest*} ${BINS:Msizeof_long*} clean-test
+.for BIN in ${BINS:Mfilemontest}
cd ${.CURDIR} ; \
for A in 1 2 3 4 5 6 7 8 9 0; do \
for B in 1 2 3 4 5 6 7 8 9 0; do \
@@ -37,10 +56,31 @@ test: filemontest clean-test
done ;\
done
@cd ${.CURDIR} ; set +e ; egrep '(Start|Stop) .*\.' filemon_log.* | \
- grep -q -v '\.[0-9][0-9][0-9][0-9][0-9][0-9]$$' || echo "Time stamp format OK"
+ grep -q -v '\.[0-9][0-9][0-9][0-9][0-9][0-9]$$' || printf "Time stamp format OK\n\n"
.endfor
+ @cd ${.CURDIR} ; set +e ; for F in filemon_log.* ; do \
+ tail -1 $$F | grep -q '# Bye bye' || echo "$$F missing filemon bye-bye" ; \
+ NL=`wc -l $$F | awk '{print $$1}'` ; \
+ if [ "$${NL}" != 97 ]; then echo "$$F BAD, contains $${NL} lines" ; exit 1 ; fi ; done
+
+test02: ${BINS:Mtimed-forkb*}
+ @echo "Without filemon(4) active:"
+ ./timed-forkb
+ @echo "With filemon(4) active:"
+ script -f typescript-timed-forkb ./timed-forkb
+ ls -l typescript-timed-forkb.filemon
+
+test32: ${BINS:M*32*}
+ script -f typescript.${.TARGET} ./sizeof_long32 >/dev/null
+ @tail -1 typescript.test32.filemon | grep -q '# Bye bye' || (echo '32-bit comapt filemon Missing "bye-bye"' ; exit 1)
+ @egrep -q '^X [0-9]+ 0$$' typescript.test32.filemon || (echo "32-bit binary exit ERROR" ; exit 1)
+ @printf "filemon(4) 32bit FreeBSD support passed.\n\n"
+
+CLEANFILES+= typescript-timed-forkb typescript-timed-forkb.filemon
clean-test:
- cd ${.CURDIR} ; rm -f filemon_log.*
+ cd ${.CURDIR} ; rm -f filemon_log*.*
+
+clean-tests: clean-test
.include <bsd.prog.mk>
Modified: stable/9/tools/regression/filemon/filemontest.c
==============================================================================
--- stable/9/tools/regression/filemon/filemontest.c Fri Jun 7 18:46:47 2013 (r251503)
+++ stable/9/tools/regression/filemon/filemontest.c Fri Jun 7 19:02:32 2013 (r251504)
@@ -43,9 +43,13 @@ __FBSDID("$FreeBSD$");
* "test_script.sh" in the cwd.
*/
+#ifndef BIT
+#define BIT ""
+#endif
+
int
main(void) {
- char log_name[] = "filemon_log.XXXXXX";
+ char log_name[] = "filemon_log" BIT ".XXXXXX";
pid_t child;
int fm_fd, fm_log;
@@ -66,7 +70,7 @@ main(void) {
child = getpid();
if (ioctl(fm_fd, FILEMON_SET_PID, &child) == -1)
err(1, "Cannot set filemon PID to %d", child);
- system("./test_script.sh");
+ system("env BIT=" BIT " ./test_script.sh");
break;
case -1:
err(1, "Cannot fork");
Modified: stable/9/tools/regression/filemon/test_script.sh
==============================================================================
--- stable/9/tools/regression/filemon/test_script.sh Fri Jun 7 18:46:47 2013 (r251503)
+++ stable/9/tools/regression/filemon/test_script.sh Fri Jun 7 19:02:32 2013 (r251504)
@@ -41,3 +41,4 @@ ed -s $f1 < $f2
#w" | ed -s $f1
#rm $f1 $f2
uptime > /dev/null
+sizeof_long${BIT} > /dev/null
More information about the svn-src-stable-9
mailing list