[PATCH 0/4] nfs-utils mount: add AF_VSOCK support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The AF_VSOCK address family allows virtual machines to communicate with the
hypervisor using a zero-configuration transport.  Both KVM and VMware
hypervisors support AF_VSOCK and it was introduced in Linux 3.9.

This patch series adds AF_VSOCK support to mount.nfs(8) and works together with
the kernel NFS client patches that I am also posting to
linux-nfs@xxxxxxxxxxxxxxx.

NFS over AF_VSOCK is useful for file system sharing between a virtual machine
and the host.  Due to the zero-configuration nature of AF_VSOCK this is more
transparent to the user and more robust than asking the user to set up NFS over
TCP/IP.

A file system from the host (hypervisor) can be mounted inside a virtual
machine over AF_VSOCK like this:

  (guest)# mount.nfs 2:/export /mnt -v -o clientaddr=3,proto=vsock

The VM's cid (address) is 3 and the hypervisor is 2.

For testing it's easiest to tunnel AF_VSOCK to the AF_INET nfsd on the host.
The following utility can do this:
https://github.com/stefanha/linux/blob/vsock-extras/nc-vsock.c

  (host)# nc-vsock -l 2049 -t 127.0.0.1 2049

I will post nfsd patches for both the kernel and nfs-utils once they are
complete.

Alternatively you can use nfs-ganesha's AF_VSOCK support to run a native
AF_VSOCK server.

Note that this patch series relies on the AF_VSOCK getaddrinfo(3) support I
recently posted to glibc:
https://patchwork.ozlabs.org/patch/676589/

Stefan Hajnoczi (4):
  mount: don't use IPPROTO_UDP for address resolution
  mount: present AF_VSOCK addresses
  mount: accept AF_VSOCK in nfs_verify_family()
  getport: recognize "vsock" netid

 support/nfs/getport.c | 16 ++++++++++++----
 utils/mount/network.c | 10 +++++++++-
 utils/mount/stropts.c |  4 +---
 3 files changed, 22 insertions(+), 8 deletions(-)

-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux