[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-comment] Re: [PATCH v11 05/10] pci: add admin vq registers to virtio over pci
On Thu, Apr 06, 2023 at 12:14:32AM -0400, Parav Pandit wrote: > > > On 4/3/2023 11:03 AM, Michael S. Tsirkin wrote: > > Add new registers to the PCI common configuration structure. > > > > These registers will be used for querying the indices of the admin > > virtqueues of the owner device. To configure, reset or enable the admin > > virtqueues, the driver should follow existing queue configuration/setup > > sequence. > > > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com> > > > > --- > > dropped Max's S.O.B > > make queue_num not 0 based > > --- > > content.tex | 34 ++++++++++++++++++++++++++++++++++ > > 1 file changed, 34 insertions(+) > > > > diff --git a/content.tex b/content.tex > > index 2eb15fa..5057df2 100644 > > --- a/content.tex > > +++ b/content.tex > > @@ -948,6 +948,10 @@ \subsubsection{Common configuration structure layout}\label{sec:Virtio Transport > > le64 queue_device; /* read-write */ > > le16 queue_notify_data; /* read-only for driver */ > > le16 queue_reset; /* read-write */ > > + > > + /* About the administration virtqueue. */ > > + le16 admin_queue_index; /* read-only for driver */ > > + le16 admin_queue_num; /* read-only for driver */ > > }; > > \end{lstlisting} > > @@ -1033,6 +1037,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} - 1) inclusive serve as administration > > + virtqueues. > > + The value 0 indicates no supported administration virtqueues. > no supported .. reads odd. > How about, > The value of 0 indicates that administration virtuques are unsupported. I went back and forth on this but I feel "no queues" is clearer in the end, and not odd: zero number of queues means no queues. > > + 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} > > @@ -1119,6 +1136,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} - 1 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 > > @@ -7686,6 +7711,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} > Reviewed-by: Parav Pandit <parav@nvidia.com> > > 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/ >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]