diff options
author | Li Zefan <lizefan@huawei.com> | 2013-06-09 17:16:29 +0800 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2013-06-13 10:48:32 -0700 |
commit | 5c5cc62321d9df7a9a608346fc649c4528380c8f (patch) | |
tree | e7e04867979f4f6920d6d1244057112ceb235390 /include/linux | |
parent | 070b57fcacc9dfc23a180290079078373fb697e1 (diff) |
cpuset: allow to keep tasks in empty cpusets
To achieve this:
- We call update_tasks_cpumask/nodemask() for empty cpusets when
hotplug happens, instead of moving tasks out of them.
- When a cpuset's masks are changed by writing cpuset.cpus/mems,
we also update tasks in child cpusets which are empty.
v3:
- do propagation work in one place for both hotplug and unplug
v2:
- drop rcu_read_lock before calling update_task_nodemask() and
update_task_cpumask(), instead of using workqueue.
- add documentation in include/linux/cgroup.h
Signed-off-by: Li Zefan <lizefan@huawei.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/cgroup.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index d0ad3794b94..53e81a61be5 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h @@ -277,6 +277,10 @@ enum { * * - Remount is disallowed. * + * - cpuset: tasks will be kept in empty cpusets when hotplug happens + * and take masks of ancestors with non-empty cpus/mems, instead of + * being moved to an ancestor. + * * - memcg: use_hierarchy is on by default and the cgroup file for * the flag is not created. * |