* [PATCH v3] virtio-net: Improve introductory description
@ 2023-02-09 1:41 Parav Pandit
2023-02-09 11:38 ` [virtio-comment] " Cornelia Huck
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Parav Pandit @ 2023-02-09 1:41 UTC (permalink / raw)
To: mst, virtio-dev, cohuck; +Cc: virtio-comment, shahafs, Parav Pandit
The control VQ of the virtio network device is used beyond advance
steering control. The control VQ dynamically changes multiple features
of the initialized device.
Hence, update this area of control VQ introductory description at few
places and also place the link to its description.
Also update the introduction section to better describe receive and
transmit virtqueues.
Fixes: https://github.com/oasis-tcs/virtio-spec/issues/156
Signed-off-by: Parav Pandit <parav@nvidia.com>
---
This patch is on top of [1].
[1] https://lists.oasis-open.org/archives/virtio-dev/202301/msg00280.html
---
changelog:
v2->v3:
- further improve introduction
v1->v2:
- corrected/added article before transmit and receive virtqueue
- replaced listed with described
- updated set to negotiated for CTRL_VQ
- improved introduction wordings
v0->v1:
- replaced command queue to control virtqueue to reflect current state
- added link of control vq to its detailed section
- removed reference of cvq from more places that limits it to steering
- Addressed Cornelia's review comments:
- updated introduction section to better describe rq, sq, cvq.
- explicitly wrote that cvq is optional along with its feature bit
related description
- dropped few items from Cornelia's review as they do not exactly
fit with latest 1.2 specification as below.
- avoided listing number of queues in introduction as its linked to q
reset which can disable all queues
- avoid mentioning cvq as optional as there is better section for it
- avoid talking about queue pairs as spec and use cases allows not
operate in pairs mode
---
device-types/net/description.tex | 23 +++++++++++++----------
1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/device-types/net/description.tex b/device-types/net/description.tex
index 88a5770..bdf4810 100644
--- a/device-types/net/description.tex
+++ b/device-types/net/description.tex
@@ -2,13 +2,15 @@ \section{Network Device}\label{sec:Device Types / Network Device}
The virtio network device is a virtual network interface controller.
It consists of a virtual Ethernet link which connects the device
-to the Ethernet network. It is the most complex of the devices
-supported so far by virtio. It has enhanced rapidly and demonstrates
-clearly how support for new features are added to an existing
-device. Empty buffers are placed in one virtqueue for receiving
-packets, and outgoing packets are enqueued into another for
-transmission in that order. A third command queue is used to
-control advanced filtering features.
+to the Ethernet network. The device has transmit and receive
+queues. The driver posts empty buffers in the receive virtqueue.
+The device receives the incoming packets from the link; the device
+places these incoming packets in the receive virtqueue buffers.
+The driver enqueues outgoing packets to the transmit virtqueue. The device
+dequeues these packets from the transmit virtqueue and sends them to
+the link. The device may have a control virtuqueue. The driver
+uses the control virtqueue to dynamically manipulate various
+features of the initialized device.
\subsection{Device ID}\label{sec:Device Types / Network Device / Device ID}
@@ -28,7 +30,8 @@ \subsection{Virtqueues}\label{sec:Device Types / Network Device / Virtqueues}
N=1 if neither VIRTIO_NET_F_MQ nor VIRTIO_NET_F_RSS are negotiated, otherwise N is set by
\field{max_virtqueue_pairs}.
- controlq only exists if VIRTIO_NET_F_CTRL_VQ set.
+controlq is optional; it only exists if VIRTIO_NET_F_CTRL_VQ is
+negotiated.
\subsection{Feature bits}\label{sec:Device Types / Network Device / Feature bits}
@@ -389,8 +392,8 @@ \subsection{Device Operation}\label{sec:Device Types / Network Device / Device O
};
\end{lstlisting}
-The controlq is used to control device features such as
-filtering.
+The controlq is used to control many device features described further in
+section \ref{sec:Device Types / Network Device / Device Operation / Control Virtqueue}.
\subsubsection{Legacy Interface: Device Operation}\label{sec:Device Types / Network Device / Device Operation / Legacy Interface: Device Operation}
When using the legacy interface, transitional devices and drivers
--
2.26.2
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [virtio-comment] Re: [PATCH v3] virtio-net: Improve introductory description
2023-02-09 1:41 [PATCH v3] virtio-net: Improve introductory description Parav Pandit
@ 2023-02-09 11:38 ` Cornelia Huck
2023-02-09 12:38 ` Parav Pandit
2023-02-09 12:02 ` [virtio-comment] " David Edmondson
2023-02-09 12:18 ` Michael S. Tsirkin
2 siblings, 1 reply; 11+ messages in thread
From: Cornelia Huck @ 2023-02-09 11:38 UTC (permalink / raw)
To: Parav Pandit, mst, virtio-dev; +Cc: virtio-comment, shahafs, Parav Pandit
On Thu, Feb 09 2023, Parav Pandit <parav@nvidia.com> wrote:
> The control VQ of the virtio network device is used beyond advance
> steering control. The control VQ dynamically changes multiple features
> of the initialized device.
>
> Hence, update this area of control VQ introductory description at few
> places and also place the link to its description.
>
> Also update the introduction section to better describe receive and
> transmit virtqueues.
>
> Fixes: https://github.com/oasis-tcs/virtio-spec/issues/156
> Signed-off-by: Parav Pandit <parav@nvidia.com>
> ---
> This patch is on top of [1].
>
> [1] https://lists.oasis-open.org/archives/virtio-dev/202301/msg00280.html
> ---
> changelog:
> v2->v3:
> - further improve introduction
> v1->v2:
> - corrected/added article before transmit and receive virtqueue
> - replaced listed with described
> - updated set to negotiated for CTRL_VQ
> - improved introduction wordings
> v0->v1:
> - replaced command queue to control virtqueue to reflect current state
> - added link of control vq to its detailed section
> - removed reference of cvq from more places that limits it to steering
> - Addressed Cornelia's review comments:
> - updated introduction section to better describe rq, sq, cvq.
> - explicitly wrote that cvq is optional along with its feature bit
> related description
> - dropped few items from Cornelia's review as they do not exactly
> fit with latest 1.2 specification as below.
> - avoided listing number of queues in introduction as its linked to q
> reset which can disable all queues
> - avoid mentioning cvq as optional as there is better section for it
> - avoid talking about queue pairs as spec and use cases allows not
> operate in pairs mode
> ---
> device-types/net/description.tex | 23 +++++++++++++----------
> 1 file changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/device-types/net/description.tex b/device-types/net/description.tex
> index 88a5770..bdf4810 100644
> --- a/device-types/net/description.tex
> +++ b/device-types/net/description.tex
> @@ -2,13 +2,15 @@ \section{Network Device}\label{sec:Device Types / Network Device}
>
> The virtio network device is a virtual network interface controller.
> It consists of a virtual Ethernet link which connects the device
> -to the Ethernet network. It is the most complex of the devices
> -supported so far by virtio. It has enhanced rapidly and demonstrates
> -clearly how support for new features are added to an existing
> -device. Empty buffers are placed in one virtqueue for receiving
> -packets, and outgoing packets are enqueued into another for
> -transmission in that order. A third command queue is used to
> -control advanced filtering features.
> +to the Ethernet network. The device has transmit and receive
> +queues. The driver posts empty buffers in the receive virtqueue.
> +The device receives the incoming packets from the link; the device
> +places these incoming packets in the receive virtqueue buffers.
> +The driver enqueues outgoing packets to the transmit virtqueue. The device
> +dequeues these packets from the transmit virtqueue and sends them to
> +the link. The device may have a control virtuqueue. The driver
typo: s/virtuqueue/virtqueue/
> +uses the control virtqueue to dynamically manipulate various
> +features of the initialized device.
>
> \subsection{Device ID}\label{sec:Device Types / Network Device / Device ID}
This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.
In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.
Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [virtio-comment] [PATCH v3] virtio-net: Improve introductory description
2023-02-09 1:41 [PATCH v3] virtio-net: Improve introductory description Parav Pandit
2023-02-09 11:38 ` [virtio-comment] " Cornelia Huck
@ 2023-02-09 12:02 ` David Edmondson
2023-02-09 12:45 ` Parav Pandit
2023-02-09 12:18 ` Michael S. Tsirkin
2 siblings, 1 reply; 11+ messages in thread
From: David Edmondson @ 2023-02-09 12:02 UTC (permalink / raw)
To: Parav Pandit; +Cc: mst, virtio-dev, cohuck, shahafs, virtio-comment
On Thursday, 2023-02-09 at 03:41:08 +02, Parav Pandit wrote:
> The control VQ of the virtio network device is used beyond advance
> steering control. The control VQ dynamically changes multiple features
> of the initialized device.
>
> Hence, update this area of control VQ introductory description at few
> places and also place the link to its description.
>
> Also update the introduction section to better describe receive and
> transmit virtqueues.
>
> Fixes: https://github.com/oasis-tcs/virtio-spec/issues/156
> Signed-off-by: Parav Pandit <parav@nvidia.com>
> ---
> This patch is on top of [1].
>
> [1] https://lists.oasis-open.org/archives/virtio-dev/202301/msg00280.html
> ---
> changelog:
> v2->v3:
> - further improve introduction
> v1->v2:
> - corrected/added article before transmit and receive virtqueue
> - replaced listed with described
> - updated set to negotiated for CTRL_VQ
> - improved introduction wordings
> v0->v1:
> - replaced command queue to control virtqueue to reflect current state
> - added link of control vq to its detailed section
> - removed reference of cvq from more places that limits it to steering
> - Addressed Cornelia's review comments:
> - updated introduction section to better describe rq, sq, cvq.
> - explicitly wrote that cvq is optional along with its feature bit
> related description
> - dropped few items from Cornelia's review as they do not exactly
> fit with latest 1.2 specification as below.
> - avoided listing number of queues in introduction as its linked to q
> reset which can disable all queues
> - avoid mentioning cvq as optional as there is better section for it
> - avoid talking about queue pairs as spec and use cases allows not
> operate in pairs mode
> ---
> device-types/net/description.tex | 23 +++++++++++++----------
> 1 file changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/device-types/net/description.tex b/device-types/net/description.tex
> index 88a5770..bdf4810 100644
> --- a/device-types/net/description.tex
> +++ b/device-types/net/description.tex
> @@ -2,13 +2,15 @@ \section{Network Device}\label{sec:Device Types / Network Device}
>
> The virtio network device is a virtual network interface controller.
> It consists of a virtual Ethernet link which connects the device
> -to the Ethernet network. It is the most complex of the devices
> -supported so far by virtio. It has enhanced rapidly and demonstrates
> -clearly how support for new features are added to an existing
> -device. Empty buffers are placed in one virtqueue for receiving
> -packets, and outgoing packets are enqueued into another for
> -transmission in that order. A third command queue is used to
> -control advanced filtering features.
> +to the Ethernet network. The device has transmit and receive
> +queues. The driver posts empty buffers in the receive virtqueue.
> +The device receives the incoming packets from the link; the device
> +places these incoming packets in the receive virtqueue buffers.
> +The driver enqueues outgoing packets to the transmit virtqueue. The
> device
We "post" receive buffers, yet "enqueue" transmit buffers. These actions
seem the same.
Maybe "submits" in both cases?
> +dequeues these packets from the transmit virtqueue and sends them to
> +the link. The device may have a control virtuqueue. The driver
> +uses the control virtqueue to dynamically manipulate various
> +features of the initialized device.
>
> \subsection{Device ID}\label{sec:Device Types / Network Device / Device ID}
>
> @@ -28,7 +30,8 @@ \subsection{Virtqueues}\label{sec:Device Types / Network Device / Virtqueues}
> N=1 if neither VIRTIO_NET_F_MQ nor VIRTIO_NET_F_RSS are negotiated, otherwise N is set by
> \field{max_virtqueue_pairs}.
>
> - controlq only exists if VIRTIO_NET_F_CTRL_VQ set.
> +controlq is optional; it only exists if VIRTIO_NET_F_CTRL_VQ is
> +negotiated.
>
> \subsection{Feature bits}\label{sec:Device Types / Network Device / Feature bits}
>
> @@ -389,8 +392,8 @@ \subsection{Device Operation}\label{sec:Device Types / Network Device / Device O
> };
> \end{lstlisting}
>
> -The controlq is used to control device features such as
> -filtering.
> +The controlq is used to control many device features described further in
> +section \ref{sec:Device Types / Network Device / Device Operation / Control Virtqueue}.
>
> \subsubsection{Legacy Interface: Device Operation}\label{sec:Device Types / Network Device / Device Operation / Legacy Interface: Device Operation}
> When using the legacy interface, transitional devices and drivers
--
Sorry I'm not home right now, I'm walking into spiderwebs.
This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.
In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.
Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3] virtio-net: Improve introductory description
2023-02-09 1:41 [PATCH v3] virtio-net: Improve introductory description Parav Pandit
2023-02-09 11:38 ` [virtio-comment] " Cornelia Huck
2023-02-09 12:02 ` [virtio-comment] " David Edmondson
@ 2023-02-09 12:18 ` Michael S. Tsirkin
2023-02-09 12:29 ` [virtio-dev] " Cornelia Huck
2 siblings, 1 reply; 11+ messages in thread
From: Michael S. Tsirkin @ 2023-02-09 12:18 UTC (permalink / raw)
To: Parav Pandit; +Cc: virtio-dev, cohuck, virtio-comment, shahafs
On Thu, Feb 09, 2023 at 03:41:08AM +0200, Parav Pandit wrote:
> The control VQ of the virtio network device is used beyond advance
> steering control. The control VQ dynamically changes multiple features
> of the initialized device.
>
> Hence, update this area of control VQ introductory description at few
> places and also place the link to its description.
>
> Also update the introduction section to better describe receive and
> transmit virtqueues.
>
> Fixes: https://github.com/oasis-tcs/virtio-spec/issues/156
> Signed-off-by: Parav Pandit <parav@nvidia.com>
> ---
> This patch is on top of [1].
>
> [1] https://lists.oasis-open.org/archives/virtio-dev/202301/msg00280.html
> ---
> changelog:
> v2->v3:
> - further improve introduction
> v1->v2:
> - corrected/added article before transmit and receive virtqueue
> - replaced listed with described
> - updated set to negotiated for CTRL_VQ
> - improved introduction wordings
> v0->v1:
> - replaced command queue to control virtqueue to reflect current state
> - added link of control vq to its detailed section
> - removed reference of cvq from more places that limits it to steering
> - Addressed Cornelia's review comments:
> - updated introduction section to better describe rq, sq, cvq.
> - explicitly wrote that cvq is optional along with its feature bit
> related description
> - dropped few items from Cornelia's review as they do not exactly
> fit with latest 1.2 specification as below.
> - avoided listing number of queues in introduction as its linked to q
> reset which can disable all queues
> - avoid mentioning cvq as optional as there is better section for it
> - avoid talking about queue pairs as spec and use cases allows not
> operate in pairs mode
> ---
> device-types/net/description.tex | 23 +++++++++++++----------
> 1 file changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/device-types/net/description.tex b/device-types/net/description.tex
> index 88a5770..bdf4810 100644
> --- a/device-types/net/description.tex
> +++ b/device-types/net/description.tex
> @@ -2,13 +2,15 @@ \section{Network Device}\label{sec:Device Types / Network Device}
>
> The virtio network device is a virtual network interface controller.
> It consists of a virtual Ethernet link which connects the device
> -to the Ethernet network. It is the most complex of the devices
> -supported so far by virtio. It has enhanced rapidly and demonstrates
> -clearly how support for new features are added to an existing
> -device. Empty buffers are placed in one virtqueue for receiving
> -packets, and outgoing packets are enqueued into another for
> -transmission in that order. A third command queue is used to
> -control advanced filtering features.
> +to the Ethernet network. The device has transmit and receive
> +queues. The driver posts empty buffers in the receive virtqueue.
> +The device receives the incoming packets
s/the// - 1st time we mention packets
> from the link; the device
> +places these incoming packets in the receive virtqueue buffers.
> +The driver enqueues outgoing packets to the transmit virtqueue. The device
> +dequeues these packets from the transmit virtqueue and sends them to
> +the link. The device may have a control virtuqueue. The driver
> +uses the control virtqueue to dynamically manipulate various
> +features of the initialized device.
>
> \subsection{Device ID}\label{sec:Device Types / Network Device / Device ID}
>
> @@ -28,7 +30,8 @@ \subsection{Virtqueues}\label{sec:Device Types / Network Device / Virtqueues}
> N=1 if neither VIRTIO_NET_F_MQ nor VIRTIO_NET_F_RSS are negotiated, otherwise N is set by
> \field{max_virtqueue_pairs}.
>
> - controlq only exists if VIRTIO_NET_F_CTRL_VQ set.
> +controlq is optional; it only exists if VIRTIO_NET_F_CTRL_VQ is
> +negotiated.
>
> \subsection{Feature bits}\label{sec:Device Types / Network Device / Feature bits}
>
> @@ -389,8 +392,8 @@ \subsection{Device Operation}\label{sec:Device Types / Network Device / Device O
> };
> \end{lstlisting}
>
> -The controlq is used to control device features such as
> -filtering.
> +The controlq is used to control many device features described further in
many seems subjective.
s/many/some of the/ ?
> +section \ref{sec:Device Types / Network Device / Device Operation / Control Virtqueue}.
>
> \subsubsection{Legacy Interface: Device Operation}\label{sec:Device Types / Network Device / Device Operation / Legacy Interface: Device Operation}
> When using the legacy interface, transitional devices and drivers
> --
> 2.26.2
^ permalink raw reply [flat|nested] 11+ messages in thread
* [virtio-dev] Re: [PATCH v3] virtio-net: Improve introductory description
2023-02-09 12:18 ` Michael S. Tsirkin
@ 2023-02-09 12:29 ` Cornelia Huck
2023-02-09 12:31 ` Michael S. Tsirkin
0 siblings, 1 reply; 11+ messages in thread
From: Cornelia Huck @ 2023-02-09 12:29 UTC (permalink / raw)
To: Michael S. Tsirkin, Parav Pandit; +Cc: virtio-dev, virtio-comment, shahafs
On Thu, Feb 09 2023, "Michael S. Tsirkin" <mst@redhat.com> wrote:
> On Thu, Feb 09, 2023 at 03:41:08AM +0200, Parav Pandit wrote:
>> @@ -389,8 +392,8 @@ \subsection{Device Operation}\label{sec:Device Types / Network Device / Device O
>> };
>> \end{lstlisting}
>>
>> -The controlq is used to control device features such as
>> -filtering.
>> +The controlq is used to control many device features described further in
>
> many seems subjective.
>
> s/many/some of the/ ?
s/many/various/ instead? That section should cover all of the device
features controled via the control vq.
>
>> +section \ref{sec:Device Types / Network Device / Device Operation / Control Virtqueue}.
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3] virtio-net: Improve introductory description
2023-02-09 12:29 ` [virtio-dev] " Cornelia Huck
@ 2023-02-09 12:31 ` Michael S. Tsirkin
2023-02-09 12:47 ` Parav Pandit
0 siblings, 1 reply; 11+ messages in thread
From: Michael S. Tsirkin @ 2023-02-09 12:31 UTC (permalink / raw)
To: Cornelia Huck; +Cc: Parav Pandit, virtio-dev, virtio-comment, shahafs
On Thu, Feb 09, 2023 at 01:29:57PM +0100, Cornelia Huck wrote:
> On Thu, Feb 09 2023, "Michael S. Tsirkin" <mst@redhat.com> wrote:
>
> > On Thu, Feb 09, 2023 at 03:41:08AM +0200, Parav Pandit wrote:
> >> @@ -389,8 +392,8 @@ \subsection{Device Operation}\label{sec:Device Types / Network Device / Device O
> >> };
> >> \end{lstlisting}
> >>
> >> -The controlq is used to control device features such as
> >> -filtering.
> >> +The controlq is used to control many device features described further in
> >
> > many seems subjective.
> >
> > s/many/some of the/ ?
>
> s/many/various/ instead? That section should cover all of the device
> features controled via the control vq.
I like that.
> >
> >> +section \ref{sec:Device Types / Network Device / Device Operation / Control Virtqueue}.
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH v3] virtio-net: Improve introductory description
2023-02-09 11:38 ` [virtio-comment] " Cornelia Huck
@ 2023-02-09 12:38 ` Parav Pandit
0 siblings, 0 replies; 11+ messages in thread
From: Parav Pandit @ 2023-02-09 12:38 UTC (permalink / raw)
To: Cornelia Huck, mst@redhat.com, virtio-dev@lists.oasis-open.org
Cc: virtio-comment@lists.oasis-open.org, Shahaf Shuler
> From: Cornelia Huck <cohuck@redhat.com>
> Sent: Thursday, February 9, 2023 6:38 AM
> > +to the Ethernet network. The device has transmit and receive queues.
> > +The driver posts empty buffers in the receive virtqueue.
> > +The device receives the incoming packets from the link; the device
> > +places these incoming packets in the receive virtqueue buffers.
> > +The driver enqueues outgoing packets to the transmit virtqueue. The
> > +device dequeues these packets from the transmit virtqueue and sends
> > +them to the link. The device may have a control virtuqueue. The
> > +driver
>
> typo: s/virtuqueue/virtqueue/
Fix fix. Thanks.
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [virtio-comment] [PATCH v3] virtio-net: Improve introductory description
2023-02-09 12:02 ` [virtio-comment] " David Edmondson
@ 2023-02-09 12:45 ` Parav Pandit
2023-02-09 12:48 ` Michael S. Tsirkin
2023-02-09 13:16 ` David Edmondson
0 siblings, 2 replies; 11+ messages in thread
From: Parav Pandit @ 2023-02-09 12:45 UTC (permalink / raw)
To: David Edmondson
Cc: mst@redhat.com, virtio-dev@lists.oasis-open.org,
cohuck@redhat.com, Shahaf Shuler,
virtio-comment@lists.oasis-open.org
> From: David Edmondson <david.edmondson@oracle.com>
> Sent: Thursday, February 9, 2023 7:03 AM
>
[..]
> > +to the Ethernet network. The device has transmit and receive queues.
> > +The driver posts empty buffers in the receive virtqueue.
> > +The device receives the incoming packets from the link; the device
> > +places these incoming packets in the receive virtqueue buffers.
> > +The driver enqueues outgoing packets to the transmit virtqueue. The
> > device
>
> We "post" receive buffers, yet "enqueue" transmit buffers. These actions seem
> the same.
>
> Maybe "submits" in both cases?
>
At virtqueue level it is same.
In context of virtio net device, transmit operation is queued that awaits processing (to send) by device.
While receive side, its unsolicited operation done by driver that doesn't await processing by device.
Whenever/if in future when a packet arrives, the posted buffer is consumed.
So enqueue and post were capturing this contextual detail.
But maybe I am trying to be too precise here but above wording were more natural to me at net level. :)
Let me know..
This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.
In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.
Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: [PATCH v3] virtio-net: Improve introductory description
2023-02-09 12:31 ` Michael S. Tsirkin
@ 2023-02-09 12:47 ` Parav Pandit
0 siblings, 0 replies; 11+ messages in thread
From: Parav Pandit @ 2023-02-09 12:47 UTC (permalink / raw)
To: Michael S. Tsirkin, Cornelia Huck
Cc: virtio-dev@lists.oasis-open.org,
virtio-comment@lists.oasis-open.org, Shahaf Shuler
> From: Michael S. Tsirkin <mst@redhat.com>
> Sent: Thursday, February 9, 2023 7:31 AM
>
> On Thu, Feb 09, 2023 at 01:29:57PM +0100, Cornelia Huck wrote:
> > On Thu, Feb 09 2023, "Michael S. Tsirkin" <mst@redhat.com> wrote:
> >
> > > On Thu, Feb 09, 2023 at 03:41:08AM +0200, Parav Pandit wrote:
> > >> @@ -389,8 +392,8 @@ \subsection{Device Operation}\label{sec:Device
> > >> Types / Network Device / Device O }; \end{lstlisting}
> > >>
> > >> -The controlq is used to control device features such as
> > >> -filtering.
> > >> +The controlq is used to control many device features described
> > >> +further in
> > >
> > > many seems subjective.
> > >
> > > s/many/some of the/ ?
> >
> > s/many/various/ instead? That section should cover all of the device
> > features controled via the control vq.
>
> I like that.
>
Looks good. Will send v4.
> > >
> > >> +section \ref{sec:Device Types / Network Device / Device Operation /
> Control Virtqueue}.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [virtio-comment] [PATCH v3] virtio-net: Improve introductory description
2023-02-09 12:45 ` Parav Pandit
@ 2023-02-09 12:48 ` Michael S. Tsirkin
2023-02-09 13:16 ` David Edmondson
1 sibling, 0 replies; 11+ messages in thread
From: Michael S. Tsirkin @ 2023-02-09 12:48 UTC (permalink / raw)
To: Parav Pandit
Cc: David Edmondson, virtio-dev@lists.oasis-open.org,
cohuck@redhat.com, Shahaf Shuler,
virtio-comment@lists.oasis-open.org
On Thu, Feb 09, 2023 at 12:45:09PM +0000, Parav Pandit wrote:
>
> > From: David Edmondson <david.edmondson@oracle.com>
> > Sent: Thursday, February 9, 2023 7:03 AM
> >
>
> [..]
> > > +to the Ethernet network. The device has transmit and receive queues.
> > > +The driver posts empty buffers in the receive virtqueue.
> > > +The device receives the incoming packets from the link; the device
> > > +places these incoming packets in the receive virtqueue buffers.
> > > +The driver enqueues outgoing packets to the transmit virtqueue. The
> > > device
> >
> > We "post" receive buffers, yet "enqueue" transmit buffers. These actions seem
> > the same.
> >
> > Maybe "submits" in both cases?
> >
> At virtqueue level it is same.
> In context of virtio net device, transmit operation is queued that awaits processing (to send) by device.
> While receive side, its unsolicited operation done by driver that doesn't await processing by device.
> Whenever/if in future when a packet arrives, the posted buffer is consumed.
>
> So enqueue and post were capturing this contextual detail.
> But maybe I am trying to be too precise here but above wording were more natural to me at net level. :)
> Let me know..
Just "add" - this is what happens at vq level:
Driver makes requests available to device by adding
an available buffer to the queue, i.e., adding a buffer
--
MST
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [virtio-comment] [PATCH v3] virtio-net: Improve introductory description
2023-02-09 12:45 ` Parav Pandit
2023-02-09 12:48 ` Michael S. Tsirkin
@ 2023-02-09 13:16 ` David Edmondson
1 sibling, 0 replies; 11+ messages in thread
From: David Edmondson @ 2023-02-09 13:16 UTC (permalink / raw)
To: Parav Pandit
Cc: mst@redhat.com, virtio-dev@lists.oasis-open.org,
cohuck@redhat.com, Shahaf Shuler,
virtio-comment@lists.oasis-open.org
On Thursday, 2023-02-09 at 12:45:09 UTC, Parav Pandit wrote:
>> From: David Edmondson <david.edmondson@oracle.com>
>> Sent: Thursday, February 9, 2023 7:03 AM
>>
>
> [..]
>> > +to the Ethernet network. The device has transmit and receive queues.
>> > +The driver posts empty buffers in the receive virtqueue.
>> > +The device receives the incoming packets from the link; the device
>> > +places these incoming packets in the receive virtqueue buffers.
>> > +The driver enqueues outgoing packets to the transmit virtqueue. The
>> > device
>>
>> We "post" receive buffers, yet "enqueue" transmit buffers. These actions seem
>> the same.
>>
>> Maybe "submits" in both cases?
>>
> At virtqueue level it is same.
> In context of virtio net device, transmit operation is queued that awaits processing (to send) by device.
> While receive side, its unsolicited operation done by driver that doesn't await processing by device.
> Whenever/if in future when a packet arrives, the posted buffer is consumed.
>
> So enqueue and post were capturing this contextual detail.
> But maybe I am trying to be too precise here but above wording were more natural to me at net level. :)
> Let me know..
I'm not too bothered. The operations are functionally the same, so using
different words seemed odd.
--
Please don't stand so close to me.
This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.
In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.
Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2023-02-09 13:16 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-09 1:41 [PATCH v3] virtio-net: Improve introductory description Parav Pandit
2023-02-09 11:38 ` [virtio-comment] " Cornelia Huck
2023-02-09 12:38 ` Parav Pandit
2023-02-09 12:02 ` [virtio-comment] " David Edmondson
2023-02-09 12:45 ` Parav Pandit
2023-02-09 12:48 ` Michael S. Tsirkin
2023-02-09 13:16 ` David Edmondson
2023-02-09 12:18 ` Michael S. Tsirkin
2023-02-09 12:29 ` [virtio-dev] " Cornelia Huck
2023-02-09 12:31 ` Michael S. Tsirkin
2023-02-09 12:47 ` Parav Pandit
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.