Messages in this thread | | | Date | Fri, 04 Apr 2008 13:58:12 +0530 | From | Balbir Singh <> | Subject | Re: [-mm] Add an owner to the mm_struct (v8) |
| |
Paul Menage wrote: > On Fri, Apr 4, 2008 at 1:05 AM, Balbir Singh <balbir@linux.vnet.ibm.com> wrote: >> After the thread group leader exits, it's moved to init_css_state by >> cgroup_exit(), thus all future charges from runnings threads would >> be redirected to the init_css_set's subsystem. > > And its uncharges, which is more of the problem I was getting at > earlier - surely when the mm is finally destroyed, all its virtual > address space charges will be uncharged from the root cgroup rather > than the correct cgroup, if we left the delayed group leader as the > owner? Which is why I think the group leader optimization is unsafe.
It won't uncharge for the memory controller from the root cgroup since each page has the mem_cgroup information associated with it. For other controllers, they'll need to monitor exit() callbacks to know when the leader is dead :( (sigh).
Not having the group leader optimization can introduce big overheads (consider thousands of tasks, with the group leader being the first one to exit).
-- Warm Regards, Balbir Singh Linux Technology Center IBM, ISTL
| |