lkml.org 
[lkml]   [2009]   [Jun]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/3] remove wrong rotation at lumpy reclaim
On Thu, Jun 11, 2009 at 05:00:18PM +0900, KAMEZAWA Hiroyuki wrote:
> From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
>
> At lumpy reclaim, a page failed to be taken by __isolate_lru_page() can
> be pushed back to "src" list by list_move(). But the page may not be from
> "src" list. And list_move() itself is unnecessary because the page is
> not on top of LRU. Then, leave it as it is if __isolate_lru_page() fails.
>
> This patch doesn't change the logic as "we should exit loop or not" and
> just fixes buggy list_move().
>
> Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
> ---
> mm/vmscan.c | 9 +--------
> 1 file changed, 1 insertion(+), 8 deletions(-)
>
> Index: lumpy-reclaim-trial/mm/vmscan.c
> ===================================================================
> --- lumpy-reclaim-trial.orig/mm/vmscan.c
> +++ lumpy-reclaim-trial/mm/vmscan.c
> @@ -936,18 +936,11 @@ static unsigned long isolate_lru_pages(u
> /* Check that we have not crossed a zone boundary. */
> if (unlikely(page_zone_id(cursor_page) != zone_id))
> continue;
> - switch (__isolate_lru_page(cursor_page, mode, file)) {
> - case 0:
> + if (__isolate_lru_page(cursor_page, mode, file) == 0) {
> list_move(&cursor_page->lru, dst);
> nr_taken++;
> scan++;
> break;
> -
> - case -EBUSY:
> - /* else it is being freed elsewhere */
> - list_move(&cursor_page->lru, src);
> - default:
> - break; /* ! on LRU or wrong list */
> }
> }
> }
>

At very minimum, this avoids an unnecessary reshuffling of the LRU lists
during lumpy reclaim. Thanks

Acked-by: Mel Gorman <mel@csn.ul.ie>

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab


\
 
 \ /
  Last update: 2009-06-11 17:09    [W:0.160 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site