summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2017-02-26 10:58:01 +0000
committerkib <kib@FreeBSD.org>2017-02-26 10:58:01 +0000
commit1173a6966c215fd6f21eaf062897bc8e0ced31e1 (patch)
treef84288d2e94e1efd86c781a35091b079d6368818
parent9819b36e61acfd5bb1d5649008d08e8a4426eb55 (diff)
downloadFreeBSD-src-1173a6966c215fd6f21eaf062897bc8e0ced31e1.zip
FreeBSD-src-1173a6966c215fd6f21eaf062897bc8e0ced31e1.tar.gz
MFC r313688:
Switch copyout_map() to use vm_mmap_object() instead of vm_mmap().
-rw-r--r--sys/kern/subr_uio.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/kern/subr_uio.c b/sys/kern/subr_uio.c
index c856a6e..c00a901 100644
--- a/sys/kern/subr_uio.c
+++ b/sys/kern/subr_uio.c
@@ -468,10 +468,11 @@ copyout_map(struct thread *td, vm_offset_t *addr, size_t sz)
/* round size up to page boundary */
size = (vm_size_t)round_page(sz);
-
- error = vm_mmap(&vms->vm_map, addr, size, VM_PROT_READ | VM_PROT_WRITE,
- VM_PROT_ALL, MAP_PRIVATE | MAP_ANON, OBJT_DEFAULT, NULL, 0);
-
+ if (size == 0)
+ return (EINVAL);
+ error = vm_mmap_object(&vms->vm_map, addr, size, VM_PROT_READ |
+ VM_PROT_WRITE, VM_PROT_ALL, MAP_PRIVATE | MAP_ANON, NULL, 0,
+ FALSE, td);
return (error);
}
OpenPOWER on IntegriCloud