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 14extern 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 18static 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 25extern void xacct_add_tsk(struct taskstats *stats, struct task_struct *p); 26extern void acct_update_integrals(struct task_struct *tsk); 27extern void acct_account_cputime(struct task_struct *tsk); 28extern void acct_clear_integrals(struct task_struct *tsk); 29#else 30static inline void xacct_add_tsk(struct taskstats *stats, struct task_struct *p) 31{} 32static inline void acct_update_integrals(struct task_struct *tsk) 33{} 34static inline void acct_account_cputime(struct task_struct *tsk) 35{} 36static inline void acct_clear_integrals(struct task_struct *tsk) 37{} 38#endif /* CONFIG_TASK_XACCT */ 39 40#endif 41 42 43