[libvirt] [PATCH 0/1] qemu-ga: add guest-sync-delimited
Michael Roth
mdroth at linux.vnet.ibm.com
Tue Feb 7 00:48:28 UTC 2012
On Mon, Feb 06, 2012 at 06:07:34PM -0600, Michael Roth wrote:
> Sorry for the somewhat redundant cover letter, but needed to note that:
>
> This applies on top of "[PATCH v2 0/8] qemu-ga: add support for Windows", and
> can also be obtained from:
> git://github.com/mdroth/qemu.git qga-guest-sync-delimited
>
> As noted in the commit there's a wiki write-up with more details on what
> exactly this is for:
>
> http://wiki.qemu.org/Features/QAPI/GuestAgent#QEMU_Guest_Agent_Protocol
>
> It's not absolutely required, but it does make dealing with some communication
> corner cases a heck of a lot easier.
>
Actually, let me re-spin this without the deprecated flag for
guest-sync, since I suspect a more common client implementation would do
something like:
qga.write(obj_to_json_string(req_obj))
resp_obj = obj_from_json_string(qga.readline())
as opposed to the JSON streamer that qemu-ga/QMP uses. You might miss a
response doing the above approach if there was garbage in the channel,
but you'll always been able to recover on the second attempt. So
guest-sync is still useful there, assuming we codify 1-line-per-response
in the QGA protocol.
More information about the libvir-list
mailing list