[libvirt] [PATCH v3 0/5] file descriptor passing using pass-fd

Eric Blake eblake at redhat.com
Tue Jun 19 15:46:43 UTC 2012


On 06/14/2012 09:55 AM, Corey Bryant wrote:

> This patch series adds the pass-fd QMP monitor command, which allows
> an fd to be passed via SCM_RIGHTS, and returns the received file
> descriptor.  Support is also added to the block layer to allow QEMU
> to dup the fd when the filename is of the /dev/fd/X format.  This
> is useful if MAC policy prevents QEMU from opening specific types
> of files.

Something to think about on how this will interact with Jeff's work on
block-commit.  That is an interface where qemu must reopen backing files
which were previously O_RDONLY to now be O_RDWR.  By default (when
open() is supported in qemu, and qemu is using the actual file name),
this means 'block-commit' works without needing any fd names.  But with
this new fd-passing approach, a file originally opened as O_RDONLY
/dev/fd/21 will need to be reopened, but the reopened fd will (likely)
not be 21.  In other words, we need to make sure 'block-commit' supports
the ability to pass in optional arguments that specify the file name of
the backing file to be reopened, so that libvirt can pass in O_RDWR fds
to replace the existing O_RDONLY fd, and be aware that the /dev/fd/nn
naming of the reopen will be different.

-- 
Eric Blake   eblake at redhat.com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org



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


More information about the libvir-list mailing list