[Libguestfs] [nbdkit PATCH] nbd: Add vsock-cid= transport option
Eric Blake
eblake at redhat.com
Tue Jul 7 21:04:38 UTC 2020
On 7/7/20 11:26 AM, Richard W.M. Jones wrote:
> On Tue, Jul 07, 2020 at 08:17:31AM -0500, Eric Blake wrote:
>> With new enough libnbd, we already support vsock by virtue of uri=;
>> however, it's also nice to allow direct exposure of the
>> nbd_connect_vsock() api.
>>
>> @@ -320,7 +349,8 @@ nbdplug_after_fork (void)
>> "[uri=]<URI> URI of an NBD socket to connect to (if supported).\n" \
>> "socket=<SOCKNAME> The Unix socket to connect to.\n" \
>> "hostname=<HOST> The hostname for the TCP socket to connect to.\n" \
>> - "port=<PORT> TCP port or service name to use (default 10809).\n" \
>> + "port=<PORT> TCP/VHOST port or service name to use (default 10809).\n" \
>> + "vhost_cid=<CID> The cid for the VSOCK socket to connect to.\n" \
>> + else if (raw_cid)
>> +#if !USE_VSOCK
>> + abort ();
>> +#else
>> + r = nbd_connect_vsock (h->nbd, cid, vport);
>> +#endif
>> else if (command.size > 0)
>> r = nbd_connect_systemd_socket_activation (h->nbd, (char **) command.ptr);
>> else if (socket_fd >= 0)
>
> I wonder if we should just call the flag "vsock=..."?
Sure, that makes sense. Doing that for nbdkit as client over vsock
matches 'nbdkit --vsock' in the other direction for offering server over
vsock.
>
> However patch looks good, ACK.
>
> It may be possible to add a test. See this example, especially the
> line requires_linux_kernel_version.
>
> https://github.com/libguestfs/nbdkit/blob/master/tests/test-vsock.sh
Thanks; the test will be a separate commit, but I'll play with the idea.
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
More information about the Libguestfs
mailing list