From: Naohiro Ooiwa <naohiro.ooiwa@miraclelinux.com>
To: linux-kernel@vger.kernel.org
Cc: Kurt Garloff <garloff@suse.de>,
Roberto Angelino <robertangelino@gmail.com>,
Greg Kroah-Hartman <gregkh@suse.de>,
mingo@kernel.org
Subject: [PATCH] clear IOCK NMI before panic
Date: Fri, 15 Feb 2013 10:52:27 +0900 [thread overview]
Message-ID: <511D94DB.3050805@miraclelinux.com> (raw)
In-Reply-To: <511C8084.9000604@miraclelinux.com>
Hi all
I tried to push an NMI button on HP DL380p Gen8's iLO4.
and then I received an IOCK NMI error.
When panic_on_io_nmi is set to 0, it seems that IOCK NMI error is sent repeatedly.
In case of panic_on_io_nmi=1 and kdump is available,
the second kernel started. But IOCK NMI is sent repeatedly
and second kernel couldn't take a dump.
Though this is just my guess,
We should clear the IOCK of NMI reason before panic().
I tried to create a patch, which works for me.
Is my patch reasonable?
Thanks you.
Naohiro Ooiwa
Signed-off-by: Naohiro Ooiwa <naohiro.ooiwa@miraclelinux.com>
---
arch/x86/kernel/nmi.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index f84f5c5..c3cbfbe 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -209,8 +209,11 @@ io_check_error(unsigned char reason, struct pt_regs *regs)
reason, smp_processor_id());
show_regs(regs);
- if (panic_on_io_nmi)
+ if (panic_on_io_nmi) {
+ reason = (reason & NMI_REASON_CLEAR_MASK) | NMI_REASON_CLEAR_IOCHK;
+ outb(reason, NMI_REASON_PORT);
panic("NMI IOCK error: Not continuing");
+ }
/* Re-enable the IOCK line, wait for a few seconds */
reason = (reason & NMI_REASON_CLEAR_MASK) | NMI_REASON_CLEAR_IOCHK;
--
1.7.10.4
parent reply other threads:[~2013-02-15 1:58 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <511C8084.9000604@miraclelinux.com>]
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=511D94DB.3050805@miraclelinux.com \
--to=naohiro.ooiwa@miraclelinux.com \
--cc=garloff@suse.de \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=robertangelino@gmail.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.