diff options
author | kib <kib@FreeBSD.org> | 2012-07-18 21:47:50 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2012-07-18 21:47:50 +0000 |
commit | 80c3756a6f386ec5654ddabd54a15722d514e1ef (patch) | |
tree | 2752a86ba0efc10a21de938b5ab0a9703339aa2f /sys/vm/vm_pageout.c | |
parent | bb7c4949aef17fee9e981baa595a8d47e9e93fc2 (diff) | |
download | FreeBSD-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.c | 6 |
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); /* |