From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NC8wQ-0007U1-F2 for qemu-devel@nongnu.org; Sun, 22 Nov 2009 04:41:10 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NC8wL-0007OZ-Cu for qemu-devel@nongnu.org; Sun, 22 Nov 2009 04:41:09 -0500 Received: from [199.232.76.173] (port=52912 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NC8wL-0007OO-8m for qemu-devel@nongnu.org; Sun, 22 Nov 2009 04:41:05 -0500 Received: from mx1.redhat.com ([209.132.183.28]:58948) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NC8wK-0004cH-PP for qemu-devel@nongnu.org; Sun, 22 Nov 2009 04:41:05 -0500 Message-ID: <4B09072E.4090206@redhat.com> Date: Sun, 22 Nov 2009 11:41:02 +0200 From: Avi Kivity MIME-Version: 1.0 References: <1258643623-8636-1-git-send-email-lcapitulino@redhat.com> <4B05623E.5080903@redhat.com> <20091119144708.6e00306b@doriath> In-Reply-To: <20091119144708.6e00306b@doriath> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [RFC v0 00/15] QEMU Monitor Protocol List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Luiz Capitulino Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org On 11/19/2009 06:47 PM, Luiz Capitulino wrote: > >> Can you post a capture of a few monitor commands through the new protocol? >> > Here goes, it's a telnet session: > Looks really good, some comments below. > """ > {"QMP": {"capabilities": []}} > > { "execute": "info", "arguments": { "item": "balloon" } } > {"return": 1024} > 1. I see no id attribute, but it's supported, yes? 2. I asked before for info commands to be separated into individual commands ("query-balloon") when in machine mode. You wouldn't write a function info(enum info_thing what), would you? What would its return type be? 3. Quantities, for the machine protocol, should be in natural units (in this case, bytes). The human interface can use kMGT and have some reasonable default. > { "execute": "info", "arguments": { "item": "balloon" } } > {"return": 512} > > { "execute": "info", "arguments": { "item": "network" } } > {"return": [{"devices": [{"name": "user.0", "info": "net=10.0.2.0, restricted=n"}, {"name": "e1000.0", "info": "model=e1000,macaddr=52:54:00:12:34:56"}], "id": 0}]} > The internal "info" is very worrying. We need to make sure everything is returned as an object without the need for additional parsing. > { "execute": "migrate", "arguments": { "detach": "-d", "uri": "tcp:localhost:4445" } } > {"error": {"class": "InvalidParameter", "data": {"parameter": "detach", "reason": "must be an integer"}}} > I presume true and false would work here? -- error compiling committee.c: too many arguments to function