From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ross Lagerwall Subject: Re: [PATCH] x86/nmi: Make external NMI injection reliably crash the host Date: Wed, 27 Aug 2014 12:14:38 +0100 Message-ID: <53FDBD9E.6000406@citrix.com> References: <1409047805-17893-1-git-send-email-ross.lagerwall@citrix.com> <53FCA0D5020000780002D9C7@mail.emea.novell.com> <53FCA738.9070602@citrix.com> <53FCC60E020000780002DBCC@mail.emea.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <53FCC60E020000780002DBCC@mail.emea.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: Keir Fraser , Xen-devel List-Id: xen-devel@lists.xenproject.org On 08/26/2014 04:38 PM, Jan Beulich wrote: >>>> On 26.08.14 at 17:26, wrote: >> On 08/26/2014 01:59 PM, Jan Beulich wrote: >>>>>> On 26.08.14 at 12:10, wrote: >>>> @@ -3323,7 +3323,7 @@ void do_nmi(const struct cpu_user_regs *regs) >>>> pci_serr_error(regs); >>>> if ( reason & 0x40 ) >>>> io_check_error(regs); >>>> - if ( !(reason & 0xc0) && !nmi_watchdog ) >>>> + if ( !(reason & 0xc0) ) >>>> unknown_nmi_error(regs, reason); >>> >>> As much as I like the original idea, I'm afraid this won't fly: I do >>> know of systems where bad motherboard design leads to neither >>> of these two bits ever getting set. I.e. at the very minimum we'd >>> need a command line option to restore old behavior. Personally I >>> think it should in fact remain default behavior, and new behavior >>> should only be enabled via command line option. >> >> Well the old behavior was different depending on whether the watchdog >> was enabled or not. Since the watchdog was disabled by default, that's >> no different from the behavior here. >> >> So are you thinking something like an ignore_unknown_nmi boolean >> parameter that defaults to true? > > More like a "watchdog=force" one, but right, since the watchdog > isn't being enabled by default, maybe making it an opt-out instead > of opt-in would indeed be acceptable. > If bad motherboard design leads to neither of these bits being set (thus always giving an unknown nmi error), can't the user set nmi=ignore on the xen command-line to get the previous behavior? We already have an tristate nmi parameter, a boolean watchdog parameter, and a watchdog timeout parameter. I'm loathe to introduce even more possible states. Regards -- Ross Lagerwall