[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V2] netif.h: Document xen-net{back, front} multi-queue feature
Sorry for the delay replying to this. On Mon, 2014-02-24 at 14:28 +0000, Andrew J. Bennieston wrote: > From: "Andrew J. Bennieston" <andrew.bennieston@xxxxxxxxxx> > > Document the multi-queue feature in terms of XenStore keys to be written > by the backend and by the frontend. > > Signed-off-by: Andrew J. Bennieston <andrew.bennieston@xxxxxxxxxx> > > --- > V2: Improve documentation based on comments about areas which were unclear. > > --- > xen/include/public/io/netif.h | 29 +++++++++++++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/xen/include/public/io/netif.h b/xen/include/public/io/netif.h > index d7fb771..5d98734 100644 > --- a/xen/include/public/io/netif.h > +++ b/xen/include/public/io/netif.h > @@ -69,6 +69,35 @@ > */ > > /* > + * Multiple transmit and receive queues: > + * If supported, the backend will write "multi-queue-max-queues" and set its > + * value to the maximum supported number of queues. > + * Frontends that are aware of this feature and wish to use it can write the > + * key "multi-queue-num-queues", set to the number they wish to use. In each case they write to their respective directories in xenstore. Perhaps that's stating the obvious though. > + * > + * Queues replicate the shared rings and event channels, and > + * "feature-split-event-channels" may be used when using multiple queues. Do you mean s/may/must/ here? (this is my only significant comment on this patch, the rest are really minor nits) > + * Each queue consists of one shared ring pair, i.e. there must be the same > + * number of tx and rx rings. > + * > + * For frontends requesting just one queue, the usual event-channel and > + * ring-ref keys are written as before, simplifying the backend processing > + * to avoid distinguishing between a frontend that doesn't understand the > + * multi-queue feature, and one that does, but requested only one queue. > + * > + * Frontends requesting two or more queues must not write the toplevel > + * event-channel (or event-channel-{tx,rx}) and {tx,rx}-ring-ref keys, > + * instead writing them under sub-keys having the name "queue-N" where > + * N is the integer ID of the queue for which those keys belong. and following on from that the "them" which must be written under the sub-keys could perhaps be spelled out otherwise the prior reference event-channel or event-channel-{tx,rx} makes things a little ambiguous. > Queues > + * are indexed from zero. > + * > + * Mapping of packets to queues is considered to be a function of the > + * transmitting system (backend or frontend) and is not negotiated > + * between the two. Guests are free to transmit packets on any queue > + * they choose, provided it has been set up correctly. Perhaps stating the obvious again but "...and must be prepared to receive a packet on any ring"? Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |