diff options
author | 2002-11-08 04:06:02 +0000 | |
---|---|---|
committer | 2002-11-08 04:06:02 +0000 | |
commit | 44e10c717a0e9534f9eac99bca61822ba6f9ee1e (patch) | |
tree | d7604099b3c1fb7e5d255dd8e1754c650ae500d2 | |
parent | http redirect support; adapted from NetBSD. (diff) | |
download | wireguard-openbsd-44e10c717a0e9534f9eac99bca61822ba6f9ee1e.tar.xz wireguard-openbsd-44e10c717a0e9534f9eac99bca61822ba6f9ee1e.zip |
Don't uvm_useracc and then vslock. vslock is better at finding illegal mappings.
-rw-r--r-- | sys/uvm/uvm_mmap.c | 8 |
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); |