Module Name:    src
Committed By:   martin
Date:           Wed Feb 26 20:49:27 UTC 2014

Modified Files:
        src/tests/lib/libc/sys: t_mlock.c

Log Message:
Remove hardcoded VM_MIN_ADDRESS and instead query current value via
sysctl vm.minaddress.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/lib/libc/sys/t_mlock.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/lib/libc/sys/t_mlock.c
diff -u src/tests/lib/libc/sys/t_mlock.c:1.4 src/tests/lib/libc/sys/t_mlock.c:1.5
--- src/tests/lib/libc/sys/t_mlock.c:1.4	Sat Sep  8 12:25:05 2012
+++ src/tests/lib/libc/sys/t_mlock.c	Wed Feb 26 20:49:26 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: t_mlock.c,v 1.4 2012/09/08 12:25:05 martin Exp $ */
+/* $NetBSD: t_mlock.c,v 1.5 2014/02/26 20:49:26 martin Exp $ */
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -29,13 +29,12 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: t_mlock.c,v 1.4 2012/09/08 12:25:05 martin Exp $");
+__RCSID("$NetBSD: t_mlock.c,v 1.5 2014/02/26 20:49:26 martin Exp $");
 
 #include <sys/mman.h>
 #include <sys/resource.h>
+#include <sys/sysctl.h>
 #include <sys/wait.h>
-#define _KMEMUSER
-#include <machine/vmparam.h>
 
 #include <errno.h>
 #include <atf-c.h>
@@ -80,13 +79,16 @@ ATF_TC_HEAD(mlock_err, tc)
 
 ATF_TC_BODY(mlock_err, tc)
 {
+	unsigned long vmin = 0;
+	size_t len = sizeof(vmin);
 	void *invalid_ptr;
 	int null_errno = ENOMEM;	/* error expected for NULL */
 
-#ifdef VM_MIN_ADDRESS
-	if ((uintptr_t)VM_MIN_ADDRESS > 0)
+	if (sysctlbyname("vm.minaddress", &vmin, &len, NULL, 0) != 0)
+		atf_tc_fail("failed to read vm.minaddress");
+
+	if (vmin > 0)
 		null_errno = EINVAL;	/* NULL is not inside user VM */
-#endif
 
 	errno = 0;
 	ATF_REQUIRE_ERRNO(null_errno, mlock(NULL, page) == -1);

Reply via email to