Files
linux/kernel
Thomas Gleixner a05bd4ba65 posix-timers: Make forward callback return s64
[ Upstream commit 6fec64e1c9 ]

The posix timer ti_overrun handling is broken because the forwarding
functions can return a huge number of overruns which does not fit in an
int. As a consequence timer_getoverrun(2) and siginfo::si_overrun can turn
into random number generators.

As a first step to address that let the timer_forward() callbacks return
the full 64 bit value.

Cast it to (int) temporarily until k_itimer::ti_overrun is converted to
64bit and the conversion to user space visible values is sanitized.

Reported-by: Team OWL337 <icytxw@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: John Stultz <john.stultz@linaro.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Link: https://lkml.kernel.org/r/20180626132704.922098090@linutronix.de
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-10-03 17:00:50 -07:00
..
2018-05-30 07:52:41 +02:00
2017-05-18 10:30:19 -06:00
2018-08-03 07:50:38 +02:00
2018-02-03 17:38:47 +01:00
2015-11-23 09:44:58 +01:00
2018-08-03 07:50:22 +02:00
2017-08-21 12:47:31 -07:00
2018-02-22 15:42:24 +01:00
2018-05-09 09:51:50 +02:00