cgroup: introduce task_css_is_root()
authorTejun Heo <tj@kernel.org>
Thu, 8 May 2014 01:31:17 +0000 (21:31 -0400)
committerTejun Heo <tj@kernel.org>
Tue, 13 May 2014 15:26:27 +0000 (11:26 -0400)
commit5024ae29cd285ce9e736776414da645d3a91828c
tree0afef891029af86947869d25b8a3c0e10b6ead69
parent36c38fb7144aa941dc072ba8f58b2dbe509c0345
cgroup: introduce task_css_is_root()

Determining the css of a task usually requires RCU read lock as that's
the only thing which keeps the returned css accessible till its
reference is acquired; however, testing whether a task belongs to the
root can be performed without dereferencing the returned css by
comparing the returned pointer against the root one in init_css_set[]
which never changes.

Implement task_css_is_root() which can be invoked in any context.
This will be used by the scheduled cgroup_freezer change.

v2: cgroup no longer supports modular controllers.  No need to export
    init_css_set.  Pointed out by Li.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Li Zefan <lizefan@huawei.com>
include/linux/cgroup.h
kernel/cgroup.c