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.h> 12 13 #ifdef CONFIG_TASKSTATS 14 extern struct kmem_cache *taskstats_cache; 15 extern struct mutex taskstats_exit_mutex; 16 17 static inline void taskstats_tgid_init(struct signal_struct *sig) 18 { 19 sig->stats = NULL; 20 } 21 22 static inline void taskstats_tgid_free(struct signal_struct *sig) 23 { 24 if (sig->stats) 25 kmem_cache_free(taskstats_cache, sig->stats); 26 } 27 28 extern void taskstats_exit(struct task_struct *, int group_dead); 29 extern void taskstats_init_early(void); 30 #else 31 static inline void taskstats_exit(struct task_struct *tsk, int group_dead) 32 {} 33 static inline void taskstats_tgid_init(struct signal_struct *sig) 34 {} 35 static inline void taskstats_tgid_free(struct signal_struct *sig) 36 {} 37 static inline void taskstats_init_early(void) 38 {} 39 #endif /* CONFIG_TASKSTATS */ 40 41 #endif 42 43