diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2008-02-13 03:20:43 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2008-02-14 16:08:30 -0500 |
commit | 5a7780e725d1bb4c3094fcc12f1c5c5faea1e988 (patch) | |
tree | 50fc5cde427f3854d0b84ba1037fef3fb4693e11 /include/linux | |
parent | e760e716d47b48caf98da348368fd41b4a9b9e7e (diff) |
hrtimer: check relative timeouts for overflow
Various user space callers ask for relative timeouts. While we fixed
that overflow issue in hrtimer_start(), the sites which convert
relative user space values to absolute timeouts themself were uncovered.
Instead of putting overflow checks into each place add a function
which does the sanity checking and convert all affected callers to use
it.
Thanks to Frans Pop, who reported the problem and tested the fixes.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ingo Molnar <mingo@elte.hu>
Tested-by: Frans Pop <elendil@planet.nl>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/ktime.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/ktime.h b/include/linux/ktime.h index 36c542b70c6d..2cd7fa73d1af 100644 --- a/include/linux/ktime.h +++ b/include/linux/ktime.h | |||
@@ -310,6 +310,8 @@ static inline ktime_t ktime_sub_us(const ktime_t kt, const u64 usec) | |||
310 | return ktime_sub_ns(kt, usec * 1000); | 310 | return ktime_sub_ns(kt, usec * 1000); |
311 | } | 311 | } |
312 | 312 | ||
313 | extern ktime_t ktime_add_safe(const ktime_t lhs, const ktime_t rhs); | ||
314 | |||
313 | /* | 315 | /* |
314 | * The resolution of the clocks. The resolution value is returned in | 316 | * The resolution of the clocks. The resolution value is returned in |
315 | * the clock_getres() system call to give application programmers an | 317 | * the clock_getres() system call to give application programmers an |