[libvirt] [PATCH 5/8] save: let iohelper handle inherited fd

Eric Blake eblake at redhat.com
Thu Jul 14 23:12:14 UTC 2011


On 07/14/2011 08:24 AM, Eric Blake wrote:
> Rather than making the iohelper subject to a race in reopening
> the file, it is nicer to pass an already-open fd by inheritance.
> 
> The old synopsis form must continue to work - if someone updates
> their libvirt package and installs a new libvirt_iohelper but
> without restarting the old libvirtd daemon, then the daemon can
> still make calls using the old syntax but the new iohelper.
> 
> * src/util/iohelper.c (runIO): Split code for open...
> (prepare): ...to new function.
> (usage): Update synopsis.
> (main): Allow alternate calling form.
> * src/fdstream.c (virFDStreamOpenFileInternal): Use alternate form.
> ---
>  src/fdstream.c      |   32 ++++--------
>  src/util/iohelper.c |  142 +++++++++++++++++++++++++++++++++++---------------
>  2 files changed, 110 insertions(+), 64 deletions(-)

Squash this in if my v2 command patch goes in first:
https://www.redhat.com/archives/libvir-list/2011-July/msg00864.html

diff --git i/src/fdstream.c w/src/fdstream.c
index 754431b..b70c831 100644
--- i/src/fdstream.c
+++ w/src/fdstream.c
@@ -570,7 +570,7 @@ virFDStreamOpenFileInternal(virStreamPtr st,
                                    path,
                                    NULL);
         virCommandAddArgFormat(cmd, "%llu", length);
-        virCommandTransferFD(cmd, fd);
+        virCommandTransferFD(cmd, &fd);
         virCommandAddArgFormat(cmd, "%d", fd);

         if (oflags == O_RDONLY) {

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20110714/a2fae449/attachment-0001.sig>


More information about the libvir-list mailing list