On Tue, 23 Jan 2018 02:01:09 +0200 "Michael S. Tsirkin" <m...@redhat.com> wrote:
> For a split ring, require that drivers use descriptors in order too. > This allows devices to skip reading the available ring. > > Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > --- > split-ring.tex | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/split-ring.tex b/split-ring.tex > index f976e45..43c496c 100644 > --- a/split-ring.tex > +++ b/split-ring.tex > @@ -218,6 +222,12 @@ purposes). > Drivers MUST NOT add a descriptor chain over than $2^{32}$ bytes long in > total; > this implies that loops in the descriptor chain are forbidden! > > +If VIRTIO_F_IN_ORDER has been negotiated, and when making a > +descriptor with VRING_DESC_F_NEXT set in \field{flags} at offset > +$x$ in the table available to the device, driver MUST set > +\field{next} to $0$ for the last descriptor in the table > +(where $x = queue_size - 1$) and to $x + 1$ for the rest of the descriptors. The underscore in queue_size makes this a subscript s, which is probably not what you want :) > + > \subsubsection{Indirect Descriptors}\label{sec:Basic Facilities of a Virtio > Device / Virtqueues / The Virtqueue Descriptor Table / Indirect Descriptors} > > Some devices benefit by concurrently dispatching a large number Otherwise, Reviewed-by: Cornelia Huck <coh...@redhat.com> --------------------------------------------------------------------- To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org