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