[PATCH 3/3] lumpy: only count taken pages as scanned

From: Andy Whitcroft
Date: Mon Mar 12 2007 - 14:24:45 EST



When scanning the order sized area around the tag page we pull all
pages of the matching active state; the non-matching pages are not
otherwise affected. We currently count these as scanned increasing
the apparent scan rates. Previously we would only count a page
scanned if it was actually removed from the LRU, either then being
reclaimed or rotated back onto the head of the LRU.

The effect of this is to cause reclaim to terminate artificially
early when the scan count is reached, reducing effectivness. Move to
counting only those pages we actually remove from the LRU as scanned.

Signed-off-by: Andy Whitcroft <apw@xxxxxxxxxxxx>
Acked-by: Mel Gorman <mel@xxxxxxxxx>
---
diff --git a/mm/vmscan.c b/mm/vmscan.c
index d7a0860..c3dc544 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -732,11 +732,11 @@ static unsigned long isolate_lru_pages(unsigned long nr_to_scan,
/* Check that we have not crossed a zone boundary. */
if (unlikely(page_zone_id(cursor_page) != zone_id))
continue;
- scan++;
switch (__isolate_lru_page(cursor_page, active)) {
case 0:
list_move(&cursor_page->lru, dst);
nr_taken++;
+ scan++;
break;

case -EBUSY:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/