Re: [PATCH 1/12] memcg avoid accounting special mappings not on LRU

From: KAMEZAWA Hiroyuki
Date: Fri Sep 26 2008 - 05:49:06 EST


On Fri, 26 Sep 2008 15:02:13 +0530
Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:

> KAMEZAWA Hiroyuki wrote:
> > On Fri, 26 Sep 2008 13:55:54 +0530
> > Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:
> >
> >> KAMEZAWA Hiroyuki wrote:
> >>> There are not-on-LRU pages which can be mapped and they are not worth to
> >>> be accounted. (becasue we can't shrink them and need dirty codes to handle
> >>> specical case) We'd like to make use of usual objrmap/radix-tree's protcol
> >>> and don't want to account out-of-vm's control pages.
> >>>
> >>> When special_mapping_fault() is called, page->mapping is tend to be NULL
> >>> and it's charged as Anonymous page.
> >>> insert_page() also handles some special pages from drivers.
> >>>
> >>> This patch is for avoiding to account special pages.
> >>>
> >> Hmm... I am a little concerned that with these changes actual usage will much
> >> more than what we report in memory.usage_in_bytes. Why not move them to
> >> non-reclaimable LRU list as unevictable pages (once those patches go in, we can
> >> push this as well).
> >
> > Because they are not on LRU ...i.e. !PageLRU(page)
> >
>
> I understand.. Thanks for clarifying.. my concern is w.r.t accounting, we
> account it in RSS (file RSS).
>
Yes. Because page->mapping is NULL, there are accounted as RSS.

AFAIK, what bad about !PageLRU(page) is..
1. we skips !PageLRU(page) in force_empty. and we cannot reduce account.
2. we don't know we can trust that page is treated as usual LRU page.

I'll update description.

Thanks,
-Kame





--
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/