vmscan: pgmoved should be cleared after updating recent_rotated

pgmoved should be cleared after updating recent_rotated.

Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Cc: Rik van Riel <riel@redhat.com>
Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Daisuke Nishimura 2009-03-13 13:52:00 -07:00 committed by Linus Torvalds
parent 84814d642a
commit 1d885526f2

View File

@ -1262,7 +1262,6 @@ static void shrink_active_list(unsigned long nr_pages, struct zone *zone,
* Move the pages to the [file or anon] inactive list. * Move the pages to the [file or anon] inactive list.
*/ */
pagevec_init(&pvec, 1); pagevec_init(&pvec, 1);
pgmoved = 0;
lru = LRU_BASE + file * LRU_FILE; lru = LRU_BASE + file * LRU_FILE;
spin_lock_irq(&zone->lru_lock); spin_lock_irq(&zone->lru_lock);
@ -1274,6 +1273,7 @@ static void shrink_active_list(unsigned long nr_pages, struct zone *zone,
*/ */
reclaim_stat->recent_rotated[!!file] += pgmoved; reclaim_stat->recent_rotated[!!file] += pgmoved;
pgmoved = 0;
while (!list_empty(&l_inactive)) { while (!list_empty(&l_inactive)) {
page = lru_to_page(&l_inactive); page = lru_to_page(&l_inactive);
prefetchw_prev_lru_page(page, &l_inactive, flags); prefetchw_prev_lru_page(page, &l_inactive, flags);