Re: [patch 02/11] mm: vmscan: distinguish global reclaim from globalLRU scanning

From: Johannes Weiner
Date: Tue Sep 20 2011 - 04:52:56 EST


On Mon, Sep 19, 2011 at 03:23:44PM +0200, Michal Hocko wrote:
> On Mon 12-09-11 12:57:19, Johannes Weiner wrote:
> > The traditional zone reclaim code is scanning the per-zone LRU lists
> > during direct reclaim and kswapd, and the per-zone per-memory cgroup
> > LRU lists when reclaiming on behalf of a memory cgroup limit.
> >
> > Subsequent patches will convert the traditional reclaim code to
> > reclaim exclusively from the per-memory cgroup LRU lists. As a
> > result, using the predicate for which LRU list is scanned will no
> > longer be appropriate to tell global reclaim from limit reclaim.
> >
> > This patch adds a global_reclaim() predicate to tell direct/kswapd
> > reclaim from memory cgroup limit reclaim and substitutes it in all
> > places where currently scanning_global_lru() is used for that.
>
> I am wondering about vmscan_swappiness. Shouldn't it use global_reclaim
> instead?

Thanks for noticing, you are right. Too many rebases...

Signed-off-by: Johannes Weiner <jweiner@xxxxxxxxxx>
---

diff --git a/mm/vmscan.c b/mm/vmscan.c
index 354f125..c2b0903 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -1840,7 +1840,7 @@ static unsigned long shrink_list(enum lru_list lru, unsigned long nr_to_scan,

static int vmscan_swappiness(struct scan_control *sc)
{
- if (scanning_global_lru(sc))
+ if (global_reclaim(sc))
return vm_swappiness;
return mem_cgroup_swappiness(sc->mem_cgroup);
}
--
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/