linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: Marc Zyngier <marc.zyngier@arm.com>
Cc: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>,
	Julien Thierry <julien.thierry@arm.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@kernel.org>
Subject: Re: [PATCH 1/4] genirq: Provide basic NMI management for interrupt lines
Date: Thu, 2 Aug 2018 11:40:55 +0200 (CEST)	[thread overview]
Message-ID: <alpine.DEB.2.21.1808021137400.2037@nanos.tec.linutronix.de> (raw)
In-Reply-To: <86r2jhw7a1.wl-marc.zyngier@arm.com>

On Thu, 2 Aug 2018, Marc Zyngier wrote:
> On Thu, 02 Aug 2018 07:55:49 +0100,
> Thomas Gleixner <tglx@linutronix.de> wrote:
> > 
> > On Thu, 2 Aug 2018, Marc Zyngier wrote:
> > > 
> > > If we need to distinguish between the two, then we need two flags. One
> > > that indicates the generation capability, and one that indicates the
> > > forwarding capability.
> > 
> > There is absolutely no reason to expose this on x86, really.
> > 
> > Why?
> > 
> > Because NMI is an utter trainwreck on x86. It's a single entry point
> > without the ability of differentiation from which source the NMI
> > originated. So mapping it to anything generic is just not going to work.
> > 
> > It has absolutely nothing to do with the normal way of vector based
> > interrupt operation and I don't see at all how adding this just because
> > would improve anything on x86. In fact it would create more problems than
> > it solves.
> 
> Fair enough. Does it mean Julien can completely ignore the x86
> requirements for this and focus on something that fit the need of
> architectures where (pseudo-)NMIs can be managed similarly to normal
> interrupts (arm, arm64, sparc...)?

Yes, focussing on "sane" architectures (by some definition of sane) where
the NMI mode is just changing the delivery restrictions allows to still
differentiate from which source the NMI originates.

There is no way to make this work on x86 unless they fundamentally change
the low level exception mechanics. Not going to happen anytime soon. And if
it ever happens then they better implement it in a way which is usable by
software sanely.

Thanks,

	tglx

  reply	other threads:[~2018-08-02  9:41 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-24 11:07 [PATCH 0/4] Provide core API for NMIs Julien Thierry
2018-07-24 11:07 ` [PATCH 1/4] genirq: Provide basic NMI management for interrupt lines Julien Thierry
2018-08-01  3:07   ` Ricardo Neri
2018-08-01 15:09     ` Julien Thierry
2018-08-01 15:33       ` Joe Perches
2018-08-02  2:03       ` Ricardo Neri
2018-08-02  6:38         ` Marc Zyngier
2018-08-02  6:55           ` Thomas Gleixner
2018-08-02  7:35             ` Marc Zyngier
2018-08-02  9:40               ` Thomas Gleixner [this message]
2018-08-03  3:09                 ` Ricardo Neri
2018-08-03  7:59                   ` Thomas Gleixner
2018-07-24 11:07 ` [PATCH 2/4] genirq: Provide NMI management for percpu_devid interrupts Julien Thierry
2018-08-01  3:11   ` Ricardo Neri
2018-08-01 15:11     ` Julien Thierry
2018-07-24 11:07 ` [PATCH 3/4] genirq: Provide NMI handlers Julien Thierry
2018-07-24 11:07 ` [PATCH 4/4] irqdesc: Add domain handler for NMIs Julien Thierry

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=alpine.DEB.2.21.1808021137400.2037@nanos.tec.linutronix.de \
    --to=tglx@linutronix.de \
    --cc=julien.thierry@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marc.zyngier@arm.com \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=ricardo.neri-calderon@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).