1 /* taskstats_kern.h - kernel header for per-task statistics interface
2  *
3  * Copyright (C) Shailabh Nagar, IBM Corp. 2006
4  *           (C) Balbir Singh,   IBM Corp. 2006
5  */
6 
7 #ifndef _LINUX_TASKSTATS_KERN_H
8 #define _LINUX_TASKSTATS_KERN_H
9 
10 #include <linux/taskstats.h>
11 #include <linux/sched/signal.h>
12 #include <linux/slab.h>
13 
14 #ifdef CONFIG_TASKSTATS
15 extern struct kmem_cache *taskstats_cache;
16 extern struct mutex taskstats_exit_mutex;
17 
18 static inline void taskstats_tgid_free(struct signal_struct *sig)
19 {
20 	if (sig->stats)
21 		kmem_cache_free(taskstats_cache, sig->stats);
22 }
23 
24 extern void taskstats_exit(struct task_struct *, int group_dead);
25 extern void taskstats_init_early(void);
26 #else
27 static inline void taskstats_exit(struct task_struct *tsk, int group_dead)
28 {}
29 static inline void taskstats_tgid_free(struct signal_struct *sig)
30 {}
31 static inline void taskstats_init_early(void)
32 {}
33 #endif /* CONFIG_TASKSTATS */
34 
35 #endif
36 
37