Hello Stefano, On 2/18/20 4:54 PM, Stefano Garzarella wrote: > Linux 5.6 added the new well-known VMADDR_CID_LOCAL for > local communication. > > This patch explains how to use it and remove the legacy > VMADDR_CID_RESERVED no longer available. > > Reviewed-by: Jorgen Hansen <jhansen@xxxxxxxxxx> > Signed-off-by: Stefano Garzarella <sgarzare@xxxxxxxxxx> > --- > v4: > * removed "The" in the "Local communication" section [Stefan] > v3: > * rephrased "Previous versions" part [Jorgen] > v2: > * rephrased "Local communication" description [Stefan] > * added a mention of previous versions that supported > loopback only in the guest [Stefan] Thanks. Patch applied. Cheers, Michael > --- > man7/vsock.7 | 18 ++++++++++++++++-- > 1 file changed, 16 insertions(+), 2 deletions(-) > > diff --git a/man7/vsock.7 b/man7/vsock.7 > index c5ffcf07d..fa2c6e17e 100644 > --- a/man7/vsock.7 > +++ b/man7/vsock.7 > @@ -127,8 +127,8 @@ There are several special addresses: > means any address for binding; > .B VMADDR_CID_HYPERVISOR > (0) is reserved for services built into the hypervisor; > -.B VMADDR_CID_RESERVED > -(1) must not be used; > +.B VMADDR_CID_LOCAL > +(1) is the well-known address for local communication (loopback); > .B VMADDR_CID_HOST > (2) > is the well-known address of the host. > @@ -164,6 +164,15 @@ Consider using > .B VMADDR_CID_ANY > when binding instead of getting the local CID with > .BR IOCTL_VM_SOCKETS_GET_LOCAL_CID . > +.SS Local communication > +.B VMADDR_CID_LOCAL > +(1) directs packets to the same host that generated them. This is useful > +for testing applications on a single host and for debugging. > +.PP > +The local CID obtained with > +.BR IOCTL_VM_SOCKETS_GET_LOCAL_CID > +can be used for the same purpose, but it is preferable to use > +.B VMADDR_CID_LOCAL . > .SH ERRORS > .TP > .B EACCES > @@ -222,6 +231,11 @@ are valid. > Support for VMware (VMCI) has been available since Linux 3.9. > KVM (virtio) is supported since Linux 4.8. > Hyper-V is supported since Linux 4.14. > +.PP > +VMADDR_CID_LOCAL is supported since Linux 5.6. > +Local communication in the guest and on the host is available since Linux 5.6. > +Previous versions only supported local communication within a guest > +(not on the host), and only with some transports (VMCI and virtio). > .SH SEE ALSO > .BR bind (2), > .BR connect (2), > -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/