aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sched.c')
-rw-r--r--kernel/sched.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/sched.c b/kernel/sched.c
index 186c6fd08acf..cc397aae5eae 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -9654,12 +9654,17 @@ static void cpuacct_charge(struct task_struct *tsk, u64 cputime)
9654 return; 9654 return;
9655 9655
9656 cpu = task_cpu(tsk); 9656 cpu = task_cpu(tsk);
9657
9658 rcu_read_lock();
9659
9657 ca = task_ca(tsk); 9660 ca = task_ca(tsk);
9658 9661
9659 for (; ca; ca = ca->parent) { 9662 for (; ca; ca = ca->parent) {
9660 u64 *cpuusage = percpu_ptr(ca->cpuusage, cpu); 9663 u64 *cpuusage = percpu_ptr(ca->cpuusage, cpu);
9661 *cpuusage += cputime; 9664 *cpuusage += cputime;
9662 } 9665 }
9666
9667 rcu_read_unlock();
9663} 9668}
9664 9669
9665struct cgroup_subsys cpuacct_subsys = { 9670struct cgroup_subsys cpuacct_subsys = {