diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2009-02-10 10:37:31 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-02-11 08:04:19 -0500 |
commit | 3fccfd67df79c6351a156eb25a7a514e5f39c4d9 (patch) | |
tree | de4776e69e197119ac64097f3ff6239a55ad77be /include/linux/sched.h | |
parent | ff08f76d738d0ec0f334b187f61e160caa321d54 (diff) |
timers: split process wide cpu clocks/timers, fix
To decrease the chance of a missed enable, always enable the timer when we
sample it, we'll always disable it when we find that there are no active timers
in the jiffy tick.
This fixes a flood of warnings reported by Mike Galbraith.
Reported-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 79392916d6c9..5d10fa0b6002 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -2209,6 +2209,7 @@ void thread_group_cputimer(struct task_struct *tsk, struct task_cputime *times) | |||
2209 | unsigned long flags; | 2209 | unsigned long flags; |
2210 | 2210 | ||
2211 | spin_lock_irqsave(&cputimer->lock, flags); | 2211 | spin_lock_irqsave(&cputimer->lock, flags); |
2212 | cputimer->running = 1; | ||
2212 | *times = cputimer->cputime; | 2213 | *times = cputimer->cputime; |
2213 | spin_unlock_irqrestore(&cputimer->lock, flags); | 2214 | spin_unlock_irqrestore(&cputimer->lock, flags); |
2214 | } | 2215 | } |