Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * tsacct_kern.h - kernel header for system accounting over taskstats interface
0004  *
0005  * Copyright (C) Jay Lan    SGI
0006  */
0007 
0008 #ifndef _LINUX_TSACCT_KERN_H
0009 #define _LINUX_TSACCT_KERN_H
0010 
0011 #include <linux/taskstats.h>
0012 
0013 #ifdef CONFIG_TASKSTATS
0014 extern void bacct_add_tsk(struct user_namespace *user_ns,
0015               struct pid_namespace *pid_ns,
0016               struct taskstats *stats, struct task_struct *tsk);
0017 #else
0018 static inline void bacct_add_tsk(struct user_namespace *user_ns,
0019                  struct pid_namespace *pid_ns,
0020                  struct taskstats *stats, struct task_struct *tsk)
0021 {}
0022 #endif /* CONFIG_TASKSTATS */
0023 
0024 #ifdef CONFIG_TASK_XACCT
0025 extern void xacct_add_tsk(struct taskstats *stats, struct task_struct *p);
0026 extern void acct_update_integrals(struct task_struct *tsk);
0027 extern void acct_account_cputime(struct task_struct *tsk);
0028 extern void acct_clear_integrals(struct task_struct *tsk);
0029 #else
0030 static inline void xacct_add_tsk(struct taskstats *stats, struct task_struct *p)
0031 {}
0032 static inline void acct_update_integrals(struct task_struct *tsk)
0033 {}
0034 static inline void acct_account_cputime(struct task_struct *tsk)
0035 {}
0036 static inline void acct_clear_integrals(struct task_struct *tsk)
0037 {}
0038 #endif /* CONFIG_TASK_XACCT */
0039 
0040 #endif
0041 
0042