summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_page.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2004-07-10 22:12:49 +0000
committeralc <alc@FreeBSD.org>2004-07-10 22:12:49 +0000
commita7935ebbec93c734c7c6dfa5bf2903c92f9f1739 (patch)
tree6dd1e96531f0d47e43e4cafd4d6b2a706da4cf32 /sys/vm/vm_page.c
parent70e2b7a25f10334a0cb04d8cf76ca1270e6fd920 (diff)
downloadFreeBSD-src-a7935ebbec93c734c7c6dfa5bf2903c92f9f1739.zip
FreeBSD-src-a7935ebbec93c734c7c6dfa5bf2903c92f9f1739.tar.gz
Increase the scope of the page queues lock in vm_page_alloc() to cover
a diagnostic check that accesses the cache queue count.
Diffstat (limited to 'sys/vm/vm_page.c')
-rw-r--r--sys/vm/vm_page.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index ad959fe..3a62334 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -784,11 +784,11 @@ loop:
*/
vm_page_lock_queues();
if ((m = vm_page_select_cache(color)) == NULL) {
- vm_page_unlock_queues();
#if defined(DIAGNOSTIC)
if (cnt.v_cache_count > 0)
printf("vm_page_alloc(NORMAL): missing pages on cache queue: %d\n", cnt.v_cache_count);
#endif
+ vm_page_unlock_queues();
atomic_add_int(&vm_pageout_deficit, 1);
pagedaemon_wakeup();
return (NULL);
OpenPOWER on IntegriCloud