On 12/12/11 11:18, Stefan Hajnoczi wrote:
> On Sun, Dec 11, 2011 at 10:29 AM, Alon Levy <al...@redhat.com> wrote:
>> On Thu, Dec 08, 2011 at 05:45:44PM -0200, Luiz Capitulino wrote:
>>> Hi there,
>>>
>>> I'm about to completely drop the MONITOR_CMD_ASYNC API, but it turns out 
>>> that
>>> the command client_migrate_info uses it. That's a legacy interface and has 
>>> to
>>> be dropped, no command should be using it...
>>>
>>> Something tells me that if I just drop it (and change the command to use the
>>> regular interface), bad things will happen. Am I right? :)
>>>
>>
>> The monitor command client_migrate_info needs to complete after getting
>> an ACK message from the currently connected spice client (this is the
>> only case where this is required - if there is no client then the
>> MONITOR_CMD_ASYNC API won't be used). This in turn requires the main
>> thread to perform select and call the callback that will process this
>> ACK. That's why the MONITOR_CMD_ASYNC API was used.
>>
>> I'm not aware of any other way to do this, I'll be glad for any help
>> here. Also, I understand this is not what is not true async, since one
>> would expect a true async interface to support multiple in flight
>> monitor commands. If there is any ETA or existing way to do this we
>> could change the implementation of client_migrate_info.
> 
> Is it possible to use a QMP event to signal completion instead of a
> MONITOR_CMD_ASYNC command?

Problem is this breaks the qemu <-> libvirt interface.

cheers,
  Gerd

Reply via email to