Re: [PATCH v6 0/9] memcg: per cgroup dirty page accounting

From: Johannes Weiner
Date: Fri Mar 18 2011 - 10:47:45 EST


On Fri, Mar 18, 2011 at 10:29:50AM -0400, Vivek Goyal wrote:
> On Thu, Mar 17, 2011 at 01:43:50PM +0100, Johannes Weiner wrote:
>
> [..]
> > So structures roughly like this:
> >
> > struct mem_cgroup {
> > ...
> > /* key is struct backing_dev_info * */
> > struct rb_root memcg_bdis;
> > };
> >
> > struct memcg_bdi {
> > /* key is struct address_space * */
> > struct rb_root memcg_mappings;
> > struct rb_node node;
> > };
> >
> > struct memcg_mapping {
> > struct address_space *mapping;
> > struct mem_cgroup *memcg;
> > struct rb_node node;
> > atomic_t count;
> > };
> >
> > struct page_cgroup {
> > ...
> > struct memcg_mapping *memcg_mapping;
> > };
>
> Johannes, didn't you want page->mapping to point to memcg_mapping instead
> of increasing the size of page_cgroup?

Initially, yes, but this is far less invasive. We don't increase
page_cgroup, though: memcg_mapping contains the pointer to struct
mem_cgroup, it can replace pc->memcg for now.
--
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/