mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
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>
This commit is contained in:
parent
cfb766da54
commit
d2cc5ed694
8 changed files with 44 additions and 23 deletions
|
@ -22,6 +22,7 @@
|
|||
#include <linux/nsproxy.h>
|
||||
#include <linux/user_namespace.h>
|
||||
#include <linux/refcount.h>
|
||||
#include <linux/kernel_stat.h>
|
||||
|
||||
#include <linux/cgroup-defs.h>
|
||||
|
||||
|
@ -688,6 +689,43 @@ static inline void cgroup_path_from_kernfs_id(const union kernfs_node_id *id,
|
|||
char *buf, size_t buflen) {}
|
||||
#endif /* !CONFIG_CGROUPS */
|
||||
|
||||
/*
|
||||
* Basic resource stats.
|
||||
*/
|
||||
#ifdef CONFIG_CGROUPS
|
||||
|
||||
#ifdef CONFIG_CGROUP_CPUACCT
|
||||
void cpuacct_charge(struct task_struct *tsk, u64 cputime);
|
||||
void cpuacct_account_field(struct task_struct *tsk, int index, u64 val);
|
||||
#else
|
||||
static inline void cpuacct_charge(struct task_struct *tsk, u64 cputime) {}
|
||||
static inline void cpuacct_account_field(struct task_struct *tsk, int index,
|
||||
u64 val) {}
|
||||
#endif
|
||||
|
||||
static inline void cgroup_account_cputime(struct task_struct *task,
|
||||
u64 delta_exec)
|
||||
{
|
||||
cpuacct_charge(task, delta_exec);
|
||||
}
|
||||
|
||||
static inline void cgroup_account_cputime_field(struct task_struct *task,
|
||||
enum cpu_usage_stat index,
|
||||
u64 delta_exec)
|
||||
{
|
||||
cpuacct_account_field(task, index, delta_exec);
|
||||
}
|
||||
|
||||
#else /* CONFIG_CGROUPS */
|
||||
|
||||
static inline void cgroup_account_cputime(struct task_struct *task,
|
||||
u64 delta_exec) {}
|
||||
static inline void cgroup_account_cputime_field(struct task_struct *task,
|
||||
enum cpu_usage_stat index,
|
||||
u64 delta_exec) {}
|
||||
|
||||
#endif /* CONFIG_CGROUPS */
|
||||
|
||||
/*
|
||||
* sock->sk_cgrp_data handling. For more info, see sock_cgroup_data
|
||||
* definition in cgroup-defs.h.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue