summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_pageout.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2012-07-18 21:47:50 +0000
committerkib <kib@FreeBSD.org>2012-07-18 21:47:50 +0000
commit80c3756a6f386ec5654ddabd54a15722d514e1ef (patch)
tree2752a86ba0efc10a21de938b5ab0a9703339aa2f /sys/vm/vm_pageout.c
parentbb7c4949aef17fee9e981baa595a8d47e9e93fc2 (diff)
downloadFreeBSD-src-80c3756a6f386ec5654ddabd54a15722d514e1ef.zip
FreeBSD-src-80c3756a6f386ec5654ddabd54a15722d514e1ef.tar.gz
Do not restart scan of the inactive queue when non-inactive page is
found. Rather, we shall not find such pages on inactive queue at all. Requested and reviewed by: alc MFC after: 2 weeks
Diffstat (limited to 'sys/vm/vm_pageout.c')
-rw-r--r--sys/vm/vm_pageout.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c
index 05bbbab..7643d97 100644
--- a/sys/vm/vm_pageout.c
+++ b/sys/vm/vm_pageout.c
@@ -921,7 +921,6 @@ vm_pageout_scan(int pass)
maxlaunder = 10000;
vm_page_lock_queues();
queues_locked = TRUE;
-rescan0:
addl_page_shortage = addl_page_shortage_init;
maxscan = cnt.v_inactive_count;
@@ -930,12 +929,9 @@ rescan0:
m = next) {
KASSERT(queues_locked, ("unlocked queues"));
mtx_assert(&vm_page_queue_mtx, MA_OWNED);
+ KASSERT(m->queue == PQ_INACTIVE, ("Inactive queue %p", m));
cnt.v_pdpages++;
-
- if (m->queue != PQ_INACTIVE)
- goto rescan0;
-
next = TAILQ_NEXT(m, pageq);
/*
OpenPOWER on IntegriCloud