diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2009-07-29 06:15:27 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-08-03 08:48:35 -0400 |
commit | 8356b5f9c424e5831715abbce747197c30d1fd71 (patch) | |
tree | 87de74cc86f6eebf88eba9a4c335614787d984c5 /include/linux | |
parent | 42c4ab41a176ee784c0f28c0b29025a8fc34f05a (diff) |
itimers: Fix periodic tics precision
Measure ITIMER_PROF and ITIMER_VIRT timers interval error
between real ticks and requested by user. Take it into account
when scheduling next tick.
This patch introduce possibility where time between two
consecutive tics is smaller then requested interval, it
preserve however dependency that n tick is generated not
earlier than n*interval time - counting from the beginning of
periodic signal generation.
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
LKML-Reference: <1248862529-6063-3-git-send-email-sgruszka@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/sched.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 3b3efaddd953..a069e65e8bb7 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -473,6 +473,8 @@ struct pacct_struct { | |||
473 | struct cpu_itimer { | 473 | struct cpu_itimer { |
474 | cputime_t expires; | 474 | cputime_t expires; |
475 | cputime_t incr; | 475 | cputime_t incr; |
476 | u32 error; | ||
477 | u32 incr_error; | ||
476 | }; | 478 | }; |
477 | 479 | ||
478 | /** | 480 | /** |