diff options
| author | Tejun Heo <tj@kernel.org> | 2017-09-25 11:12:04 -0400 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2017-09-25 11:12:04 -0400 |
| commit | d2cc5ed6949085cfba30ec5228816cf6eb1d02b9 (patch) | |
| tree | 52cd7323c6a2068f4ec1b4a08ad8a3ad674f5c81 /kernel | |
| parent | cfb766da54d98ceb145e1bb0bd11c559569dcbfc (diff) | |
cpuacct: Introduce cgroup_account_cputime[_field]()
Introduce cgroup_account_cputime[_field]() which wrap cpuacct_charge()
and cgroup_account_field(). This doesn't introduce any functional
changes and will be used to add cgroup basic resource accounting.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@redhat.com>
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/sched/cpuacct.h | 17 | ||||
| -rw-r--r-- | kernel/sched/cputime.c | 2 | ||||
| -rw-r--r-- | kernel/sched/deadline.c | 2 | ||||
| -rw-r--r-- | kernel/sched/fair.c | 2 | ||||
| -rw-r--r-- | kernel/sched/rt.c | 2 | ||||
| -rw-r--r-- | kernel/sched/sched.h | 2 | ||||
| -rw-r--r-- | kernel/sched/stop_task.c | 2 |
7 files changed, 6 insertions, 23 deletions
diff --git a/kernel/sched/cpuacct.h b/kernel/sched/cpuacct.h deleted file mode 100644 index ba72807c73d4..000000000000 --- a/kernel/sched/cpuacct.h +++ /dev/null | |||
| @@ -1,17 +0,0 @@ | |||
| 1 | #ifdef CONFIG_CGROUP_CPUACCT | ||
| 2 | |||
| 3 | extern void cpuacct_charge(struct task_struct *tsk, u64 cputime); | ||
| 4 | extern void cpuacct_account_field(struct task_struct *tsk, int index, u64 val); | ||
| 5 | |||
| 6 | #else | ||
| 7 | |||
| 8 | static inline void cpuacct_charge(struct task_struct *tsk, u64 cputime) | ||
| 9 | { | ||
| 10 | } | ||
| 11 | |||
| 12 | static inline void | ||
| 13 | cpuacct_account_field(struct task_struct *tsk, int index, u64 val) | ||
| 14 | { | ||
| 15 | } | ||
| 16 | |||
| 17 | #endif | ||
diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c index 8839b6e8a104..e01b699bbd5b 100644 --- a/kernel/sched/cputime.c +++ b/kernel/sched/cputime.c | |||
| @@ -109,7 +109,7 @@ static inline void task_group_account_field(struct task_struct *p, int index, | |||
| 109 | */ | 109 | */ |
| 110 | __this_cpu_add(kernel_cpustat.cpustat[index], tmp); | 110 | __this_cpu_add(kernel_cpustat.cpustat[index], tmp); |
| 111 | 111 | ||
| 112 | cpuacct_account_field(p, index, tmp); | 112 | cgroup_account_cputime_field(p, index, tmp); |
| 113 | } | 113 | } |
| 114 | 114 | ||
| 115 | /* | 115 | /* |
diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c index 0191ec7667c3..abd913c1b99e 100644 --- a/kernel/sched/deadline.c +++ b/kernel/sched/deadline.c | |||
| @@ -1143,7 +1143,7 @@ static void update_curr_dl(struct rq *rq) | |||
| 1143 | account_group_exec_runtime(curr, delta_exec); | 1143 | account_group_exec_runtime(curr, delta_exec); |
| 1144 | 1144 | ||
| 1145 | curr->se.exec_start = rq_clock_task(rq); | 1145 | curr->se.exec_start = rq_clock_task(rq); |
| 1146 | cpuacct_charge(curr, delta_exec); | 1146 | cgroup_account_cputime(curr, delta_exec); |
| 1147 | 1147 | ||
| 1148 | sched_rt_avg_update(rq, delta_exec); | 1148 | sched_rt_avg_update(rq, delta_exec); |
| 1149 | 1149 | ||
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 70ba32e08a23..0ae69af95b8b 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c | |||
| @@ -851,7 +851,7 @@ static void update_curr(struct cfs_rq *cfs_rq) | |||
| 851 | struct task_struct *curtask = task_of(curr); | 851 | struct task_struct *curtask = task_of(curr); |
| 852 | 852 | ||
| 853 | trace_sched_stat_runtime(curtask, delta_exec, curr->vruntime); | 853 | trace_sched_stat_runtime(curtask, delta_exec, curr->vruntime); |
| 854 | cpuacct_charge(curtask, delta_exec); | 854 | cgroup_account_cputime(curtask, delta_exec); |
| 855 | account_group_exec_runtime(curtask, delta_exec); | 855 | account_group_exec_runtime(curtask, delta_exec); |
| 856 | } | 856 | } |
| 857 | 857 | ||
diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 0af5ca9e3e3f..fdc2c5d1f82e 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c | |||
| @@ -979,7 +979,7 @@ static void update_curr_rt(struct rq *rq) | |||
| 979 | account_group_exec_runtime(curr, delta_exec); | 979 | account_group_exec_runtime(curr, delta_exec); |
| 980 | 980 | ||
| 981 | curr->se.exec_start = rq_clock_task(rq); | 981 | curr->se.exec_start = rq_clock_task(rq); |
| 982 | cpuacct_charge(curr, delta_exec); | 982 | cgroup_account_cputime(curr, delta_exec); |
| 983 | 983 | ||
| 984 | sched_rt_avg_update(rq, delta_exec); | 984 | sched_rt_avg_update(rq, delta_exec); |
| 985 | 985 | ||
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 14db76cd496f..f0b98f978843 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h | |||
| @@ -29,6 +29,7 @@ | |||
| 29 | #include <linux/irq_work.h> | 29 | #include <linux/irq_work.h> |
| 30 | #include <linux/tick.h> | 30 | #include <linux/tick.h> |
| 31 | #include <linux/slab.h> | 31 | #include <linux/slab.h> |
| 32 | #include <linux/cgroup.h> | ||
| 32 | 33 | ||
| 33 | #ifdef CONFIG_PARAVIRT | 34 | #ifdef CONFIG_PARAVIRT |
| 34 | #include <asm/paravirt.h> | 35 | #include <asm/paravirt.h> |
| @@ -36,7 +37,6 @@ | |||
| 36 | 37 | ||
| 37 | #include "cpupri.h" | 38 | #include "cpupri.h" |
| 38 | #include "cpudeadline.h" | 39 | #include "cpudeadline.h" |
| 39 | #include "cpuacct.h" | ||
| 40 | 40 | ||
| 41 | #ifdef CONFIG_SCHED_DEBUG | 41 | #ifdef CONFIG_SCHED_DEBUG |
| 42 | # define SCHED_WARN_ON(x) WARN_ONCE(x, #x) | 42 | # define SCHED_WARN_ON(x) WARN_ONCE(x, #x) |
diff --git a/kernel/sched/stop_task.c b/kernel/sched/stop_task.c index 9f69fb630853..ec0bb5ab9024 100644 --- a/kernel/sched/stop_task.c +++ b/kernel/sched/stop_task.c | |||
| @@ -71,7 +71,7 @@ static void put_prev_task_stop(struct rq *rq, struct task_struct *prev) | |||
| 71 | account_group_exec_runtime(curr, delta_exec); | 71 | account_group_exec_runtime(curr, delta_exec); |
| 72 | 72 | ||
| 73 | curr->se.exec_start = rq_clock_task(rq); | 73 | curr->se.exec_start = rq_clock_task(rq); |
| 74 | cpuacct_charge(curr, delta_exec); | 74 | cgroup_account_cputime(curr, delta_exec); |
| 75 | } | 75 | } |
| 76 | 76 | ||
| 77 | static void task_tick_stop(struct rq *rq, struct task_struct *curr, int queued) | 77 | static void task_tick_stop(struct rq *rq, struct task_struct *curr, int queued) |
