1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3 * tsacct_kern.h - kernel header for system accounting over taskstats interface
4 *
5 * Copyright (C) Jay Lan SGI
6 */
7
8 #ifndef _LINUX_TSACCT_KERN_H
9 #define _LINUX_TSACCT_KERN_H
10
11 #include <linux/taskstats.h>
12
13 #ifdef CONFIG_TASKSTATS
14 extern void bacct_add_tsk(struct user_namespace *user_ns,
15 struct pid_namespace *pid_ns,
16 struct taskstats *stats, struct task_struct *tsk);
17 #else
bacct_add_tsk(struct user_namespace * user_ns,struct pid_namespace * pid_ns,struct taskstats * stats,struct task_struct * tsk)18 static inline void bacct_add_tsk(struct user_namespace *user_ns,
19 struct pid_namespace *pid_ns,
20 struct taskstats *stats, struct task_struct *tsk)
21 {}
22 #endif /* CONFIG_TASKSTATS */
23
24 #ifdef CONFIG_TASK_XACCT
25 extern void xacct_add_tsk(struct taskstats *stats, struct task_struct *p);
26 extern void acct_update_integrals(struct task_struct *tsk);
27 extern void acct_account_cputime(struct task_struct *tsk);
28 extern void acct_clear_integrals(struct task_struct *tsk);
29 #else
xacct_add_tsk(struct taskstats * stats,struct task_struct * p)30 static inline void xacct_add_tsk(struct taskstats *stats, struct task_struct *p)
31 {}
acct_update_integrals(struct task_struct * tsk)32 static inline void acct_update_integrals(struct task_struct *tsk)
33 {}
acct_account_cputime(struct task_struct * tsk)34 static inline void acct_account_cputime(struct task_struct *tsk)
35 {}
acct_clear_integrals(struct task_struct * tsk)36 static inline void acct_clear_integrals(struct task_struct *tsk)
37 {}
38 #endif /* CONFIG_TASK_XACCT */
39
40 #endif
41
42
43