[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio] [PATCH v6 4/5] packed virtqueues: more efficient virtqueue layout
On Wed, 10 Jan 2018 11:47:58 +0200 "Michael S. Tsirkin" <mst@redhat.com> wrote: > Performance analysis of this is in my kvm forum 2016 presentation. The > idea is to have a r/w descriptor in a ring structure, replacing the used > and available ring, index and descriptor buffer. Do we have a place to store pointers to such information? > > This is also easier for devices to implement than the 1.0 layout. > Several more enhancements will be necessary to actually make this > efficient for devices to use. > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com> > --- > content.tex | 36 ++- > packed-ring.tex | 668 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 701 insertions(+), 3 deletions(-) > create mode 100644 packed-ring.tex > > diff --git a/content.tex b/content.tex > index 3b4579e..3059bd3 100644 > --- a/content.tex > +++ b/content.tex (...) > @@ -5199,10 +5215,19 @@ Currently these device-independent feature bits defined: > \begin{description} > \item[VIRTIO_F_RING_INDIRECT_DESC (28)] Negotiating this feature indicates > that the driver can use descriptors with the VIRTQ_DESC_F_INDIRECT > - flag set, as described in \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / The Virtqueue Descriptor Table / Indirect Descriptors}~\nameref{sec:Basic Facilities of a Virtio Device / Virtqueues / The Virtqueue Descriptor Table / Indirect Descriptors}. > + flag set, as described in \ref{sec:Basic Facilities of a Virtio > +Device / Virtqueues / The Virtqueue Descriptor Table / Indirect > +Descriptors}~\nameref{sec:Basic Facilities of a Virtio Device / > +Virtqueues / The Virtqueue Descriptor Table / Indirect > +Descriptors} and > + \ref{sec:Packed Virtqueues / Indirect Flag: Scatter-Gather Support} > +\ref{sec:Packed Virtqueues / Driver and Device Event Suppression}. That one needs to go below (copy/paste error?). > > \item[VIRTIO_F_RING_EVENT_IDX(29)] This feature enables the \field{used_event} > - and the \field{avail_event} fields as described in \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / Virtqueue Interrupt Suppression} and \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / The Virtqueue Used Ring}. > + and the \field{avail_event} fields as described in > +\ref{sec:Basic Facilities of a Virtio Device / Virtqueues / > +Virtqueue Interrupt Suppression}, \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / The Virtqueue Used Ring} > +and . Here's where the ref above needs to go. > > \item[VIRTIO_F_VERSION_1(32)] This indicates compliance with this > specification, giving a simple way to detect legacy devices or drivers. > @@ -5212,6 +5237,9 @@ Currently these device-independent feature bits defined: > addresses in memory. If this feature bit is set to 0, then the device emits > physical addresses which are not translated further, even though an IOMMU > may be present. > + \item[VIRTIO_F_RING_PACKED(34)] This feature indicates > + support for the packed virtqueue layout as described in > +\ref{sec:Basic Facilities of a Virtio Device / Packed Virtqueues}. > \end{description} I think the references should include a title as well (that makes the resulting document easier to read). > > \drivernormative{\section}{Reserved Feature Bits}{Reserved Feature Bits}
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]