diff options
author | Oleg Nesterov <oleg@tv-sign.ru> | 2006-12-06 23:36:51 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-07 11:39:34 -0500 |
commit | 115085ea0794c0f339be8f9d25505c7f9861d824 (patch) | |
tree | 0b69f20ab8ab53702a4c94c11927e60fa058b509 /include/linux | |
parent | 128fb95650b3273a8dc9ba5514b6fe7db8ea30bf (diff) |
[PATCH] taskstats: cleanup do_exit() path
do_exit:
taskstats_exit_alloc()
...
taskstats_exit_send()
taskstats_exit_free()
I think this is not good, let it be a single function exported to the core
kernel, taskstats_exit(), which does alloc + send + free itself.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: Balbir Singh <balbir@in.ibm.com>
Cc: Shailabh Nagar <nagar@watson.ibm.com>
Cc: Jay Lan <jlan@engr.sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/taskstats_kern.h | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/include/linux/taskstats_kern.h b/include/linux/taskstats_kern.h index ce8a912e5426..f1261a532496 100644 --- a/include/linux/taskstats_kern.h +++ b/include/linux/taskstats_kern.h | |||
@@ -15,12 +15,6 @@ | |||
15 | extern struct kmem_cache *taskstats_cache; | 15 | extern struct kmem_cache *taskstats_cache; |
16 | extern struct mutex taskstats_exit_mutex; | 16 | extern struct mutex taskstats_exit_mutex; |
17 | 17 | ||
18 | static inline void taskstats_exit_free(struct taskstats *tidstats) | ||
19 | { | ||
20 | if (tidstats) | ||
21 | kmem_cache_free(taskstats_cache, tidstats); | ||
22 | } | ||
23 | |||
24 | static inline void taskstats_tgid_init(struct signal_struct *sig) | 18 | static inline void taskstats_tgid_init(struct signal_struct *sig) |
25 | { | 19 | { |
26 | sig->stats = NULL; | 20 | sig->stats = NULL; |
@@ -54,17 +48,10 @@ static inline void taskstats_tgid_free(struct signal_struct *sig) | |||
54 | kmem_cache_free(taskstats_cache, sig->stats); | 48 | kmem_cache_free(taskstats_cache, sig->stats); |
55 | } | 49 | } |
56 | 50 | ||
57 | extern void taskstats_exit_alloc(struct taskstats **, unsigned int *); | 51 | extern void taskstats_exit(struct task_struct *, int group_dead); |
58 | extern void taskstats_exit_send(struct task_struct *, struct taskstats *, int, unsigned int); | ||
59 | extern void taskstats_init_early(void); | 52 | extern void taskstats_init_early(void); |
60 | #else | 53 | #else |
61 | static inline void taskstats_exit_alloc(struct taskstats **ptidstats, unsigned int *mycpu) | 54 | static inline void taskstats_exit(struct task_struct *tsk, int group_dead) |
62 | {} | ||
63 | static inline void taskstats_exit_free(struct taskstats *ptidstats) | ||
64 | {} | ||
65 | static inline void taskstats_exit_send(struct task_struct *tsk, | ||
66 | struct taskstats *tidstats, | ||
67 | int group_dead, unsigned int cpu) | ||
68 | {} | 55 | {} |
69 | static inline void taskstats_tgid_init(struct signal_struct *sig) | 56 | static inline void taskstats_tgid_init(struct signal_struct *sig) |
70 | {} | 57 | {} |