Commit-ID: 77c675ba18836802f6b73d2d773481d06ebc0f04 Gitweb: http://git.kernel.org/tip/77c675ba18836802f6b73d2d773481d06ebc0f04 Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx> AuthorDate: Mon, 22 Apr 2013 09:37:04 +0200 Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx> CommitDate: Mon, 22 Apr 2013 20:17:51 +0200 timekeeping: Update tk->cycle_last in resume commit 7ec98e15aa (timekeeping: Delay update of clock->cycle_last) forgot to update tk->cycle_last in the resume path. This results in a stale value versus clock->cycle_last and prevents resume in the worst case. Reported-by: Jiri Slaby <jslaby@xxxxxxx> Reported-and-tested-by: Borislav Petkov <bp@xxxxxxxxx> Acked-by: John Stultz <john.stultz@xxxxxxxxxx> Cc: Linux-pm mailing list <linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx> Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1304211648150.21884@ionos Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> --- kernel/time/timekeeping.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 675f720..98cd470 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -951,7 +951,7 @@ static void timekeeping_resume(void) __timekeeping_inject_sleeptime(tk, &ts_delta); /* Re-base the last cycle value */ - clock->cycle_last = cycle_now; + tk->cycle_last = clock->cycle_last = cycle_now; tk->ntp_error = 0; timekeeping_suspended = 0; timekeeping_update(tk, false, true);