From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:33882) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RyRJC-00066z-Ae for qemu-devel@nongnu.org; Fri, 17 Feb 2012 12:09:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RyRJ7-0006OH-S7 for qemu-devel@nongnu.org; Fri, 17 Feb 2012 12:09:22 -0500 Received: from mail-pw0-f45.google.com ([209.85.160.45]:58178) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RyRJ7-0006MG-KW for qemu-devel@nongnu.org; Fri, 17 Feb 2012 12:09:17 -0500 Received: by pbbro12 with SMTP id ro12so4759756pbb.4 for ; Fri, 17 Feb 2012 09:09:16 -0800 (PST) Sender: fluxion Date: Fri, 17 Feb 2012 11:09:10 -0600 From: Michael Roth Message-ID: <20120217170910.GC20920@illuin> References: <1328733040-16697-1-git-send-email-lcapitulino@redhat.com> <1328733040-16697-7-git-send-email-lcapitulino@redhat.com> <4F3E868D.8020107@us.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4F3E868D.8020107@us.ibm.com> Subject: Re: [Qemu-devel] [PATCH 6/6] qmp: add balloon-get-memory-stats & event List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: armbru@redhat.com, agl@us.ibm.com, eblake@redhat.com, qemu-devel@nongnu.org, Luiz Capitulino On Fri, Feb 17, 2012 at 10:55:41AM -0600, Anthony Liguori wrote: > On 02/08/2012 02:30 PM, Luiz Capitulino wrote: > >This commit adds a QMP API for the guest provided memory statistics > >(long disabled by commit 07b0403dfc2b2ac179ae5b48105096cc2d03375a). > > > >The approach taken by the original commit > >(625a5befc2e3200b396594f002218d235e375da5) was to extend the > >query-balloon command. It introduced a severe bug though: query-balloon > >would hang if the guest didn't respond. > > > >The approach taken by this commit is asynchronous and thus avoids > >any QMP hangs. > > > >First, a client has to issue the balloon-get-memory-stats command. > >That command gets the process started by only sending a request to > >the guest, it doesn't block. When the memory stats are made available > >by the guest, they are returned to the client as an QMP event. > > > >Signed-off-by: Luiz Capitulino > > Do we need this to be stable in 1.1? > > We can do this pretty nicely through QOM. We can have a polling > property in the virtio-balloon driver, that when set, will enable > the virtio-balloon device to poll the guest for statistics. > > We can also have properties for each of the memory statistics and a > timestamp for when the last update was. > > I think this is a friendlier approach for clients, and a cleaner > approach from a QEMU perspective. > > There's nothing generic about this functionality. It's extremely > specific to virtio-balloon. We just lacked ways to expose device > specific function pre-QOM. I'm not so sure, I think proxying guest agent commands through QMP would hit very similar snags, for instance. > > Regards, > > Anthony Liguori > >