diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-09-04 06:29:54 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-09-04 06:29:54 -0400 |
commit | 3784fd7316d336f2ba79b6c7c8168d08eff8a714 (patch) | |
tree | 3019c37f1ba588f252d1a9f1ef33beb5d3d683b1 /include/linux/delayacct.h | |
parent | 7c440e7990ea22c0c374c59a5fbd79b0579d1517 (diff) | |
parent | c336923b668fdcf0312efbec3b44895d713f4d81 (diff) | |
download | linux-3.10-3784fd7316d336f2ba79b6c7c8168d08eff8a714.tar.gz linux-3.10-3784fd7316d336f2ba79b6c7c8168d08eff8a714.tar.bz2 linux-3.10-3784fd7316d336f2ba79b6c7c8168d08eff8a714.zip |
Merge branch 'master' into upstream
Diffstat (limited to 'include/linux/delayacct.h')
-rw-r--r-- | include/linux/delayacct.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/include/linux/delayacct.h b/include/linux/delayacct.h index 11487b6e712..561e2a77805 100644 --- a/include/linux/delayacct.h +++ b/include/linux/delayacct.h @@ -59,10 +59,14 @@ static inline void delayacct_tsk_init(struct task_struct *tsk) __delayacct_tsk_init(tsk); } -static inline void delayacct_tsk_exit(struct task_struct *tsk) +/* Free tsk->delays. Called from bad fork and __put_task_struct + * where there's no risk of tsk->delays being accessed elsewhere + */ +static inline void delayacct_tsk_free(struct task_struct *tsk) { if (tsk->delays) - __delayacct_tsk_exit(tsk); + kmem_cache_free(delayacct_cache, tsk->delays); + tsk->delays = NULL; } static inline void delayacct_blkio_start(void) @@ -101,7 +105,7 @@ static inline void delayacct_init(void) {} static inline void delayacct_tsk_init(struct task_struct *tsk) {} -static inline void delayacct_tsk_exit(struct task_struct *tsk) +static inline void delayacct_tsk_free(struct task_struct *tsk) {} static inline void delayacct_blkio_start(void) {} |