[Libguestfs] [PATCH REBASED] Remove main loop
Richard W.M. Jones
rjones at redhat.com
Mon Sep 14 13:06:38 UTC 2009
On Mon, Sep 14, 2009 at 01:46:22PM +0100, Matthew Booth wrote:
> On 14/09/09 13:37, Richard W.M. Jones wrote:
>> In theory, but our advice for packagers (on non-Debian, non-Red Hat
>> distributions) has been to pull the Fedora binary appliance out of the
>> packages:
>>
>> http://libguestfs.org/FAQ.html#distros
>
> Then give it a bigger version bump and stick a release note in ;)
>
>> Also you can set LIBGUESTFS_PATH and point it to any appliance you
>> want, and most likely it will work.
>>
>> Anyhow, changing the protocol itself (which is very well tested) is
>> outside the scope of this patch.
>
> This patch invalidates all that testing, because it effectively changes
> the entire implementation of the protocol. I suggest that this is a
> perfect opportunity to also fix the protocol, if not in this patch, then
> in one to follow closely afterwards.
>
> The cancellation of file sends is certainly broken at the protocol
> level. Everywhere we ignore cancellation messages in the implementation
> is simply an indication of this.
I simply don't agree. Cancellation is tested in both directions. The
fact that you can't -- in the current API -- cancel an upload is a
limitation of the API. One that could be fixed relatively easily.
The protocol itself is simple, well-documented[1], and well-tested.
This patch doesn't change the daemon side at all, and doesn't
materially change the host side either (although the patch is large,
the structure of the original code is preserved).
> It's broken because there's no ACK at
> the end of a successful send, which means that the host cannot know if
> the file was successfully written to the guest or not unless the write
> fails before the end of the transmission.
This isn't true. The protocol catches this case correctly, because
there _is_ an "ACK" at the end of file transfers and file failures.
[1] http://libguestfs.org/guestfs.3.html#communication_protocol
Rich.
--
Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://et.redhat.com/~rjones/virt-top
More information about the Libguestfs
mailing list