[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [PATCH v2 1/4] Add VIRTIO_RING_F_INDIRECT_SIZE
On Mon, Feb 21, 2022 at 05:25:00PM +0100, Christian Schoenebeck wrote: > @@ -6847,6 +6851,30 @@ \chapter{Reserved Feature Bits}\label{sec:Reserved Feature Bits} > that the driver can reset a queue individually. > See \ref{sec:Basic Facilities of a Virtio Device / Virtqueues / Virtqueue Reset}. > > + \item[VIRTIO_RING_F_INDIRECT_SIZE(41)] This feature indicates that the > + Queue Indirect Size, i.e. the maximum amount of descriptors in indirect > + descriptor tables, is independent from the Queue Size. > + > + Without this feature, the Queue Size limits the length of the descriptor > + chain, including indirect descriptor tables as in \ref{sec:Basic Facilities of > + a Virtio Device / Virtqueues / The Virtqueue Descriptor Table / Indirect > + Descriptors}, i.e. both the maximum amount of slots in the vring and the > + actual bulk data size transmitted per vring slot. > + > + With this feature enabled, the Queue Size only limits the maximum amount > + of slots in the vring, but does not limit the actual bulk data size > + being transmitted when indirect descriptors are used. Decoupling these > + two configuration parameters this way not only allows much larger bulk data > + being transferred per vring slot, but also avoids complicated synchronization > + mechanisms if the device only supports a very small amount of vring slots. Due > + to the 16-bit size of a descriptor's "next" field there is still an absolute > + limit of $2^{16}$ descriptors per indirect descriptor table. However the > + actual maximum amount supported by either device or driver might be less, > + and therefore the bus specific Queue Indirect Size value MUST additionally s/bus/transport/ Otherwise: Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Attachment:
signature.asc
Description: PGP signature
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]