diff options
author | Lai Jiangshan <laijs@cn.fujitsu.com> | 2009-01-07 21:07:40 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-01-08 11:31:03 -0500 |
commit | 7534432dcc3c654a8671b6b0cdffd1dbdbc73074 (patch) | |
tree | 65a5010c8bc5062d004fd1ede32e8f7ba64f6eec /kernel/cgroup.c | |
parent | 77efecd9e0526327548152df715ab8644ecb5ba0 (diff) |
cgroups: remove rcu_read_lock() in cgroupstats_build()
cgroup_iter_* do not need rcu_read_lock().
In cgroup_enable_task_cg_lists(), do_each_thread() and while_each_thread()
are protected by RCU, it's OK, for write_lock(&css_set_lock) implies
rcu_read_lock() in non-RT kernel.
If we need explicit rcu_read_lock(), we should add rcu_read_lock() in
cgroup_enable_task_cg_lists(), not cgroup_iter_*.
Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Acked-by: Paul Menage <menage@google.com>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Pavel Emelyanov <xemul@openvz.org>
Cc: Balbir Singh <balbir@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/cgroup.c')
-rw-r--r-- | kernel/cgroup.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c index 61e92c5867ea..f55af3daffc2 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c | |||
@@ -2055,7 +2055,6 @@ int cgroupstats_build(struct cgroupstats *stats, struct dentry *dentry) | |||
2055 | 2055 | ||
2056 | ret = 0; | 2056 | ret = 0; |
2057 | cgrp = dentry->d_fsdata; | 2057 | cgrp = dentry->d_fsdata; |
2058 | rcu_read_lock(); | ||
2059 | 2058 | ||
2060 | cgroup_iter_start(cgrp, &it); | 2059 | cgroup_iter_start(cgrp, &it); |
2061 | while ((tsk = cgroup_iter_next(cgrp, &it))) { | 2060 | while ((tsk = cgroup_iter_next(cgrp, &it))) { |
@@ -2080,7 +2079,6 @@ int cgroupstats_build(struct cgroupstats *stats, struct dentry *dentry) | |||
2080 | } | 2079 | } |
2081 | cgroup_iter_end(cgrp, &it); | 2080 | cgroup_iter_end(cgrp, &it); |
2082 | 2081 | ||
2083 | rcu_read_unlock(); | ||
2084 | err: | 2082 | err: |
2085 | return ret; | 2083 | return ret; |
2086 | } | 2084 | } |