[libvirt] [PATCH][libvirt-glib] Don't misuse GMainLoop for libvirt event loop

Daniel P. Berrange berrange at redhat.com
Thu May 24 09:41:13 UTC 2012


On Thu, May 24, 2012 at 11:01:19AM +0200, Michal Privoznik wrote:
> Since we are calling APIs within timers, those might block as
> any libvirt API may block. This, however, might get so critical,
> that server will shut us down due to timeout on keepalive.
> Simply, if an API called within a timer block, entire event loop
> is blocked and no keepalive response can be sent.
> 
> Therefore, delegate separate thread for such purpose.

NACK, this is completely wrong. The keepalive code is what is broken
here. If a thread is sitting in virNetClientIOEventLoop() waiting
for an RPC reply, then this method should be handling the keepalives
to prevent death of the connection.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list