From: Andrei Vagin <ava...@gmail.com> commit 07d7e12091f4ab869cc6a4bb276399057e73b0b3 upstream.
To calculate a remaining time, it's required to subtract the current time from the expiration time. In alarm_timer_remaining() the arguments of ktime_sub are swapped. Fixes: d653d8457c76 ("alarmtimer: Implement remaining callback") Signed-off-by: Andrei Vagin <ava...@gmail.com> Signed-off-by: Thomas Gleixner <t...@linutronix.de> Reviewed-by: Mukesh Ojha <mo...@codeaurora.org> Cc: Stephen Boyd <sb...@kernel.org> Cc: John Stultz <john.stu...@linaro.org> Cc: sta...@vger.kernel.org Link: https://lkml.kernel.org/r/20190408041542.26338-1-ava...@gmail.com Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> --- kernel/time/alarmtimer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/kernel/time/alarmtimer.c +++ b/kernel/time/alarmtimer.c @@ -597,7 +597,7 @@ static ktime_t alarm_timer_remaining(str { struct alarm *alarm = &timr->it.alarm.alarmtimer; - return ktime_sub(now, alarm->node.expires); + return ktime_sub(alarm->node.expires, now); } /**