|
From: | Michael Roth |
Subject: | [Qemu-devel] Re: [RFC][PATCH v7 00/16] virtagent: host/guest communication agent |
Date: | Mon, 07 Mar 2011 16:49:03 -0600 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 |
On 03/07/2011 03:43 PM, Anthony Liguori wrote:
On 03/07/2011 02:10 PM, Michael Roth wrote:These patches apply to master (3-07-2011), and can also be obtained from: git://repo.or.cz/qemu/mdroth.git virtagent_v7 CHANGES IN V7: - Removed dependency on xmlrpc-c for data transport. Now using JSON via QEMU's qjson qobject<->json conversion routines. Binary encoding mechanisms such as Protocol Buffers and ASN.1/BER were considered, but due to limited library support, and limitations of isa/virtio serial transport that would have required an additional layer of encoding to reliably determine RPC boundaries during transport (more here: http://www.mail-archive.com/address@hidden/msg56237.html), qobject<->json seemed to be the most prudent route.Then it needs to be based on QAPI. No point in reinventing the wheel. It won't be bidirectional though. The guest will only be able to post events.
It's not really inventing anything. We've always started off with qobject params, which we then pulled apart and stuck into xmlrpc params, which when then turned into xml for transport. Now we just take the qobjects and covert them to json directly. We've only cut out an intermediate library and switched to a different UTF8-based encoding for transport.
With QAPI we'd have the extra step of pulling function parameters into a qobjects. Not any different from what the situation would've been using xmlrpc or any of the other binary encoding that were considered.
It does look more similar to what QMP/QAPI is doing than previously, but it doesn't need to be all or nothing.
Regards, Anthony Liguori
[Prev in Thread] | Current Thread | [Next in Thread] |