From patchwork Tue Jul 17 07:05:24 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: john stultz X-Patchwork-Id: 10031 Return-Path: X-Original-To: patchwork@peony.canonical.com Delivered-To: patchwork@peony.canonical.com Received: from fiordland.canonical.com (fiordland.canonical.com [91.189.94.145]) by peony.canonical.com (Postfix) with ESMTP id B605623E1B for ; Tue, 17 Jul 2012 07:05:50 +0000 (UTC) Received: from mail-yw0-f52.google.com (mail-yw0-f52.google.com [209.85.213.52]) by fiordland.canonical.com (Postfix) with ESMTP id 8139EA181CC for ; Tue, 17 Jul 2012 07:05:50 +0000 (UTC) Received: by mail-yw0-f52.google.com with SMTP id p61so64517yhp.11 for ; Tue, 17 Jul 2012 00:05:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-forwarded-to:x-forwarded-for:delivered-to:received-spf:from:to:cc :subject:date:message-id:x-mailer:in-reply-to:references :x-content-scanned:x-cbid:x-gm-message-state; bh=M097s+RAXFOxGjh9DS9NOgWPU7mX4nFPk6ovz1gJVSU=; b=g64nvpF8fqzbgNWt0Q+iVk1lE7A6Y+HqbiI8PzAGDMv3XRMhRLpd+gXXbbUPTFZXLX 2HCfbnxDy9Xpo6EYSwUZSK1gpjEUf7JM9ZtEwo2R/i7ZtWSpCbO7eay0Y0cQx/B+BHVF QniVmYEGJJoNZxXOzquDeLKLC9HIbOk5I1MLgkHn4x+MpivE6/B/Li13sI/XdnROM0md ELFZOZO6c586YMEQ7jHVDe82pPrG0LjnMr5Bj6tGnHpMPaMtdeDsK7CK4bu6dTiNwOS6 gTGwEBEM7Uy8voH1794eDKCWAjJydZh6sv9yNRsf8467r5Mgi8yW6xpBO0bNQsE/6rvz FB/g== Received: by 10.50.163.99 with SMTP id yh3mr428112igb.53.1342508749967; Tue, 17 Jul 2012 00:05:49 -0700 (PDT) X-Forwarded-To: linaro-patchwork@canonical.com X-Forwarded-For: patch@linaro.org linaro-patchwork@canonical.com Delivered-To: patches@linaro.org Received: by 10.231.241.2 with SMTP id lc2csp15900ibb; Tue, 17 Jul 2012 00:05:49 -0700 (PDT) Received: by 10.50.185.163 with SMTP id fd3mr482436igc.22.1342508749615; Tue, 17 Jul 2012 00:05:49 -0700 (PDT) Received: from e2.ny.us.ibm.com (e2.ny.us.ibm.com. [32.97.182.142]) by mx.google.com with ESMTPS id ot9si15248197igc.65.2012.07.17.00.05.49 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 17 Jul 2012 00:05:49 -0700 (PDT) Received-SPF: pass (google.com: domain of johnstul@us.ibm.com designates 32.97.182.142 as permitted sender) client-ip=32.97.182.142; Authentication-Results: mx.google.com; spf=pass (google.com: domain of johnstul@us.ibm.com designates 32.97.182.142 as permitted sender) smtp.mail=johnstul@us.ibm.com Received: from /spool/local by e2.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 17 Jul 2012 03:05:48 -0400 Received: from d01dlp02.pok.ibm.com (9.56.224.85) by e2.ny.us.ibm.com (192.168.1.102) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Tue, 17 Jul 2012 03:05:43 -0400 Received: from d01relay02.pok.ibm.com (d01relay02.pok.ibm.com [9.56.227.234]) by d01dlp02.pok.ibm.com (Postfix) with ESMTP id 68F7D6E8058 for ; Tue, 17 Jul 2012 03:05:42 -0400 (EDT) Received: from d01av04.pok.ibm.com (d01av04.pok.ibm.com [9.56.224.64]) by d01relay02.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id q6H75fbp350180 for ; Tue, 17 Jul 2012 03:05:42 -0400 Received: from d01av04.pok.ibm.com (loopback [127.0.0.1]) by d01av04.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id q6H75eem016332 for ; Tue, 17 Jul 2012 03:05:41 -0400 Received: from kernel.stglabs.ibm.com (kernel.stglabs.ibm.com [9.114.214.19]) by d01av04.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id q6H75aBT015997; Tue, 17 Jul 2012 03:05:37 -0400 From: John Stultz To: stable@vger.kernel.org Cc: Thomas Gleixner , LKML , Linux PM list , John Stultz , Ingo Molnar , Peter Zijlstra , Prarit Bhargava , Linus Torvalds Subject: [PATCH 11/11] 3.2.x: timekeeping: Add missing update call in timekeeping_resume() Date: Tue, 17 Jul 2012 03:05:24 -0400 Message-Id: <1342508724-14527-12-git-send-email-johnstul@us.ibm.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1342508724-14527-1-git-send-email-johnstul@us.ibm.com> References: <1342508724-14527-1-git-send-email-johnstul@us.ibm.com> X-Content-Scanned: Fidelis XPS MAILER x-cbid: 12071707-5112-0000-0000-00000A216E7C X-Gm-Message-State: ALoCoQkNlq4pqfa3VPnWpUoXGt/UBDNL95xClGvADL49ZlkkeyZUVWwDS3Bp/B8fHn+kGt9n5dEM From: Thomas Gleixner This is a backport of 3e997130bd2e8c6f5aaa49d6e3161d4d29b43ab0 The leap second rework unearthed another issue of inconsistent data. On timekeeping_resume() the timekeeper data is updated, but nothing calls timekeeping_update(), so now the update code in the timer interrupt sees stale values. This has been the case before those changes, but then the timer interrupt was using stale data as well so this went unnoticed for quite some time. Add the missing update call, so all the data is consistent everywhere. Reported-by: Andreas Schwab Reported-and-tested-by: "Rafael J. Wysocki" Reported-and-tested-by: Martin Steigerwald Cc: LKML Cc: Linux PM list Cc: John Stultz Cc: Ingo Molnar Cc: Peter Zijlstra , Cc: Prarit Bhargava Cc: stable@vger.kernel.org Signed-off-by: Thomas Gleixner Signed-off-by: John Stultz Signed-off-by: Linus Torvalds Cc: Prarit Bhargava Cc: Thomas Gleixner Cc: Linux Kernel Signed-off-by: John Stultz --- kernel/time/timekeeping.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 4938c5e..03e67d4 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -699,6 +699,7 @@ static void timekeeping_resume(void) timekeeper.clock->cycle_last = timekeeper.clock->read(timekeeper.clock); timekeeper.ntp_error = 0; timekeeping_suspended = 0; + timekeeping_update(false); write_sequnlock_irqrestore(&xtime_lock, flags); touch_softlockup_watchdog();