From c27eb2e0ab0b5acd96a4b62288976f1b72789b3e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 30 Apr 2013 18:53:55 +0200 Subject: [PATCH] time/timekeeping: shadow tk->cycle_last together with clock->cycle_last Commit ("timekeeping: Store cycle_last value in timekeeper struct as well") introduced a tk-> based cycle_last values which needs to be reset on resume path as well or else ktime_get() will think that time increased. Signed-off-by: Sebastian Andrzej Siewior --- kernel/time/timekeeping.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -770,7 +770,7 @@ static void timekeeping_resume(void) __timekeeping_inject_sleeptime(tk, &ts); } /* re-base the last cycle value */ - tk->clock->cycle_last = tk->clock->read(tk->clock); + tk->cycle_last = tk->clock->cycle_last = tk->clock->read(tk->clock); tk->ntp_error = 0; timekeeping_suspended = 0; timekeeping_update(tk, false);