summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2013-08-15 22:29:49 +0000
committerjeff <jeff@FreeBSD.org>2013-08-15 22:29:49 +0000
commit478dc3171b093432679512127107ffd6b9dcc270 (patch)
tree2674d0ff276b9cc426e3ada8a6fc2a10a5dc5a90
parentde579b60c166fa1a5f73083d4910751927cbb45a (diff)
downloadFreeBSD-src-478dc3171b093432679512127107ffd6b9dcc270.zip
FreeBSD-src-478dc3171b093432679512127107ffd6b9dcc270.tar.gz
- Fix bug in r254304. Use the ACTIVE pq count for the active list
processing, not inactive. This was the result of a bad merge. Reported by: pho Sponsored by: EMC / Isilon Storage Division
-rw-r--r--sys/vm/vm_pageout.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c
index 50df6b5..5051089 100644
--- a/sys/vm/vm_pageout.c
+++ b/sys/vm/vm_pageout.c
@@ -1286,6 +1286,8 @@ relock_queues:
* Compute the number of pages we want to try to move from the
* active queue to the inactive queue.
*/
+ pq = &vmd->vmd_pagequeues[PQ_ACTIVE];
+ vm_pagequeue_lock(pq);
pcount = pq->pq_cnt;
page_shortage = vm_paging_target() +
cnt.v_inactive_target - cnt.v_inactive_count;
@@ -1304,8 +1306,6 @@ relock_queues:
* track the per-page activity counter and use it to locate
* deactivation candidates.
*/
- pq = &vmd->vmd_pagequeues[PQ_ACTIVE];
- vm_pagequeue_lock(pq);
m = TAILQ_FIRST(&pq->pq_pl);
while ((m != NULL) && (pcount-- > 0) && (page_shortage > 0)) {
OpenPOWER on IntegriCloud