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