On Mon 18-05-15 15:49:51, Tejun Heo wrote: > If move_charge flag is set, memcg tries to move memory charges to the > destnation css. The current implementation migrates memory whenever > any thread of a process is migrated making the behavior somewhat > arbitrary. Let's tie memory operations to the threadgroup leader so > that memory is migrated only when the leader is migrated. > > While this is a behavior change, given the inherent fuziness, this > change is not too likely to be noticed and allows us to clearly define > who owns the memory (always the leader) and helps the planned atomic > multi-process migration. > > Signed-off-by: Tejun Heo <tj@xxxxxxxxxx> > Cc: Johannes Weiner <hannes@xxxxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxx> OK, I guess the discussion with Oleg confirmed that the patch is not really needed because mm_struct->owner check implies thread group leader. This should be sufficient for your purpose Tejun, right? > --- > mm/memcontrol.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index b1b834d..74fcea3 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -5014,6 +5014,9 @@ static int mem_cgroup_can_attach(struct cgroup_subsys_state *css, > return 0; > > p = cgroup_taskset_first(tset); > + if (!thread_group_leader(p)) > + return 0; > + > from = mem_cgroup_from_task(p); > > VM_BUG_ON(from == memcg); > -- > 2.4.0 > -- Michal Hocko SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html