]>
git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blob - include/linux/taskstats_kern.h
1 /* taskstats_kern.h - kernel header for per-task statistics interface
3 * Copyright (C) Shailabh Nagar, IBM Corp. 2006
4 * (C) Balbir Singh, IBM Corp. 2006
7 #ifndef _LINUX_TASKSTATS_KERN_H
8 #define _LINUX_TASKSTATS_KERN_H
10 #include <linux/taskstats.h>
11 #include <linux/sched.h>
14 TASKSTATS_MSG_UNICAST
, /* send data only to requester */
15 TASKSTATS_MSG_MULTICAST
, /* send data to a group */
18 #ifdef CONFIG_TASKSTATS
19 extern kmem_cache_t
*taskstats_cache
;
21 static inline void taskstats_exit_alloc(struct taskstats
**ptidstats
,
22 struct taskstats
**ptgidstats
)
24 *ptidstats
= kmem_cache_zalloc(taskstats_cache
, SLAB_KERNEL
);
25 *ptgidstats
= kmem_cache_zalloc(taskstats_cache
, SLAB_KERNEL
);
28 static inline void taskstats_exit_free(struct taskstats
*tidstats
,
29 struct taskstats
*tgidstats
)
32 kmem_cache_free(taskstats_cache
, tidstats
);
34 kmem_cache_free(taskstats_cache
, tgidstats
);
37 extern void taskstats_exit_send(struct task_struct
*, struct taskstats
*,
39 extern void taskstats_init_early(void);
42 static inline void taskstats_exit_alloc(struct taskstats
**ptidstats
,
43 struct taskstats
**ptgidstats
)
45 static inline void taskstats_exit_free(struct taskstats
*ptidstats
,
46 struct taskstats
*ptgidstats
)
48 static inline void taskstats_exit_send(struct task_struct
*tsk
,
49 struct taskstats
*tidstats
,
50 struct taskstats
*tgidstats
)
52 static inline void taskstats_init_early(void)
54 #endif /* CONFIG_TASKSTATS */