From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:59288) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QAm1t-0006ge-4k for qemu-devel@nongnu.org; Fri, 15 Apr 2011 12:37:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QAm1r-0001VI-Uj for qemu-devel@nongnu.org; Fri, 15 Apr 2011 12:37:57 -0400 Received: from mail-vw0-f45.google.com ([209.85.212.45]:62230) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QAm1r-0001VD-SU for qemu-devel@nongnu.org; Fri, 15 Apr 2011 12:37:55 -0400 Received: by vws17 with SMTP id 17so2614311vws.4 for ; Fri, 15 Apr 2011 09:37:55 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <20110414095545.GA6009@redhat.com> References: <20110407191759.GG7100@redhat.com> <4D9E2F6F.3040008@codemonkey.ws> <4DA16FCB.7040509@redhat.com> <4DA404A4.3030308@redhat.com> <20110413100829.55bc4a33@doriath> <20110414095545.GA6009@redhat.com> From: Blue Swirl Date: Fri, 15 Apr 2011 19:37:35 +0300 Message-ID: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 2/2 V7] qemu, qmp: add inject-nmi qmp command List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Daniel P. Berrange" Cc: Peter Maydell , Lai Jiangshan , Jiangshan , Gleb Natapov , qemu-devel@nongnu.org, Jan Kiszka , Markus Armbruster , Luiz Capitulino , Avi Kivity , kvm@vger.kernel.org On Thu, Apr 14, 2011 at 12:55 PM, Daniel P. Berrange wrote: > On Wed, Apr 13, 2011 at 10:56:21PM +0300, Blue Swirl wrote: >> On Wed, Apr 13, 2011 at 4:08 PM, Luiz Capitulino wrote: >> > On Tue, 12 Apr 2011 21:31:18 +0300 >> > Blue Swirl wrote: >> > >> >> On Tue, Apr 12, 2011 at 10:52 AM, Avi Kivity wrote: >> >> > On 04/11/2011 08:15 PM, Blue Swirl wrote: >> >> >> >> >> >> On Mon, Apr 11, 2011 at 10:01 AM, Markus Armbruster >> >> >> =C2=A0wrote: >> >> >> > =C2=A0Avi Kivity =C2=A0writes: >> >> >> > >> >> >> >> =C2=A0On 04/08/2011 12:41 AM, Anthony Liguori wrote: >> >> >> >>> >> >> >> >>> =C2=A0And it's a good thing to have, but exposing this as the = only API to >> >> >> >>> =C2=A0do something as simple as generating a guest crash dump = is not the >> >> >> >>> =C2=A0friendliest thing in the world to do to users. >> >> >> >> >> >> >> >> =C2=A0nmi is a fine name for something that corresponds to a re= al-life nmi >> >> >> >> =C2=A0button (often labeled "NMI"). >> >> >> > >> >> >> > =C2=A0Agree. >> >> >> >> >> >> We could also introduce an alias mechanism for user friendly names= , so >> >> >> nmi could be used in addition of full path. Aliases could be usefu= l >> >> >> for device paths as well. >> >> > >> >> > Yes. =C2=A0Perhaps limited to the human monitor. >> >> >> >> I'd limit all debugging commands (including NMI) to the human monitor= . >> > >> > Why? >> >> Do they have any real use in production environment? Also, we should >> have the freedom to change the debugging facilities (for example, to >> improve some internal implementation) as we want without regard to >> compatibility to previous versions. > > We have users of libvirt requesting that we add an API for triggering > a NMI. They want this for support in a production environment, to be > able to initiate Windows crash dumps. =C2=A0We really don't want to have = to > use HMP passthrough for this, instead of a proper QMP command. OK, maybe I shouldn't be very proud of my imagination. > More generally I don't want to see stuff in HMP, that isn't in the QMP. > We already have far too much that we have to do via HMP passthrough in > libvirt due to lack of QMP commands, to the extent that we might as > well have just ignored QMP and continued with HMP for everything. > > If we want the flexibility to change the debugging commands between > releases then we should come up with a plan to do this within the > scope of QMP, not restrict them to HMP only. If there is a need for the debugging facilities, full QMP support and some level of compatibility is fine.