Re: [patch 7/8] vmscan: memcg-aware unevictable page rescue scanner

Michal Hocko
2011-06-13T09:42:09Z

On Wed 01-06-11 08:25:18, Johannes Weiner wrote:
> Once the per-memcg lru lists are exclusive, the unevictable page
> rescue scanner can no longer work on the global zone lru lists.
>
> This converts it to go through all memcgs and scan their respective
> unevictable lists instead.
>
> Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>

Just a minor naming thing.

Other than that looks good to me.
Reviewed-by: Michal Hocko <mhocko@suse.cz>

> --- a/include/linux/memcontrol.h
> +++ b/include/linux/memcontrol.h
[...]
> +struct page *mem_cgroup_lru_to_page(struct zone *zone, struct mem_cgroup *mem,
> + enum lru_list lru)
> +{
> + struct mem_cgroup_per_zone *mz;
> + struct page_cgroup *pc;
> +
> + mz = mem_cgroup_zoneinfo(mem, zone_to_nid(zone), zone_idx(zone));
> + pc = list_entry(mz->lists[lru].prev, struct page_cgroup, lru);
> + return lookup_cgroup_page(pc);
> +}
> +
[...]
> --- a/mm/vmscan.c
> +++ b/mm/vmscan.c
> @@ -3233,6 +3233,14 @@ void scan_mapping_unevictable_pages(struct address_space *mapping)
>
> }
>
> +static struct page *lru_tailpage(struct zone *zone, struct mem_cgroup *mem,
> + enum lru_list lru)
> +{
> + if (mem)
> + return mem_cgroup_lru_to_page(zone, mem, lru);
> + return lru_to_page(&zone->lru[lru].list);
> +}

Wouldn't it better to have those names consistent?
mem_cgroup_lru_tailpage vs lru_tailpage?

[...]
--
Michal Hocko
SUSE Labs
SUSE LINUX s.r.o.
Lihovarska 1060/12
190 00 Praha 9
Czech Republic