[libvirt] [PATCH 2/2] qemu: use -incoming fd:n to avoid qemu holding fd indefinitely

Paolo Bonzini pbonzini at redhat.com
Mon Dec 27 17:06:23 UTC 2010


On 12/23/2010 05:51 PM, Eric Blake wrote:
>>> Since you are at it, you may also want to replace the usage of netcat
>>> >>  and Unix sockets with "-incoming fd:" and a one-way pipe.
>> >
>> >  Not sure it's worth it.  Is unix:path any less efficient than creating a
>> >  one-way pipe for use by fd:n?  Also, we can't replace netcat; the use of
>> >  '-incoming "exec:nc -lU path"' is only used in libvirt that predates
>> >  '-incoming unix:path', which also happens to predate '-incoming fd:n'.
> Thinking about it more:
>
> In the outgoing direction, we still have to use a unix socket (outgoing
> migration is started via a monitor command, and I don't know how to pass
> a new fd into qemu for using with an fd:n outgoing migration via the
> monitor - it seems like fd is only useful on the command line).

File descriptor in the outgoing direction is supported using SCM_RIGHTS, 
but you're right that when qemu doesn't support the fd: migration 
protocol you would still have to use a fallback (it could be mkfifo + 
cat, instead of netcat, but it would be a substantial amount of work for 
a limited gain in portability).

Paolo




More information about the libvir-list mailing list