From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:58810) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R0xqZ-0007ny-9p for qemu-devel@nongnu.org; Tue, 06 Sep 2011 11:46:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R0xqS-0005Mv-Uc for qemu-devel@nongnu.org; Tue, 06 Sep 2011 11:45:59 -0400 Received: from thoth.sbs.de ([192.35.17.2]:27754) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R0xqS-0005MY-K2 for qemu-devel@nongnu.org; Tue, 06 Sep 2011 11:45:52 -0400 Message-ID: <4E66402C.2020900@siemens.com> Date: Tue, 06 Sep 2011 17:45:48 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <20110906144828.GA20834@redhat.com> In-Reply-To: <20110906144828.GA20834@redhat.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 0/6] Device state visualization reloaded List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Anthony Liguori , Luiz Capitulino , qemu-devel , Markus Armbruster On 2011-09-06 16:48, Michael S. Tsirkin wrote: > On Fri, Aug 26, 2011 at 04:48:10PM +0200, Jan Kiszka wrote: >> More than one year ago I posted some patches to add a monitor command >> callend device_show. The purpose of that command is to dump the state of >> some qdev device based on its vmstate. >> >> To improve the usability of that interface, the previous series also >> tried to create a canonical qdev tree path name format and even added >> monitor command expansion. That format created quite a few discussions, >> and we never came to some conclusion. >> >> As device_show is still a useful tool for debugging but qdev structuring >> and addressing may significantly change in the near future, I decided to >> reanimate those patches while avoiding almost any change of the >> addressing scheme. The only one I propose is automatic ID assignment for >> anonymous devices so that any qdev device is in principle addressable >> (e.g. APIC and IO-APIC on x86). >> >> As back then, device_show remains HMP-only to avoid any stable ABI >> issues around QMP. > > I'm afraid that won't be enough to stop people > scripting this command - libvirt accessed > HMP for years. > > On the other hand, no QMP command means e.g. > libvirt users don't get any benefit from this. > > What I think will solve these problems, for both HMP and QMP, > is an explicit 'debug_unstable' or 'debug_unsupported' command that will > expose all kind of debugging functionality making it > very explicit that it's an unsupported debugging utility. > > Proposed syntax: > > debug_unstable > > Example: > > debug_unstable device_show -all For HMP, this would needlessly complicate the user interface, nothing I would support. People scripting things on top of HMP are generally doing this on their own risk and cannot expect output stability. device_show is like info qtree: the output will naturally change as the emulated hardware evolves, information is added/removed, or we simply improve the layout. Recent changes on info network are an example for the latter. Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux