From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47228) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YH8Je-0005oB-CM for qemu-devel@nongnu.org; Fri, 30 Jan 2015 04:56:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YH8JZ-0000Gz-Ex for qemu-devel@nongnu.org; Fri, 30 Jan 2015 04:56:42 -0500 Received: from mx1.redhat.com ([209.132.183.28]:44824) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YH8JZ-0000Gv-6V for qemu-devel@nongnu.org; Fri, 30 Jan 2015 04:56:37 -0500 Date: Fri, 30 Jan 2015 09:56:31 +0000 From: "Dr. David Alan Gilbert" Message-ID: <20150130095631.GE2370@work-vm> References: <20150129151527.GE1102@redhat.com> <54CA500E.8030608@redhat.com> <20150129155425.GE2391@work-vm> <54CA594E.5030605@redhat.com> <20150129162815.GG2391@work-vm> <54CA71CD.3090304@redhat.com> <20150129202154.GH2391@work-vm> <54CA9C8C.7030906@redhat.com> <20150130093849.GB2370@work-vm> <54CB53E2.5060400@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54CB53E2.5060400@redhat.com> Subject: Re: [Qemu-devel] [RFC 1/1] Execute arbitrary QMP commands from command line List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: amit.shah@redhat.com, liang.z.li@intel.com, qemu-devel@nongnu.org, quintela@redhat.com * Paolo Bonzini (pbonzini@redhat.com) wrote: > > > On 30/01/2015 10:38, Dr. David Alan Gilbert wrote: > > * Eric Blake (eblake@redhat.com) wrote: > >> On 01/29/2015 01:21 PM, Dr. David Alan Gilbert wrote: > >>> * Eric Blake (eblake@redhat.com) wrote: > >>>> On 01/29/2015 09:28 AM, Dr. David Alan Gilbert wrote: > >>>>> > >>>>> So what would the .args_type look like in qmp-commands.hx; something like this? > >>>>> > >>>>> .args-type = "type:s,port:-i,host:-s,command:-s" > >>>> > >>>> No, it would be more like the blockdev-add interface, where one command > >>>> accepts a dictionary object containing a union of valid values, where > >>>> the set of valid values is determined by the discriminator field. > >>>> .args_type = "options:q". > >>> > >>> What causes the parser to generate a 'BlockdevOptions' as opposed to any > >>> standard options type for the parameter of qmp_blockdev_add? > >> > >> Kevin Wolf has the most experience here, as he was the one that figured > >> out how to correlate command line and QMP as part of adding blockdev-add. > > > > OK, this is getting more complicated than I'd expected; how about a simpler > > suggestion. > > > > The current suggestion is: > > Modify -incoming to take 'pause' as an argument > > -S is just the same. No it's not; it goes into a different state; see previous part of thread; it's the difference between RUN_STATE_PAUSED and RUN_STATE_INMIGRATE. > > Add migrate-incoming command that takes parsed URI > > > > New suggestion: > > Modify -incoming to take a pause: prefix (e.g. -incoming pause:tcp:host:port ) > > Add migrate-incoming-start command (takes no arguments). > > Another suggestion: > > Add incoming argument to the existing URI-based command migrate. Yep, that's also possible if others are happy with it. > Later on, if ever, add start-migration command that takes structured > options, make HMP and QMP migrate wrappers for start-migration. Dave > Paolo > > > It seems simpler. > > > > Dave > > > >> > >> -- > >> Eric Blake eblake redhat com +1-919-301-3266 > >> Libvirt virtualization library http://libvirt.org > >> > > > > > > -- > > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK > > > > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK