Messages in this thread | | | From | Paul Menage <> | Date | Thu, 25 Aug 2011 01:51:39 -0700 | Subject | Re: [PATCH 2/6] cgroup: improve old cgroup handling in cgroup_attach_proc() |
| |
On Tue, Aug 23, 2011 at 3:19 PM, Tejun Heo <tj@kernel.org> wrote: > cgroup_attach_proc() behaves differently from cgroup_attach_task() in > the following aspects. > > * All hooks are invoked even if no task is actually being moved. > > * ->can_attach_task() is called for all tasks in the group whether the > new cgrp is different from the current cgrp or not; however, > ->attach_task() is skipped if new equals new. This makes the calls > asymmetric. > > This patch improves old cgroup handling in cgroup_attach_proc() by > looking up the current cgroup at the head, recording it in the flex > array along with the task itself, and using it to remove the above two > differences. This will also ease further changes.
While I'm all in favour of making things more consistent, do we need such a big change?
In particular, making the group flex-array entries contain both a task and a cgroup appears to be only necessary in order to skip tasks where new_cgroup == old_cgroup. Can't we get the same effect by simply leaving all such tasks out of the flex-array in the first place?
Paul -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |