aboutsummaryrefslogtreecommitdiff
path: root/sys/vm
diff options
context:
space:
mode:
authorTor Egge <tegge@FreeBSD.org>2006-03-02 21:38:38 +0000
committerTor Egge <tegge@FreeBSD.org>2006-03-02 21:38:38 +0000
commit6b085058e4179f8bfd9ce1534f13cfa8ea2236a6 (patch)
treee140b3bff78ecd5cef24135c739b68b08e1ed7fc /sys/vm
parentb983aac762295c7c30ea6a426a6046468a8b2740 (diff)
Notes
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_contig.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/vm/vm_contig.c b/sys/vm/vm_contig.c
index 4b37aa875833..488a16c76597 100644
--- a/sys/vm/vm_contig.c
+++ b/sys/vm/vm_contig.c
@@ -107,12 +107,14 @@ vm_contig_launder_page(vm_page_t m)
if (object->type == OBJT_VNODE) {
vm_page_unlock_queues();
vp = object->handle;
+ vm_object_reference_locked(object);
VM_OBJECT_UNLOCK(object);
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, curthread);
VM_OBJECT_LOCK(object);
vm_object_page_clean(object, 0, 0, OBJPC_SYNC);
VM_OBJECT_UNLOCK(object);
VOP_UNLOCK(vp, 0, curthread);
+ vm_object_deallocate(object);
vm_page_lock_queues();
return (0);
} else if (object->type == OBJT_SWAP ||