On (Fri) 30 Jan 2015 [10:50:26], Paolo Bonzini wrote: > > > On 30/01/2015 10:38, Dr. David Alan Gilbert wrote: > > * Eric Blake (ebl...@redhat.com) wrote: > >> On 01/29/2015 01:21 PM, Dr. David Alan Gilbert wrote: > >>> * Eric Blake (ebl...@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.
(just putting this in w/o actually checking..) Does -S and -incoming differ in the 'do not read disks' case? I recall we had to add consistency checks so that the destination qemu didn't inadvertently read disk metadata on shared storage before migration had finished (so that an in-progress disk size / partition size update on the src wasn't getting reflected on the dest, causing migration failures during guest installation). > > 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. > > Later on, if ever, add start-migration command that takes structured > options, make HMP and QMP migrate wrappers for start-migration. FWIW I've only followed a part of the thread so far, catching up on the rest, but the pause option looks good to me. Amit