aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sched/cpuacct.c
diff options
context:
space:
mode:
authorChengming Zhou <zhouchengming@bytedance.com>2022-02-20 13:14:26 +0800
committerPeter Zijlstra <peterz@infradead.org>2022-03-01 16:18:38 +0100
commit3eba0505d03a9c1eb30d40c2330c0880b22d1b3a (patch)
treee4bc99753f610481524943230951e9fcdf744208 /kernel/sched/cpuacct.c
parentsched/cpuacct: Optimize away RCU read lock (diff)
downloadlinux-dev-3eba0505d03a9c1eb30d40c2330c0880b22d1b3a.tar.xz
linux-dev-3eba0505d03a9c1eb30d40c2330c0880b22d1b3a.zip
sched/cpuacct: Remove redundant RCU read lock
The cpuacct_account_field() and it's cgroup v2 wrapper cgroup_account_cputime_field() is only called from cputime in task_group_account_field(), which is already in RCU read-side critical section. So remove these redundant RCU read lock. Suggested-by: Tejun Heo <tj@kernel.org> Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/20220220051426.5274-3-zhouchengming@bytedance.com
Diffstat (limited to '')
-rw-r--r--kernel/sched/cpuacct.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/sched/cpuacct.c b/kernel/sched/cpuacct.c
index f79f88456d72..d269ede84e85 100644
--- a/kernel/sched/cpuacct.c
+++ b/kernel/sched/cpuacct.c
@@ -352,10 +352,8 @@ void cpuacct_account_field(struct task_struct *tsk, int index, u64 val)
{
struct cpuacct *ca;
- rcu_read_lock();
for (ca = task_ca(tsk); ca != &root_cpuacct; ca = parent_ca(ca))
__this_cpu_add(ca->cpustat->cpustat[index], val);
- rcu_read_unlock();
}
struct cgroup_subsys cpuacct_cgrp_subsys = {