Subject: Re: [PATCH v3 1/2] cgroup: pass struct mem_cgroup instead of struct cgroup to socket memcg

From: KAMEZAWA Hiroyuki <[email-masked]>
Date: Tue, 10 Apr 2012 11:42:52 +0900

(2012/04/10 7:36), Glauber Costa wrote:

> The only reason cgroup was used, was to be consistent with the populate()
> interface. Now that we're getting rid of it, not only we no longer need
> it, but we also *can't* call it this way.
> 
> Since we will no longer rely on populate(), this will be called from
> create(). During create, the association between struct mem_cgroup
> and struct cgroup does not yet exist, since cgroup internals hasn't
> yet initialized its bookkeeping. This means we would not be able
> to draw the memcg pointer from the cgroup pointer in these
> functions, which is highly undesirable.
> 
> Signed-off-by: Glauber Costa <[email-masked]>
> CC: Tejun Heo <[email-masked]>
> CC: Li Zefan <[email-masked]>
> CC: Kamezawa Hiroyuki <[email-masked]>
> CC: Johannes Weiner <[email-masked]>
> CC: Michal Hocko <[email-masked]>

Acked-by: KAMEZAWA Hiroyuki <[email-masked]>