summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_mmap.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2002-05-18 18:59:00 +0000
committeralc <alc@FreeBSD.org>2002-05-18 18:59:00 +0000
commitcad592a881e79398e4d11e0d03dc4bee57c5ccca (patch)
treed634f8230600e98558cf4e5526063cbd56283849 /sys/vm/vm_mmap.c
parentcc9d214396387bbb25066636ba75b7d3073f13fa (diff)
downloadFreeBSD-src-cad592a881e79398e4d11e0d03dc4bee57c5ccca.zip
FreeBSD-src-cad592a881e79398e4d11e0d03dc4bee57c5ccca.tar.gz
o Eliminate the acquisition and release of Giant from minherit(2).
(vm_map_inherit() no longer requires Giant to be held.)
Diffstat (limited to 'sys/vm/vm_mmap.c')
-rw-r--r--sys/vm/vm_mmap.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/sys/vm/vm_mmap.c b/sys/vm/vm_mmap.c
index fca62e7..750ab07 100644
--- a/sys/vm/vm_mmap.c
+++ b/sys/vm/vm_mmap.c
@@ -698,7 +698,6 @@ minherit(td, uap)
vm_offset_t addr;
vm_size_t size, pageoff;
vm_inherit_t inherit;
- int ret;
addr = (vm_offset_t)uap->addr;
size = uap->len;
@@ -711,12 +710,8 @@ minherit(td, uap)
if (addr + size < addr)
return (EINVAL);
- mtx_lock(&Giant);
- ret = vm_map_inherit(&td->td_proc->p_vmspace->vm_map, addr, addr+size,
- inherit);
- mtx_unlock(&Giant);
-
- switch (ret) {
+ switch (vm_map_inherit(&td->td_proc->p_vmspace->vm_map, addr,
+ addr + size, inherit)) {
case KERN_SUCCESS:
return (0);
case KERN_PROTECTION_FAILURE:
OpenPOWER on IntegriCloud