From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751222AbXCLSY0 (ORCPT ); Mon, 12 Mar 2007 14:24:26 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751280AbXCLSY0 (ORCPT ); Mon, 12 Mar 2007 14:24:26 -0400 Received: from hellhawk.shadowen.org ([80.68.90.175]:1587 "EHLO hellhawk.shadowen.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751222AbXCLSYZ (ORCPT ); Mon, 12 Mar 2007 14:24:25 -0400 From: Andy Whitcroft To: Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andy Whitcroft , Mel Gorman Subject: [PATCH 3/3] lumpy: only count taken pages as scanned References: InReply-To: Message-ID: Date: Mon, 12 Mar 2007 18:24:18 +0000 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org 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 Acked-by: Mel Gorman --- 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: