summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2002-08-24 17:52:08 +0000
committeralc <alc@FreeBSD.org>2002-08-24 17:52:08 +0000
commit4fe20ff3d2bff5b6b6c25b05758cf52cfdd364dc (patch)
treeb70e8007654274787020cd1d27d1d8f2bf8d3b16
parent5e4153d48642b1dc2e6996b5e1ac0b0cce56e76d (diff)
downloadFreeBSD-src-4fe20ff3d2bff5b6b6c25b05758cf52cfdd364dc.zip
FreeBSD-src-4fe20ff3d2bff5b6b6c25b05758cf52cfdd364dc.tar.gz
o Use vm_object_lock() in place of Giant when manipulating a vm object
in vm_map_insert().
-rw-r--r--sys/vm/vm_map.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c
index eccc09b..857514b 100644
--- a/sys/vm/vm_map.c
+++ b/sys/vm/vm_map.c
@@ -764,11 +764,11 @@ vm_map_insert(vm_map_t map, vm_object_t object, vm_ooffset_t offset,
* process. We have to set or clear OBJ_ONEMAPPING
* appropriately.
*/
- mtx_lock(&Giant);
+ vm_object_lock(object);
if ((object->ref_count > 1) || (object->shadow_count != 0)) {
vm_object_clear_flag(object, OBJ_ONEMAPPING);
}
- mtx_unlock(&Giant);
+ vm_object_unlock(object);
}
else if ((prev_entry != &map->header) &&
(prev_entry->eflags == protoeflags) &&
OpenPOWER on IntegriCloud