All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: xen-devel@lists.xenproject.org, paul.durrant@citrix.com,
	Andrew Bennieston <andrew.bennieston@citrix.com>,
	wei.liu2@citrix.com, david.vrabel@citrix.com
Subject: Re: [PATCH V4] netif.h: Document xen-net{back, front} multi-queue feature
Date: Tue, 6 May 2014 15:19:40 -0400	[thread overview]
Message-ID: <20140506191940.GB8721@phenom.dumpdata.com> (raw)
In-Reply-To: <1399371411.3014.54.camel@kazak.uk.xensource.com>

On Tue, May 06, 2014 at 11:16:51AM +0100, Ian Campbell wrote:
> On Tue, 2014-05-06 at 11:14 +0100, Andrew Bennieston wrote:
> > >> + *
> > >> + * Queues replicate the shared rings and event channels.
> > >> + * "feature-split-event-channels" may optionally be used when using
> > >> + * multiple queues, but is not mandatory.
> > >> + *
> > >> + * 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 those keys under sub-keys having the name "queue-N" where
> > >> + * N is the integer ID of the queue for which those keys belong. Queues
> > >> + * are indexed from zero. For example, a frontend with two queues and split
> > >> + * event channels may write the following set of queue-related keys:
> > >> + *
> > >
> > > Should you say what to be done if the multi-queue-num-queues = N doesn't
> > > match with the 'queue-N-1' values? Say you N=4 and there are just
> > > two sub-directories: queue-0 and queue-1 ?
> > 
> > I haven't given any thought to what the most sensible thing to do in 
> > this case is; the current implementation will bail entirely if it 
> > doesn't find _all_ of the keys it expects, for _all_ of the queues 
> > requested. It's possible that you might want to set up those that were 
> > completely specified , ignoring the rest, but I'd rather enforce that 
> > the XenStore data is self-consistent, i.e. if four queues were 
> > requested, the subkeys for four queues must also be present. This makes 
> > it easier to handle rogue or broken frontends (something missing or 
> > contradictory? Just tear down those queues already set up, and error 
> > out) and more obvious when something has gone wrong.
> 
> I think taking this all or nothing approach is completely reasonable.

Right. I was thinking we could spell it out. Or maybe I had been
reading too many specs lately.

> 
> Ian.
> 

      reply	other threads:[~2014-05-06 19:19 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-02 16:33 [PATCH V4] netif.h: Document xen-net{back, front} multi-queue feature Andrew J. Bennieston
2014-05-02 19:57 ` Konrad Rzeszutek Wilk
2014-05-06 10:14   ` Andrew Bennieston
2014-05-06 10:16     ` Ian Campbell
2014-05-06 19:19       ` Konrad Rzeszutek Wilk [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140506191940.GB8721@phenom.dumpdata.com \
    --to=konrad.wilk@oracle.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=andrew.bennieston@citrix.com \
    --cc=david.vrabel@citrix.com \
    --cc=paul.durrant@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.