Discussion of the implementations of VIRTIO specification
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Parav Pandit <parav@nvidia.com>
Cc: virtio-dev@lists.oasis-open.org, pasic@linux.ibm.com,
	cohuck@redhat.com, virtio-comment@lists.oasis-open.org,
	shahafs@nvidia.com, Jiri Pirko <jiri@nvidia.com>
Subject: [virtio-dev] Re: [virtio-comment] [PATCH v2 1/7] transport-pci: Refer to the vq by its number
Date: Tue, 21 Mar 2023 05:01:13 -0400	[thread overview]
Message-ID: <20230321045804-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20230321041036.201439-2-parav@nvidia.com>

On Tue, Mar 21, 2023 at 06:10:30AM +0200, Parav Pandit wrote:
> Currently specification uses virtqueue index and
> number interchangeably to refer to the virtqueue.
> 
> Instead refer to it by its number.
> 
> This patch is on top of [1].
> 
> [1] https://lists.oasis-open.org/archives/virtio-dev/202302/msg00527.html
> 
> Fixes: https://github.com/oasis-tcs/virtio-spec/issues/163
> Reviewed-by: Jiri Pirko <jiri@nvidia.com>
> Signed-off-by: Parav Pandit <parav@nvidia.com>
> ---
>  transport-pci.tex | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/transport-pci.tex b/transport-pci.tex
> index b07a822..dbd3adb 100644
> --- a/transport-pci.tex
> +++ b/transport-pci.tex
> @@ -1005,7 +1005,7 @@ \subsubsection{Device Initialization}\label{sec:Virtio Transport Options / Virti
>  The driver typically does this as follows, for each virtqueue a device has:
>  
>  \begin{enumerate}
> -\item Write the virtqueue index (first queue is 0) to \field{queue_select}.
> +\item Write the virtqueue number (first queue is 0) to \field{queue_select}.
>  
>  \item Read the virtqueue size from \field{queue_size}. This controls how big the virtqueue is
>    (see \ref{sec:Basic Facilities of a Virtio Device / Virtqueues}~\nameref{sec:Basic Facilities of a Virtio Device / Virtqueues}). If this field is 0, the virtqueue does not exist.
> @@ -1035,7 +1035,7 @@ \subsubsection{Available Buffer Notifications}\label{sec:Virtio Transport Option
>  
>  When VIRTIO_F_NOTIFICATION_DATA has not been negotiated,
>  the driver sends an available buffer notification to the device by writing
> -the 16-bit virtqueue index
> +the 16-bit virtqueue number
>  of this virtqueue to the Queue Notify address.
>  
>  When VIRTIO_F_NOTIFICATION_DATA has been negotiated,
> @@ -1053,7 +1053,7 @@ \subsubsection{Available Buffer Notifications}\label{sec:Virtio Transport Option
>  If VIRTIO_F_NOTIF_CONFIG_DATA has been negotiated:
>  \begin{itemize}
>  \item If VIRTIO_F_NOTIFICATION_DATA has not been negotiated, the driver MUST use the
> -\field{queue_notify_data} value instead of the virtqueue index.
> +\field{queue_notify_data} value instead of the virtqueue number.
>  \item If VIRTIO_F_NOTIFICATION_DATA has been negotiated, the driver MUST set the
>  \field{vqn} field to the \field{queue_notify_data} value.
>  \end{itemize}



Hmm OK.

Now here's another a problem:

\item[\field{queue_notify_data}]
        This field exists only if VIRTIO_F_NOTIF_CONFIG_DATA has been negotiated.
        The driver will use this value to put it in the 'virtqueue number' field
        in the available buffer notification structure.

and I think it's actually \field{vqn} not 'virtqueue number':
	\item [vqn] VQ number to be notified.

and it also says

        In a trivial case the device can set \field{queue_notify_data}=vqn. Some devices
        may benefit from providing another value, for example an internal virtqueue
        identifier, or an internal offset related to the virtqueue number.

and that's backwards since vqn is always queue_notify_data.
What is meant is "set queue_notify_data to the virtqueue number'.


---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org


  reply	other threads:[~2023-03-21  9:01 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-21  4:10 [virtio-dev] [PATCH v2 0/7] Rename queue index to queue number Parav Pandit
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 1/7] transport-pci: Refer to the vq by its number Parav Pandit
2023-03-21  9:01   ` Michael S. Tsirkin [this message]
2023-03-21 20:43     ` [virtio-dev] RE: [virtio-comment] " Parav Pandit
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 2/7] transport-mmio: Rename QueueNum register Parav Pandit
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 3/7] transport-mmio: Refer to the vq by its number Parav Pandit
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 4/7] transport-ccw: Rename queue depth/size to other transports Parav Pandit
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 5/7] transport-ccw: Refer to the vq by its number Parav Pandit
2023-03-21  8:46   ` [virtio-dev] " Michael S. Tsirkin
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 6/7] virtio-net: Avoid duplicate receive queue example Parav Pandit
2023-03-21  4:10 ` [virtio-dev] [PATCH v2 7/7] virtio-net: Describe RSS using receive queue handle Parav Pandit
2023-03-21  8:55   ` [virtio-dev] " Michael S. Tsirkin
2023-03-21 20:54     ` [virtio-dev] " Parav Pandit
2023-03-21 21:15       ` Parav Pandit
2023-03-21  9:05 ` [virtio-dev] Re: [PATCH v2 0/7] Rename queue index to queue number Michael S. Tsirkin
2023-03-21 20:57   ` [virtio-dev] " Parav Pandit

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=20230321045804-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=jiri@nvidia.com \
    --cc=parav@nvidia.com \
    --cc=pasic@linux.ibm.com \
    --cc=shahafs@nvidia.com \
    --cc=virtio-comment@lists.oasis-open.org \
    --cc=virtio-dev@lists.oasis-open.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