On Tue, May 19, 2015 at 12:51:06AM +1000, Aleksa Sarai wrote: > This adds a macro to get the css of a tset (using task_get_css()) by > just grabbing a ref to the first item in the tset (since there is a > guarantee that all tasks in a tset share a css). > > This is in preparation for implementing the pids cgroup subsystem. > > Signed-off-by: Aleksa Sarai <cyphar@xxxxxxxxxx> > --- > include/linux/cgroup.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h > index 886a883..773846d 100644 > --- a/include/linux/cgroup.h > +++ b/include/linux/cgroup.h > @@ -639,6 +639,18 @@ struct task_struct *cgroup_taskset_next(struct cgroup_taskset *tset); > for ((task) = cgroup_taskset_first((tset)); (task); \ > (task) = cgroup_taskset_next((tset))) > > +/** > + * tset_get_css - obtain and get css for (tset, subsys_id) > + * @tset: target taskset > + * @subsys_id: target subsystem id > + * > + * Since all of the tasks in a taskset are guaranteed to have the same css, it's > + * safe to grab the ref of just the first task's css and treat it as though you > + * have a ref on the taskset's "collective" css. > + */ > +#define tset_get_css(tset, subsys_id) \ > + task_get_css(cgroup_taskset_first(tset), subsys_id) They aren't tho. It depends on the hierarchy configuration. csses belonging to hierarchies which aren't the current migration target may differ. Thanks. -- tejun -- 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