From: Cornelia Huck <cohuck@redhat.com>
To: Arseny Krasnov <arseny.krasnov@kaspersky.com>
Cc: Andra Paraschiv <andraprs@amazon.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Colin Ian King <colin.king@canonical.com>,
"oxffffaa@gmail.com" <oxffffaa@gmail.com>,
Norbert Slusarek <nslusarek@gmx.net>,
Stefan Hajnoczi <stefanha@redhat.com>,
"virtio-comment@lists.oasis-open.org"
<virtio-comment@lists.oasis-open.org>,
Jakub Kicinski <kuba@kernel.org>,
"virtualization@lists.linux-foundation.org"
<virtualization@lists.linux-foundation.org>,
"David S. Miller" <davem@davemloft.net>,
Jorgen Hansen <jhansen@vmware.com>
Subject: Re: [MASSMAIL KLMS] [virtio-comment] Re: [RFC PATCH v1] virtio-vsock: use enums instead of hardcoded constants
Date: Tue, 16 Mar 2021 09:11:40 +0100 [thread overview]
Message-ID: <20210316091140.51e26cf5.cohuck@redhat.com> (raw)
In-Reply-To: <25dbb0d6-9e3d-515c-0a6f-10686b76a31a@kaspersky.com>
On Tue, 16 Mar 2021 06:35:11 +0300
Arseny Krasnov <arseny.krasnov@kaspersky.com> wrote:
> On 15.03.2021 18:53, Cornelia Huck wrote:
> > On Mon, 15 Mar 2021 11:35:41 +0300
> > Arseny Krasnov <arseny.krasnov@kaspersky.com> wrote:
> >
> >> This replaces constants defined in "bit X set to Y" manner
> >> with enums from Linux kernel uapi headers.
> >> ---
> >> virtio-vsock.tex | 29 ++++++++++++++++++++++-------
> >> 1 file changed, 22 insertions(+), 7 deletions(-)
> >>
> >> diff --git a/virtio-vsock.tex b/virtio-vsock.tex
> >> index da7e641..a97a81e 100644
> >> --- a/virtio-vsock.tex
> >> +++ b/virtio-vsock.tex
> >> @@ -140,8 +140,14 @@ \subsubsection{Addressing}\label{sec:Device Types / Socket Device / Device Opera
> >> consists of a (cid, port number) tuple. The header fields used for this are
> >> \field{src_cid}, \field{src_port}, \field{dst_cid}, and \field{dst_port}.
> >>
> >> -Currently only stream sockets are supported. \field{type} is 1 for stream
> >> -socket types.
> >> +Currently only stream sockets are supported. \field{type} is one of the
> >> +following constants:
> >> +
> >> +\begin{lstlisting}
> >> +enum virtio_vsock_type {
> >> + VIRTIO_VSOCK_TYPE_STREAM = 1,
> >> +};
> >> +\end{lstlisting}
> >>
> >> Stream sockets provide in-order, guaranteed, connection-oriented delivery
> >> without message boundaries.
> >> @@ -221,11 +227,20 @@ \subsubsection{Stream Sockets}\label{sec:Device Types / Socket Device / Device O
> >> a listening socket does not exist on the destination or the destination has
> >> insufficient resources to establish the connection.
> >>
> >> -When a connected socket receives VIRTIO_VSOCK_OP_SHUTDOWN the header
> >> -\field{flags} field bit 0 indicates that the peer will not receive any more
> >> -data and bit 1 indicates that the peer will not send any more data. These
> >> -hints are permanent once sent and successive packets with bits clear do not
> >> -reset them.
> >> +When a connected socket receives VIRTIO_VSOCK_OP_SHUTDOWN, header \field{flags}
> >> +field is one of the following constants:
> > I don't think these two are required to be mutually exclusive (i.e.
> > both can be indicated at the same time?)
>
> I'm not sure, in Linux driver there are several cases when these constants are used
>
> independently from each over, but I think, this is question to implementation of virtio
>
> vsock protocol, while this patch is cosmetic for specification.
Yes, even if Linux doesn't use it like that, we allow it in the spec.
What about:
"When a connected socked receives VIRTIO_VSOCK_OP_SHUTDOWN, the header
\field{flags} contains a combination of one or more of the following
constants:"
?
>
> >
> >> +
> >> +\begin{lstlisting}
> >> +enum virtio_vsock_shutdown {
> >> + VIRTIO_VSOCK_SHUTDOWN_RCV = 1,
> >> + VIRTIO_VSOCK_SHUTDOWN_SEND = 2,
> >> +};
> >> +\end{lstlisting}
> >> +
> >> +VIRTIO_VSOCK_SHUTDOWN_RCV indicates that the peer will not receive any more
> >> +data and VIRTIO_VSOCK_SHUTDOWN_SEND indicates that the peer will not send
> >> +any more data. These hints are permanent once sent and successive packets
> >> +with bits clear do not reset them.
> >>
> >> The VIRTIO_VSOCK_OP_RST packet aborts the connection process or forcibly
> >> disconnects a connected socket.
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next prev parent reply other threads:[~2021-03-16 8:12 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20210315083547.2283420-1-arseny.krasnov@kaspersky.com>
2021-03-15 15:53 ` [RFC PATCH v1] virtio-vsock: use enums instead of hardcoded constants Cornelia Huck
[not found] ` <25dbb0d6-9e3d-515c-0a6f-10686b76a31a@kaspersky.com>
2021-03-16 8:11 ` Cornelia Huck [this message]
2021-03-16 13:23 ` [MASSMAIL KLMS] [virtio-comment] " Michael S. Tsirkin
2021-03-16 13:38 ` Cornelia Huck
2021-03-16 8:19 ` Stefano Garzarella
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210316091140.51e26cf5.cohuck@redhat.com \
--to=cohuck@redhat.com \
--cc=andraprs@amazon.com \
--cc=arseny.krasnov@kaspersky.com \
--cc=colin.king@canonical.com \
--cc=davem@davemloft.net \
--cc=jhansen@vmware.com \
--cc=kuba@kernel.org \
--cc=mst@redhat.com \
--cc=nslusarek@gmx.net \
--cc=oxffffaa@gmail.com \
--cc=stefanha@redhat.com \
--cc=virtio-comment@lists.oasis-open.org \
--cc=virtualization@lists.linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox