summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_fault.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2010-05-04 15:55:41 +0000
committeralc <alc@FreeBSD.org>2010-05-04 15:55:41 +0000
commitc9aaa1e2a21afcea58a3bec5e8cffd6652fbaa25 (patch)
tree08dad4596fb8ef71c441ab83e48cd31b53d4c26f /sys/vm/vm_fault.c
parentfbfe456f9697050cf749467e9b47e3aad49f09bb (diff)
downloadFreeBSD-src-c9aaa1e2a21afcea58a3bec5e8cffd6652fbaa25.zip
FreeBSD-src-c9aaa1e2a21afcea58a3bec5e8cffd6652fbaa25.tar.gz
Add page locking to the vm_page_cow* functions.
Push down the acquisition and release of the page queues lock into vm_page_wire(). Reviewed by: kib
Diffstat (limited to 'sys/vm/vm_fault.c')
-rw-r--r--sys/vm/vm_fault.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index f925594..142a9ef 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -315,8 +315,6 @@ RetryFault:;
(fault_type & VM_PROT_WRITE) &&
(fs.object == fs.first_object)) {
vm_page_cowfault(fs.m);
- vm_page_unlock_queues();
- vm_page_unlock(fs.m);
unlock_and_deallocate(&fs);
goto RetryFault;
}
@@ -797,9 +795,7 @@ vnode_locked:
if (wired && (fault_flags &
VM_FAULT_CHANGE_WIRING) == 0) {
vm_page_lock(fs.first_m);
- vm_page_lock_queues();
vm_page_wire(fs.first_m);
- vm_page_unlock_queues();
vm_page_unlock(fs.first_m);
vm_page_lock(fs.m);
@@ -1285,9 +1281,7 @@ vm_fault_copy_entry(vm_map_t dst_map, vm_map_t src_map,
vm_page_unlock(src_m);
vm_page_lock(dst_m);
- vm_page_lock_queues();
vm_page_wire(dst_m);
- vm_page_unlock_queues();
vm_page_unlock(dst_m);
} else {
vm_page_lock(dst_m);
OpenPOWER on IntegriCloud