[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [PATCH v10 05/10] pci: add admin vq registers to virtio over pci
> From: Michael S. Tsirkin <mst@redhat.com> > Sent: Thursday, February 9, 2023 7:14 AM > diff --git a/content.tex b/content.tex > index c8647c9..2d9b903 100644 > --- a/content.tex > +++ b/content.tex > @@ -946,6 +946,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} > > @@ -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. admin_queue_count reads more intuitive to me to indicate how many aqs. It may be even simpler to have start and end vq numbers rather than complication of index + inclusive sum of number. > 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). > + 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} > > -- > MST Reviewed-by: Parav Pandit <parav@nvidia.com>
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]