diff options
author | alc <alc@FreeBSD.org> | 2003-04-19 01:43:32 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-04-19 01:43:32 +0000 |
commit | e37afba96387ec58606af3c86344fe2f1aebb304 (patch) | |
tree | 0e275f92297cd9eb139a407245edc015b602de67 /sys/vm/vm_map.c | |
parent | fd0b7458f7472725f89753b87faecf6af4393acf (diff) | |
download | FreeBSD-src-e37afba96387ec58606af3c86344fe2f1aebb304.zip FreeBSD-src-e37afba96387ec58606af3c86344fe2f1aebb304.tar.gz |
o Update locking around vm_object_page_remove() in vm_map_clean()
to use the new macros.
o Remove unnecessary increment and decrement of the vm_object's
reference count in vm_map_clean().
Diffstat (limited to 'sys/vm/vm_map.c')
-rw-r--r-- | sys/vm/vm_map.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c index d971402..ca1cac5 100644 --- a/sys/vm/vm_map.c +++ b/sys/vm/vm_map.c @@ -1981,14 +1981,12 @@ vm_map_clean( if (object && invalidate && ((object->type == OBJT_VNODE) || (object->type == OBJT_DEVICE))) { - vm_object_reference(object); - vm_object_lock(object); + VM_OBJECT_LOCK(object); vm_object_page_remove(object, OFF_TO_IDX(offset), OFF_TO_IDX(offset + size + PAGE_MASK), FALSE); - vm_object_unlock(object); - vm_object_deallocate(object); + VM_OBJECT_UNLOCK(object); } start += size; } |