Date: Sun, 12 Apr 2015 05:25:11 +0000 (UTC) From: Garrett Cooper <ngie@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r281448 - in user/ngie/more-tests: etc/mtree tests/sys tests/sys/mmap tools/regression/mmap Message-ID: <201504120525.t3C5PBAa067450@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ngie Date: Sun Apr 12 05:25:11 2015 New Revision: 281448 URL: https://svnweb.freebsd.org/changeset/base/281448 Log: Integrate tools/regression/mmap into the FreeBSD test suite as tests/sys/mmap Added: user/ngie/more-tests/tests/sys/mmap/ - copied from r281446, user/ngie/more-tests/tools/regression/mmap/ Deleted: user/ngie/more-tests/tools/regression/mmap/ Modified: user/ngie/more-tests/etc/mtree/BSD.tests.dist user/ngie/more-tests/tests/sys/Makefile user/ngie/more-tests/tests/sys/mmap/Makefile user/ngie/more-tests/tests/sys/mmap/mmap.c Modified: user/ngie/more-tests/etc/mtree/BSD.tests.dist ============================================================================== --- user/ngie/more-tests/etc/mtree/BSD.tests.dist Sun Apr 12 05:09:05 2015 (r281447) +++ user/ngie/more-tests/etc/mtree/BSD.tests.dist Sun Apr 12 05:25:11 2015 (r281448) @@ -360,6 +360,8 @@ .. kqueue .. + mmmap + .. mqueue .. netinet Modified: user/ngie/more-tests/tests/sys/Makefile ============================================================================== --- user/ngie/more-tests/tests/sys/Makefile Sun Apr 12 05:09:05 2015 (r281447) +++ user/ngie/more-tests/tests/sys/Makefile Sun Apr 12 05:25:11 2015 (r281448) @@ -8,6 +8,7 @@ TESTS_SUBDIRS+= file TESTS_SUBDIRS+= kern TESTS_SUBDIRS+= kqueue TESTS_SUBDIRS+= mqueue +TESTS_SUBDIRS+= mmap TESTS_SUBDIRS+= netinet TESTS_SUBDIRS+= opencrypto TESTS_SUBDIRS+= posixshm Modified: user/ngie/more-tests/tests/sys/mmap/Makefile ============================================================================== --- user/ngie/more-tests/tools/regression/mmap/Makefile Sun Apr 12 01:14:43 2015 (r281446) +++ user/ngie/more-tests/tests/sys/mmap/Makefile Sun Apr 12 05:25:11 2015 (r281448) @@ -1,6 +1,7 @@ # $FreeBSD$ -PROG= mmap -MAN= +TESTSDIR= ${TESTSBASE}/sys/mmap -.include <bsd.prog.mk> +TAP_TESTS_C+= mmap + +.include <bsd.test.mk> Modified: user/ngie/more-tests/tests/sys/mmap/mmap.c ============================================================================== --- user/ngie/more-tests/tools/regression/mmap/mmap.c Sun Apr 12 01:14:43 2015 (r281446) +++ user/ngie/more-tests/tests/sys/mmap/mmap.c Sun Apr 12 05:25:11 2015 (r281448) @@ -31,10 +31,11 @@ #include <sys/sysctl.h> #include <sys/types.h> +#include <errno.h> #include <stdio.h> -#include <err.h> +#include <string.h> -const struct tests { +static const struct { void *addr; int ok[2]; /* Depending on security.bsd.map_at_zero {0, !=0}. */ } tests[] = { @@ -49,6 +50,8 @@ const struct tests { { (void *)(0x1000 * PAGE_SIZE), { 1, 1 } }, }; +#define MAP_AT_ZERO "security.bsd.map_at_zero" + int main(void) { @@ -60,37 +63,43 @@ main(void) /* Get the current sysctl value of security.bsd.map_at_zero. */ len = sizeof(mib) / sizeof(*mib); - if (sysctlnametomib("security.bsd.map_at_zero", mib, &len) == -1) - err(1, "sysctlnametomib(security.bsd.map_at_zero)"); + if (sysctlnametomib(MAP_AT_ZERO, mib, &len) == -1) { + printf("1..0 # SKIP: sysctlnametomib(\"%s\") failed: %s\n", + MAP_AT_ZERO, strerror(errno)); + return (0); + } len = sizeof(map_at_zero); - if (sysctl(mib, 3, &map_at_zero, &len, NULL, 0) == -1) - err(1, "sysctl(security.bsd.map_at_zero)"); + if (sysctl(mib, 3, &map_at_zero, &len, NULL, 0) == -1) { + printf("1..0 # SKIP: sysctl for %s failed: %s\n", MAP_AT_ZERO, + strerror(errno)); + return (0); + } /* Normalize to 0 or 1 for array access. */ map_at_zero = !!map_at_zero; - for (i=0; i < (sizeof(tests) / sizeof(*tests)); i++) { + printf("1..%zu\n", nitems(tests)); + for (i = 0; i < (int)nitems(tests); i++) { p = mmap((void *)tests[i].addr, PAGE_SIZE, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_ANON | MAP_FIXED, -1, 0); if (p == MAP_FAILED) { if (tests[i].ok[map_at_zero] != 0) error++; - warnx("%s: mmap(%p, ...) failed.", - (tests[i].ok[map_at_zero] == 0) ? "OK " : "ERR", - tests[i].addr); + printf("%sok %d # mmap(%p, ...) failed\n", + tests[i].ok[map_at_zero] == 0 ? "" : "not ", + i + 1, + tests[i].addr); } else { if (tests[i].ok[map_at_zero] != 1) error++; - warnx("%s: mmap(%p, ...) succeeded: p=%p", - (tests[i].ok[map_at_zero] == 1) ? "OK " : "ERR", + printf("%sok %d # mmap(%p, ...) succeeded: p=%p\n", + tests[i].ok[map_at_zero] == 1 ? "" : "not ", + i + 1, tests[i].addr, p); } } - if (error) - err(1, "---\nERROR: %d unexpected results.", error); - return (error != 0); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201504120525.t3C5PBAa067450>