]> Pileus Git - ~andy/linux/commit
cgroup: css iterations and css_from_dir() are safe under cgroup_mutex
authorTejun Heo <tj@kernel.org>
Fri, 6 Dec 2013 20:11:55 +0000 (15:11 -0500)
committerTejun Heo <tj@kernel.org>
Fri, 6 Dec 2013 20:11:55 +0000 (15:11 -0500)
commit87fb54f1b5a447662854f176eeb1ba92d5ffc1d5
tree1f71a8a0173d19d94db417f4773056669394cd78
parente58e1ca438a51e7e5a28f8c9fb342d6f908d92c6
cgroup: css iterations and css_from_dir() are safe under cgroup_mutex

Currently, all css iterations and css_from_dir() require RCU read lock
whether the caller is holding cgroup_mutex or not, which is
unnecessarily restrictive.  They are all safe to use under
cgroup_mutex without holding RCU read lock.

Factor out cgroup_assert_mutex_or_rcu_locked() from css_from_id() and
apply it to all css iteration functions and css_from_dir().

v2: cgroup_assert_mutex_or_rcu_locked() definition doesn't need to be
    inside CONFIG_PROVE_RCU ifdef as rcu_lockdep_assert() is always
    defined and conditionalized.  Move it outside of the ifdef block.

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