[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <514BD56F.6050709@redhat.com>
Date: Thu, 21 Mar 2013 23:52:15 -0400
From: Rik van Riel <riel@...hat.com>
To: Will Huck <will.huckk@...il.com>
CC: Johannes Weiner <hannes@...xchg.org>, Mel Gorman <mgorman@...e.de>,
Linux-MM <linux-mm@...ck.org>, Jiri Slaby <jslaby@...e.cz>,
Valdis Kletnieks <Valdis.Kletnieks@...edu>,
Zlatko Calusic <zcalusic@...sync.net>,
dormando <dormando@...ia.net>,
Satoru Moriya <satoru.moriya@....com>,
Michal Hocko <mhocko@...e.cz>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 01/10] mm: vmscan: Limit the number of pages kswapd reclaims
at each priority
On 03/21/2013 08:05 PM, Will Huck wrote:
> One offline question, how to understand this in function balance_pgdat:
> /*
> * Do some background aging of the anon list, to give
> * pages a chance to be referenced before reclaiming.
> */
> age_acitve_anon(zone, &sc);
The anon lrus use a two-handed clock algorithm. New anonymous pages
start off on the active anon list. Older anonymous pages get moved
to the inactive anon list.
If they get referenced before they reach the end of the inactive anon
list, they get moved back to the active list.
If we need to swap something out and find a non-referenced page at the
end of the inactive anon list, we will swap it out.
In order to make good pageout decisions, pages need to stay on the
inactive anon list for a longer time, so they have plenty of time to
get referenced, before the reclaim code looks at them.
To achieve that, we will move some active anon pages to the inactive
anon list even when we do not want to swap anything out - as long as
the inactive anon list is below its target size.
Does that make sense?
--
All rights reversed
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists