* [PATCH v3] vsock.7: add VMADDR_CID_LOCAL description
@ 2020-02-17 17:31 Stefano Garzarella
2020-02-18 9:53 ` Stefan Hajnoczi
0 siblings, 1 reply; 3+ messages in thread
From: Stefano Garzarella @ 2020-02-17 17:31 UTC (permalink / raw)
To: mtk.manpages
Cc: linux-man, Dexuan Cui, Stefan Hajnoczi, Jorgen Hansen, netdev
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@vmware.com>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
---
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]
---
man7/vsock.7 | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/man7/vsock.7 b/man7/vsock.7
index c5ffcf07d..219e3505f 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,16 @@ 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
+The
+.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 +232,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),
--
2.24.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v3] vsock.7: add VMADDR_CID_LOCAL description
2020-02-17 17:31 [PATCH v3] vsock.7: add VMADDR_CID_LOCAL description Stefano Garzarella
@ 2020-02-18 9:53 ` Stefan Hajnoczi
2020-02-18 9:59 ` Stefano Garzarella
0 siblings, 1 reply; 3+ messages in thread
From: Stefan Hajnoczi @ 2020-02-18 9:53 UTC (permalink / raw)
To: Stefano Garzarella
Cc: mtk.manpages, linux-man, Dexuan Cui, Jorgen Hansen, netdev
[-- Attachment #1: Type: text/plain, Size: 1664 bytes --]
On Mon, Feb 17, 2020 at 06:31:21PM +0100, 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@vmware.com>
> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
> ---
> 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]
> ---
> man7/vsock.7 | 19 +++++++++++++++++--
> 1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/man7/vsock.7 b/man7/vsock.7
> index c5ffcf07d..219e3505f 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,16 @@ 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
> +The
> +.B VMADDR_CID_LOCAL
> +(1) directs packets to the same host that generated them. This is useful
Please see my comment on v2. "The VMADDR_CID_LOCAL (1) directs packets
..." sounds unnatural. Please drop "The".
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v3] vsock.7: add VMADDR_CID_LOCAL description
2020-02-18 9:53 ` Stefan Hajnoczi
@ 2020-02-18 9:59 ` Stefano Garzarella
0 siblings, 0 replies; 3+ messages in thread
From: Stefano Garzarella @ 2020-02-18 9:59 UTC (permalink / raw)
To: Stefan Hajnoczi
Cc: mtk.manpages, linux-man, Dexuan Cui, Jorgen Hansen, netdev
On Tue, Feb 18, 2020 at 09:53:19AM +0000, Stefan Hajnoczi wrote:
> On Mon, Feb 17, 2020 at 06:31:21PM +0100, 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@vmware.com>
> > Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
> > ---
> > 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]
> > ---
> > man7/vsock.7 | 19 +++++++++++++++++--
> > 1 file changed, 17 insertions(+), 2 deletions(-)
> >
> > diff --git a/man7/vsock.7 b/man7/vsock.7
> > index c5ffcf07d..219e3505f 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,16 @@ 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
> > +The
> > +.B VMADDR_CID_LOCAL
> > +(1) directs packets to the same host that generated them. This is useful
>
> Please see my comment on v2. "The VMADDR_CID_LOCAL (1) directs packets
> ..." sounds unnatural. Please drop "The".
I received it just now :O but you sent it 4 days ago!
Sorry for that!
I'll send v4 dropping "The".
Thanks,
Stefano
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-02-18 9:59 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-17 17:31 [PATCH v3] vsock.7: add VMADDR_CID_LOCAL description Stefano Garzarella
2020-02-18 9:53 ` Stefan Hajnoczi
2020-02-18 9:59 ` Stefano Garzarella
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).