[libvirt] [PATCH 25/27] fdstream: Suppress use of IO helper for sparse streams

Daniel P. Berrange berrange at redhat.com
Thu May 5 15:32:18 UTC 2016

On Thu, Apr 28, 2016 at 12:05:12PM +0200, Michal Privoznik wrote:
> This is kind of a hacky approach to the following problem, but so
> far I am unable to come up with anything better. On some
> occasions (esp. when dealing with regular files) libvirt_iohelper
> is spawned to prefetch data for us. We will then have a pipe then
> for reading the data from it. This does not fit in our sparse
> stream implementation as one simply doesn't lseek() over a pipe.
> Until this is resolved, let's suppress use of the IO helper and
> read data from FD directly.

This doesn't really fly - the problem is that with regular files,
poll() on the FD will always return ready, even if the read or
write will block in I/O. So by nomt using the iohelper this is
going to cause our main loop to block on I/O for streams.

|: 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