Tejun Heo
4530eddb59
cgroup, memcg, cpuset: implement cgroup_taskset_for_each_leader()
...
It wasn't explicitly documented but, when a process is being migrated,
cpuset and memcg depend on cgroup_taskset_first() returning the
threadgroup leader; however, this approach is somewhat ghetto and
would no longer work for the planned multi-process migration.
This patch introduces explicit cgroup_taskset_for_each_leader() which
iterates over only the threadgroup leaders and replaces
cgroup_taskset_first() usages for accessing the leader with it.
This prepares both memcg and cpuset for multi-process migration. This
patch also updates the documentation for cgroup_taskset_for_each() to
clarify the iteration rules and removes comments mentioning task
ordering in tasksets.
v2: A previous patch which added threadgroup leader test was dropped.
Patch updated accordingly.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Zefan Li <lizefan@huawei.com>
Acked-by: Michal Hocko <mhocko@suse.cz>
Cc: Johannes Weiner <hannes@cmpxchg.org>
2015-09-22 12:46:53 -04:00
..
2015-08-22 14:54:55 +02:00
2015-09-10 18:56:14 -07:00
2014-10-29 16:33:15 -07:00
2015-09-08 15:35:28 -07:00
2015-04-14 16:49:03 -07:00
2015-07-17 16:39:54 -07:00
2015-06-24 17:49:44 -07:00
2015-08-14 15:56:32 -07:00
2015-09-08 15:35:28 -07:00
2014-12-13 12:42:48 -08:00
2015-09-10 13:29:01 -07:00
2015-09-08 15:35:28 -07:00
2015-09-11 15:21:34 -07:00
2015-06-02 08:33:35 -06:00
2012-01-03 22:54:56 -05:00
2015-09-08 15:35:28 -07:00
2015-08-16 13:02:47 -03:00
2015-06-24 17:49:45 -07:00
2015-09-04 16:54:41 -07:00
2014-08-06 18:01:22 -07:00
2015-09-10 13:29:01 -07:00
2015-02-11 17:06:02 -08:00
2015-09-08 15:35:28 -07:00
2015-09-10 13:29:01 -07:00
2011-07-26 16:49:47 -07:00
2015-09-08 15:35:28 -07:00
2015-02-10 14:30:31 -08:00
2015-09-11 16:42:39 -07:00
2015-01-08 15:10:52 -08:00
2014-10-09 22:25:50 -04:00
2014-06-06 16:08:18 -07:00
2015-09-10 13:29:01 -07:00
2015-04-15 16:35:18 -07:00
2015-09-08 15:35:28 -07:00
2015-08-31 12:36:10 -07:00
2015-09-08 15:35:28 -07:00
2015-09-11 16:42:39 -07:00
2015-09-08 15:35:28 -07:00
2015-09-22 12:46:53 -04:00
2015-09-08 14:35:59 -07:00
2015-09-10 13:29:01 -07:00
2015-09-10 13:29:01 -07:00
2015-09-08 15:35:28 -07:00
2015-09-08 15:35:28 -07:00
2015-09-08 15:35:28 -07:00
2015-09-10 13:29:01 -07:00
2015-02-11 17:06:06 -08:00
2015-09-04 16:54:41 -07:00
2015-06-30 19:44:56 -07:00
2015-09-10 13:29:01 -07:00
2014-02-21 08:50:17 +01:00
2015-09-10 13:29:01 -07:00
2015-02-11 17:06:02 -08:00
2015-09-04 16:54:41 -07:00
2015-09-04 16:54:41 -07:00
2015-02-10 14:30:31 -08:00
2015-06-30 19:44:55 -07:00
2015-09-10 13:29:01 -07:00
2015-09-08 15:35:28 -07:00
2015-09-08 17:52:23 -07:00
2015-02-11 17:06:02 -08:00
2015-09-10 13:29:01 -07:00
2015-09-10 13:29:01 -07:00
2015-08-13 12:32:00 -06:00
2015-09-08 15:35:28 -07:00
2015-07-17 16:39:54 -07:00
2015-09-10 18:56:14 -07:00
2015-03-25 16:20:30 -07:00
2014-09-02 14:46:05 -04:00
2014-09-02 14:46:02 -04:00
2015-07-21 11:31:00 -04:00
2015-06-24 17:49:44 -07:00
2015-04-11 22:27:12 -04:00
2011-10-31 09:20:11 -04:00
2015-06-02 08:33:35 -06:00
2015-09-10 13:29:01 -07:00
2015-09-08 15:35:28 -07:00
2015-09-08 15:35:28 -07:00
2015-09-08 15:35:28 -07:00
2015-09-04 16:54:41 -07:00
2015-09-08 15:35:28 -07:00
2015-09-08 15:35:28 -07:00
2014-01-21 16:19:47 -08:00
2014-04-07 16:35:54 -07:00
2014-12-10 17:41:09 -08:00
2015-09-08 15:35:28 -07:00
2015-09-10 13:29:01 -07:00
2015-09-08 15:35:28 -07:00
2015-06-02 08:33:33 -06:00
2015-09-04 16:54:41 -07:00
2015-04-15 16:35:19 -07:00
2014-12-13 12:42:48 -08:00
2015-04-15 16:35:18 -07:00
2014-12-02 17:32:07 -08:00
2015-09-08 15:35:28 -07:00
2015-02-11 17:06:07 -08:00
2015-02-12 18:54:10 -08:00
2015-09-08 15:35:28 -07:00
2015-09-10 13:29:01 -07:00
2015-09-08 15:35:28 -07:00
2015-09-10 13:29:01 -07:00