summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2017-02-12 20:54:31 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2017-02-12 20:54:31 +0000
commitf2277b64ec547dae1aa5220dd396cc4c498cdc2c (patch)
treec8bfdf83ba66f35422846fc360127a135094dd89
parent909bacfc5919eba11333b2edd23589458b5a7e2a (diff)
Notes
-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 7e4f1b81949b..01df8fffdb99 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);
}