From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38314) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WuNjv-0004jX-IS for qemu-devel@nongnu.org; Tue, 10 Jun 2014 11:13:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WuNjo-0001AN-DM for qemu-devel@nongnu.org; Tue, 10 Jun 2014 11:13:31 -0400 Received: from qmta05.emeryville.ca.mail.comcast.net ([76.96.30.48]:48563) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WuNjo-0001A8-5k for qemu-devel@nongnu.org; Tue, 10 Jun 2014 11:13:24 -0400 Message-ID: <5397208E.8010706@redhat.com> Date: Tue, 10 Jun 2014 09:13:18 -0600 From: Eric Blake MIME-Version: 1.0 References: <1401869330-32449-1-git-send-email-aik@ozlabs.ru> <1401869330-32449-2-git-send-email-aik@ozlabs.ru> <20140610093951.6dd64ea4@redhat.com> In-Reply-To: <20140610093951.6dd64ea4@redhat.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="TFGGKqAMqpv6W6CahIVs3aiGSot64iX69" Subject: Re: [Qemu-devel] [PATCH v3 1/4] cpus: Define NMI callback List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Luiz Capitulino , Alexey Kardashevskiy Cc: Alexander Graf , Alex Bligh , Markus Armbruster , qemu-devel@nongnu.org, qemu-ppc@nongnu.org, Stefan Hajnoczi , Cornelia Huck , Paolo Bonzini , =?UTF-8?B?QW5kcmVhcyBGw6RyYmVy?= , Richard Henderson This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --TFGGKqAMqpv6W6CahIVs3aiGSot64iX69 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 06/10/2014 07:39 AM, Luiz Capitulino wrote: > On Wed, 4 Jun 2014 18:08:47 +1000 > Alexey Kardashevskiy wrote: >=20 >> This introduces an NMI (non maskable interrupt) callback per CPU class= >> which QMP's "nmi" command may use to issue NMI on a CPU. >> >> This adds support for it in qmp_inject_nmi(). Since no architecture >> supports it at the moment, there is no change in behaviour. >> >> This changes inject-nmi command description for HMP and QMP. >> >> Signed-off-by: Alexey Kardashevskiy >> +++ b/qapi-schema.json >> @@ -1748,13 +1748,11 @@ >> ## >> # @inject-nmi: >> # >> -# Injects an Non-Maskable Interrupt into all guest's VCPUs. >> +# Injects an Non-Maskable Interrupt into the given guest's VCPU. >=20 > QMP doesn't have the concept of "current monitored CPU" you talk in the= > intro email. In QMP you have to specify the CPU. You have to choices: >=20 > - Add a new command that takes a CPU parameter (seems the best to me, = as > people were asking for a different command anyways) >=20 > - Add an optional parameter to inject-nmi. When the CPU parameter is > not specified, the command sends the NMI to all CPUs >=20 > Eric, any thoughts? How would libvirt know whether the optional parameter is supported, short of trying it and getting a failure on older qemu that lacks it? At this point, since we still don't have global qapi introspection, the addition of a new command is nicer than the addition of an optional parameter. But I definitely agree that we have a discrepancy between HMP being able to specify a current CPU, vs. QMP being unable to direct which CPU gets the interrupt. --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --TFGGKqAMqpv6W6CahIVs3aiGSot64iX69 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJTlyCOAAoJEKeha0olJ0Nq1wIH/id9H2sTOyyA73Dtkv4azxWZ h42InDgPK1LUXU7P1F1QxT8wddLd6iACJAB4lR6jVJzYzf9NVJQPbW5QkllGC4/W zh+40ZKqSnvp2cx1NSNeYEIsV78APrOka+C7SIf/ufm+qGvg147NRtMo71i4W8Wp SNtHtWXYJRJDtDBsCvORH8Fl69X9bb1rJeY1NkDMa21NfKBC5PUjZ3HvavX6GdlW Eggt7HeWm4VgEpFea5XtoIKYxafwZ4rb483i94jhMN/gjtNRu0tBAVi5lSdSsVpt 8hFECfL6XbY9/Gldtrn7p/Wgq6khqIfAA/kzutHESRU2saR2VVPksbJXPSatlFs= =9wbI -----END PGP SIGNATURE----- --TFGGKqAMqpv6W6CahIVs3aiGSot64iX69--