Re: [libvirt] [PATCH 03/11] Helper functions for processing data streams in libvirtd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 24, 2009 at 09:51:06PM +0100, Daniel P. Berrange wrote:
> Defines the extensions to the remote protocol for generic
> data streams. Adds a bunch of helper code to the libvirtd
> daemon for working with data streams.
> 
> * qemud/Makefile.am: Add stream.c/stream.h to build
> * qemud/stream.c, qemud/stream.h: Generic helper functions for
>   creating new streams, associating streams with clients, finding
>   existing streams for a client and removing/deleting streams.
> * qemud/remote_protocol.x: Add a new 'REMOTE_STREAM' constant
>   for the 'enum remote_message_type' for encoding stream data
>   in wire messages. Add a new 'REMOTE_CONTINUE' constant to
>   'enum remote_message_status' to indicate further data stream
>   messsages are expected to follow.  Document how the
>   remote_message_header is used to encode data streams
> * qemud/remote_protocol.h: Regenerate
> * qemud/dispatch.c: Remove assumption that a error message
>   sent to client is always type=REMOTE_REPLY. It may now
>   also be type=REMOTE_STREAM. Add convenient method for
>   sending outgoing stream data packets. Log and ignore
>   non-filtered incoming stream packets. Add a method for
>   serializing a stream error message
> * qemud/dispatch.h:  Add API for serializing stream errors
>   and sending stream data packets
> * qemud/qemud.h: Add struct qemud_client_stream for tracking
>   active data streams for clients. Tweak filter function
>   operation so that it accepts a client object too.
> * qemud/qemud.c: Refactor code for free'ing message objects
>   which have been fully transmitted into separate method.
>   Release all active streams when client shuts down. Change
>   filter function to be responsible for queueing the message

  ACK, but this is hard to review, only testing can really bring
confidence for this kind of code :-)

Daniel

-- 
Daniel Veillard      | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
daniel@xxxxxxxxxxxx  | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library  http://libvirt.org/

--
Libvir-list mailing list
Libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]