From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: References: <20230209121221.15118-1-mst@redhat.com> <20230209121221.15118-6-mst@redhat.com> From: David Edmondson Subject: Re: [virtio-comment] [PATCH v10 05/10] pci: add admin vq registers to virtio over pci Date: Wed, 15 Feb 2023 08:49:00 +0000 In-reply-to: Message-ID: MIME-Version: 1.0 Content-Type: text/plain To: Max Gurtovoy Cc: "Michael S. Tsirkin" , virtio-dev@lists.oasis-open.org, jasowang@redhat.com, cohuck@redhat.com, sgarzare@redhat.com, stefanha@redhat.com, nrupal.jani@intel.com, Piotr.Uminski@intel.com, hang.yuan@intel.com, virtio@lists.oasis-open.org, Zhu Lingshan , pasic@linux.ibm.com, Shahaf Shuler , Parav Pandit , virtio-comment@lists.oasis-open.org List-ID: On Wednesday, 2023-02-15 at 02:53:34 +02, Max Gurtovoy wrote: > On 13/02/2023 14:21, David Edmondson wrote: >> On Thursday, 2023-02-09 at 07:13:48 -05, Michael S. Tsirkin wrote: >>> @@ -1031,6 +1035,19 @@ \subsubsection{Common configuration structure layout}\label{sec:Virtio Transport >>> This field exists only if VIRTIO_F_RING_RESET has been >>> negotiated. (see \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / Virtqueue Reset}). >>> +\item[\field{admin_queue_index}] >>> + The device uses this to report the index of the first administration virtqueue. >>> + This field is valid only if VIRTIO_F_ADMIN_VQ has been negotiated. >>> +\item[\field{admin_queue_num}] >>> + The device uses this to report the number of the >>> + supported administration virtqueues. Virtqueues with index >>> + between \field{admin_queue_index} and (\field{admin_queue_index} + >>> + \field{admin_queue_num}) inclusive serve as administration >>> + virtqueues. >>> + Thus the number of administration virtqueues equals >>> + (\field{admin_queue_num} + 1). >> Really the number of queues is "admin_queue_num + 1"? >> That seems ... odd. > > It's not odd if we'll mention that this is a zero based value. > MST, can you add it please for the next version ? The field is called ...num, which makes it seem like a count of things, when in reality it's the highest index. Perhaps the name could more accurately reflect the intent? > >> >>> + This field is valid only if VIRTIO_F_ADMIN_VQ has been >>> + negotiated. >>> \end{description} >>> \devicenormative{\paragraph}{Common configuration structure >>> layout}{Virtio Transport Options / Virtio Over PCI Bus / PCI Device >>> Layout / Common configuration structure layout} >>> @@ -1117,6 +1134,14 @@ \subsubsection{Common configuration structure layout}\label{sec:Virtio Transport >>> were used before the queue reset. >>> (see \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / Virtqueue Reset}). >>> +If VIRTIO_F_ADMIN_VQ has been negotiated, and if the driver >>> +configures any administration virtqueues, the driver MUST >>> +configure the administration virtqueues using the index >>> +in the range \field{admin_queue_index} to >>> +\field{admin_queue_index} + \field{admin_queue_num} inclusive. >>> +The driver MAY configure less administration virtqueues than >>> +supported by the device. >>> + >>> \subsubsection{Notification structure layout}\label{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout / Notification capability} >>> The notification location is found using the >>> VIRTIO_PCI_CAP_NOTIFY_CFG >>> @@ -7684,6 +7709,15 @@ \chapter{Reserved Feature Bits}\label{sec:Reserved Feature Bits} >>> \item[VIRTIO_F_ADMIN_VQ(41)] This feature indicates that the >>> device exposes one or more >>> administration virtqueues. >>> + At the moment this feature is only supported for devices using >>> + \ref{sec:Virtio Transport Options / Virtio Over PCI >>> + Bus}~\nameref{sec:Virtio Transport Options / Virtio Over PCI Bus} >>> + as the transport and is reserved for future use for >>> + devices using other transports (see >>> + \ref{drivernormative:Basic Facilities of a Virtio Device / Feature Bits} >>> + and >>> + \ref{devicenormative:Basic Facilities of a Virtio Device / Feature Bits} for >>> + handling features reserved for future use. >>> \end{description} -- Stop the music and go home.