All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Travis <mike.travis@hpe.com>
To: Ingo Molnar <mingo@redhat.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>, Don Zickus <dzickus@redhat.com>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Dimitri Sivanich <dimitri.sivanich@hpe.com>,
	Frank Ramsay <frank.ramsay@hpe.com>,
	Russ Anderson <russ.anderson@hpe.com>,
	Tony Ernst <tony.ernst@hpe.com>,
	x86@kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 2/2] x86/platform/uv: Use low priority low frequency NMI call chain
Date: Mon, 06 Mar 2017 12:17:39 -0600	[thread overview]
Message-ID: <20170306181737.494819741@asylum.americas.sgi.com> (raw)
In-Reply-To: 20170306181737.059578494@asylum.americas.sgi.com

[-- Attachment #1: uv_use_nmi_remote --]
[-- Type: text/plain, Size: 1621 bytes --]

Use the new NMI call chain NMI_LAST instead of the NMI_UNKNOWN call
chain to eliminate the WARNING message about having multiple NMI
handlers registering on the NMI UNKNOWN call chain.

This "call only when not already claimed by another NMI handler" is
required as the UV architecture cannot sustain a high rate of reads
to the MMR's on the UV HUB's to verify if the NMI should be claimed.
This not only slows down the system responsiveness, it can result in
a system lockup.

Signed-off-by: Mike Travis <mike.travis@hpe.com>
Reviewed-by: Russ Anderson <russ.anderson@hpe.com>
---
 arch/x86/platform/uv/uv_nmi.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- linux-4.4.orig/arch/x86/platform/uv/uv_nmi.c
+++ linux-4.4/arch/x86/platform/uv/uv_nmi.c
@@ -53,7 +53,7 @@
  * disrupts the UV Hub's primary mission of directing NumaLink traffic and
  * can cause system problems to occur.
  *
- * To do this we register our primary NMI notifier on the NMI_UNKNOWN
+ * To do this we register our primary NMI notifier on the NMI_LAST
  * chain.  This reduces the number of false NMI calls when the perf
  * tools are running which generate an enormous number of NMIs per
  * second (~4M/s for 1024 CPU threads).  Our secondary NMI handler is
@@ -992,7 +992,7 @@ static int uv_handle_nmi_ping(unsigned i
 
 static void uv_register_nmi_notifier(void)
 {
-	if (register_nmi_handler(NMI_UNKNOWN, uv_handle_nmi, 0, "uv"))
+	if (register_nmi_handler(NMI_LAST, uv_handle_nmi, 0, "uv"))
 		pr_warn("UV: NMI handler failed to register\n");
 
 	if (register_nmi_handler(NMI_LOCAL, uv_handle_nmi_ping, 0, "uvping"))

-- 

      parent reply	other threads:[~2017-03-06 18:36 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-06 18:17 [PATCH 0/2] Add and Use NMI LAST call chain to eliminate WARNING message Mike Travis
2017-03-06 18:17 ` [PATCH 1/2] x86/platform: Add a low priority low frequency NMI call chain Mike Travis
2017-03-07  7:42   ` Ingo Molnar
2017-03-07 15:22     ` Don Zickus
2017-03-07 16:00       ` Mike Travis
2017-03-07 16:07         ` Don Zickus
2017-03-07 16:13           ` Mike Travis
2017-03-07 15:38     ` Mike Travis
2017-03-08 10:28       ` Ingo Molnar
2017-03-08 15:17         ` Mike Travis
2017-03-06 18:17 ` Mike Travis [this message]

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=20170306181737.494819741@asylum.americas.sgi.com \
    --to=mike.travis@hpe.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=dimitri.sivanich@hpe.com \
    --cc=dzickus@redhat.com \
    --cc=frank.ramsay@hpe.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=russ.anderson@hpe.com \
    --cc=tglx@linutronix.de \
    --cc=tony.ernst@hpe.com \
    --cc=x86@kernel.org \
    /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.