summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorart <art@openbsd.org>2002-11-08 04:06:02 +0000
committerart <art@openbsd.org>2002-11-08 04:06:02 +0000
commit44e10c717a0e9534f9eac99bca61822ba6f9ee1e (patch)
treed7604099b3c1fb7e5d255dd8e1754c650ae500d2 /sys
parenthttp redirect support; adapted from NetBSD. (diff)
downloadwireguard-openbsd-44e10c717a0e9534f9eac99bca61822ba6f9ee1e.tar.xz
wireguard-openbsd-44e10c717a0e9534f9eac99bca61822ba6f9ee1e.zip
Don't uvm_useracc and then vslock. vslock is better at finding illegal mappings.
Diffstat (limited to 'sys')
-rw-r--r--sys/uvm/uvm_mmap.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/uvm/uvm_mmap.c b/sys/uvm/uvm_mmap.c
index b8f865d81ae..443931a96ef 100644
--- a/sys/uvm/uvm_mmap.c
+++ b/sys/uvm/uvm_mmap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uvm_mmap.c,v 1.36 2002/10/29 18:30:21 art Exp $ */
+/* $OpenBSD: uvm_mmap.c,v 1.37 2002/11/08 04:06:02 art Exp $ */
/* $NetBSD: uvm_mmap.c,v 1.49 2001/02/18 21:19:08 chs Exp $ */
/*
@@ -158,14 +158,12 @@ sys_mincore(p, v, retval)
npgs = len >> PAGE_SHIFT;
- if (uvm_useracc(vec, npgs, B_WRITE) == FALSE)
- return (EFAULT);
-
/*
* Lock down vec, so our returned status isn't outdated by
* storing the status byte for a page.
*/
- uvm_vslock(p, vec, npgs, VM_PROT_WRITE);
+ if ((error = uvm_vslock(p, vec, npgs, VM_PROT_WRITE)) != 0)
+ return (error);
vm_map_lock_read(map);