All of lore.kernel.org
 help / color / mirror / Atom feed
From: tip-bot for Ulrich Obergfell <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, hpa@zytor.com, mingo@kernel.org,
	drjones@redhat.com, uobergfe@redhat.com, tglx@linutronix.de,
	dzickus@redhat.com
Subject: [tip:perf/watchdog] watchdog: Fix print-once on enable
Date: Mon, 18 Aug 2014 11:03:52 -0700	[thread overview]
Message-ID: <tip-df577149594cefacd62740e86de080c6336d699e@git.kernel.org> (raw)
In-Reply-To: <1407768567-171794-4-git-send-email-dzickus@redhat.com>

Commit-ID:  df577149594cefacd62740e86de080c6336d699e
Gitweb:     http://git.kernel.org/tip/df577149594cefacd62740e86de080c6336d699e
Author:     Ulrich Obergfell <uobergfe@redhat.com>
AuthorDate: Mon, 11 Aug 2014 10:49:25 -0400
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Mon, 18 Aug 2014 11:17:46 +0200

watchdog: Fix print-once on enable

This patch avoids printing the message 'enabled on all CPUs,
...' multiple times. For example, the issue can occur in the
following scenario:

1) watchdog_nmi_enable() fails to enable PMU counters and sets
   cpu0_err.

2) 'echo [0|1] > /proc/sys/kernel/nmi_watchdog' is executed to
   disable and re-enable the watchdog mechanism 'on the fly'.

3) If watchdog_nmi_enable() succeeds to enable PMU counters,
   each CPU will print the message because step1 left behind a
   non-zero cpu0_err.

   if (!IS_ERR(event)) {
       if (cpu == 0 || cpu0_err)
           pr_info("enabled on all CPUs, ...")

The patch avoids this by clearing cpu0_err in watchdog_nmi_disable().

Signed-off-by: Ulrich Obergfell <uobergfe@redhat.com>
Signed-off-by: Andrew Jones <drjones@redhat.com>
Signed-off-by: Don Zickus <dzickus@redhat.com>
Cc: pbonzini@redhat.com
Link: http://lkml.kernel.org/r/1407768567-171794-4-git-send-email-dzickus@redhat.com
[ Applied small cleanups. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 kernel/watchdog.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 4c2e11c..df5494e 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
@@ -506,7 +506,10 @@ static void watchdog_nmi_disable(unsigned int cpu)
 		/* should be in cleanup, but blocks oprofile */
 		perf_event_release_kernel(event);
 	}
-	return;
+	if (cpu == 0) {
+		/* watchdog_nmi_enable() expects this to be zero initially. */
+		cpu0_err = 0;
+	}
 }
 #else
 static int watchdog_nmi_enable(unsigned int cpu) { return 0; }

  parent reply	other threads:[~2014-08-18 18:04 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-11 14:49 [PATCH 0/5] watchdog: various fixes Don Zickus
2014-08-11 14:49 ` [PATCH 1/5] watchdog: remove unnecessary head files Don Zickus
2014-08-18 18:03   ` [tip:perf/watchdog] watchdog: Remove unnecessary header files tip-bot for chai wen
2014-08-11 14:49 ` [PATCH 2/5] softlockup: make detector be aware of task switch of processes hogging cpu Don Zickus
2014-08-18  9:03   ` Ingo Molnar
2014-08-18 15:06     ` Don Zickus
2014-08-18 18:01       ` Ingo Molnar
2014-08-18 18:43         ` Don Zickus
2014-08-18 19:02           ` Ingo Molnar
2014-08-18 20:38             ` Don Zickus
2014-08-19  1:36               ` Chai Wen
2014-08-21  1:37                 ` Chai Wen
2014-08-21  2:30                   ` Don Zickus
2014-08-21  5:42                     ` [PATCH] " chai wen
2014-08-22  1:12                       ` Chai Wen
2014-08-22  1:58                       ` Don Zickus
2014-08-26 12:51                         ` Chai Wen
2014-08-26 14:22                           ` Don Zickus
2014-08-27  1:33                             ` Chai Wen
2014-08-11 14:49 ` [PATCH 3/5] watchdog: fix print-once on enable Don Zickus
2014-08-18  9:05   ` Ingo Molnar
2014-08-18  9:07   ` Ingo Molnar
2014-08-18 15:07     ` Don Zickus
2014-08-18 18:03   ` tip-bot for Ulrich Obergfell [this message]
2014-08-11 14:49 ` [PATCH 4/5] watchdog: control hard lockup detection default Don Zickus
2014-08-18  9:12   ` Ingo Molnar
2014-08-18 15:07     ` Don Zickus
2014-08-18  9:16   ` Ingo Molnar
2014-08-18 10:44     ` Ulrich Obergfell
2014-08-18 15:17     ` Don Zickus
2014-08-18 18:07       ` Ingo Molnar
2014-08-18 18:53         ` Don Zickus
2014-08-18 19:00           ` Ingo Molnar
2014-08-11 14:49 ` [PATCH 5/5] kvm: ensure hard lockup detection is disabled by default Don Zickus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=tip-df577149594cefacd62740e86de080c6336d699e@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=drjones@redhat.com \
    --cc=dzickus@redhat.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=uobergfe@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.