summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_fault.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2010-05-07 15:49:43 +0000
committeralc <alc@FreeBSD.org>2010-05-07 15:49:43 +0000
commit3c8033e013869592babb928a6c8f569b9933f50d (patch)
treec95d39437ab8d8d820e5bf3ff157c2c97e2cf7d5 /sys/vm/vm_fault.c
parentc4496831804ff579b314fe34248c4da316de7fb7 (diff)
downloadFreeBSD-src-3c8033e013869592babb928a6c8f569b9933f50d.zip
FreeBSD-src-3c8033e013869592babb928a6c8f569b9933f50d.tar.gz
Push down the page queues lock into vm_page_activate().
Diffstat (limited to 'sys/vm/vm_fault.c')
-rw-r--r--sys/vm/vm_fault.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index 0088248..05c3228 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -937,7 +937,6 @@ vnode_locked:
vm_fault_prefault(fs.map->pmap, vaddr, fs.entry);
VM_OBJECT_LOCK(fs.object);
vm_page_lock(fs.m);
- vm_page_lock_queues();
/*
* If the page is not wired down, then put it where the pageout daemon
@@ -948,10 +947,8 @@ vnode_locked:
vm_page_wire(fs.m);
else
vm_page_unwire(fs.m, 1);
- } else {
+ } else
vm_page_activate(fs.m);
- }
- vm_page_unlock_queues();
vm_page_unlock(fs.m);
vm_page_wakeup(fs.m);
@@ -1267,9 +1264,7 @@ vm_fault_copy_entry(vm_map_t dst_map, vm_map_t src_map,
vm_page_unlock(dst_m);
} else {
vm_page_lock(dst_m);
- vm_page_lock_queues();
vm_page_activate(dst_m);
- vm_page_unlock_queues();
vm_page_unlock(dst_m);
}
vm_page_wakeup(dst_m);
OpenPOWER on IntegriCloud