summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_fault.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2010-05-09 16:55:42 +0000
committeralc <alc@FreeBSD.org>2010-05-09 16:55:42 +0000
commit684507e744872ba607fb04d7ec1b56c7ef4c68a4 (patch)
tree0769e9225de4bdb78ef077a6f3fd4eb41390f8c5 /sys/vm/vm_fault.c
parent7e9950f550edacc2c51a0923ec07925da9807830 (diff)
downloadFreeBSD-src-684507e744872ba607fb04d7ec1b56c7ef4c68a4.zip
FreeBSD-src-684507e744872ba607fb04d7ec1b56c7ef4c68a4.tar.gz
Push down the acquisition of the page queues lock into vm_pageq_remove().
(This eliminates a surprising number of page queues lock acquisitions by vm_fault() because the page's queue is PQ_NONE and thus the page queues lock is not needed to remove the page from a queue.)
Diffstat (limited to 'sys/vm/vm_fault.c')
-rw-r--r--sys/vm/vm_fault.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index e28c16c..c1132cb 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -363,9 +363,7 @@ RetryFault:;
vm_object_deallocate(fs.first_object);
goto RetryFault;
}
- vm_page_lock_queues();
vm_pageq_remove(fs.m);
- vm_page_unlock_queues();
vm_page_unlock(fs.m);
/*
OpenPOWER on IntegriCloud