From: Ben Hutchings <bhutchings@solarflare.com>
To: "Pasi Kärkkäinen" <pasik@iki.fi>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>,
Ian Campbell <Ian.Campbell@eu.citrix.com>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
xen-devel <xen-devel@lists.xensource.com>,
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Subject: Re: [Xen-devel] Re: [PATCH] xen network backend driver
Date: Wed, 19 Jan 2011 19:48:19 +0000 [thread overview]
Message-ID: <1295466499.11126.67.camel@bwh-desktop> (raw)
In-Reply-To: <20110119192823.GN2754@reaktio.net>
On Wed, 2011-01-19 at 21:28 +0200, Pasi Kärkkäinen wrote:
> On Wed, Jan 19, 2011 at 11:16:59AM -0800, Jeremy Fitzhardinge wrote:
> > On 01/19/2011 10:05 AM, Ben Hutchings wrote:
> > > Not in itself. NAPI polling will run on the same CPU which scheduled it
> > > (so wherever the IRQ was initially handled). If the protocol used
> > > between netfront and netback doesn't support RSS then RPS
> > > <http://lwn.net/Articles/362339/> can be used to spread the RX work
> > > across CPUs.
> >
> > There's only one irq per netback which is bound to one (V)CPU at a
> > time. I guess we could extend it to have multiple irqs per netback and
> > some way of distributing packet flows over them, but that would only
> > really make sense if there's a single interface with much more traffic
> > than the others; otherwise the interrupts should be fairly well
> > distributed (assuming that the different netback irqs are routed to
> > different cpus).
> >
>
> Does "multiqueue" only work for NIC drivers (and frontend drivers),
> or could it be used also for netback?
Netfront and netback would have to agree on how many queues to use in
each direction.
> (afaik Linux multiqueue enables setting up multiple receive queues
> each having a separate irq.)
In the context of Linux networking, 'multiqueue' generally refers to use
of multiple *transmit* queues. The networking core handles scheduling
and locking of each transmit queue, so it had to be extended to support
multiple queues - initially done in 2.6.23, then made scalable in
2.6.27.
It was possible to use multiple receive queues per device long before
this since the networking core is not involved in locking them. (Though
it did require some hacks to create multiple NAPI contexts, before
2.6.24.) This is mostly useful useful in conjunction with separate IRQs
per RX queue, spread across multiple CPUs (sometimes referred to as
Receive Side Scaling or RSS).
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
next prev parent reply other threads:[~2011-01-19 19:48 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-19 15:01 [PATCH] xen network backend driver Ian Campbell
2011-01-19 16:40 ` Ben Hutchings
2011-01-19 17:48 ` Ian Campbell
2011-01-19 18:05 ` Ben Hutchings
2011-01-19 19:16 ` Jeremy Fitzhardinge
2011-01-19 19:24 ` Ian Campbell
2011-01-19 19:25 ` Ben Hutchings
2011-01-19 19:31 ` Ian Campbell
2011-01-19 19:28 ` [Xen-devel] " Pasi Kärkkäinen
2011-01-19 19:48 ` Ben Hutchings [this message]
2011-01-19 19:58 ` Pasi Kärkkäinen
2011-01-19 20:16 ` Ben Hutchings
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=1295466499.11126.67.camel@bwh-desktop \
--to=bhutchings@solarflare.com \
--cc=Ian.Campbell@eu.citrix.com \
--cc=jeremy@goop.org \
--cc=konrad.wilk@oracle.com \
--cc=netdev@vger.kernel.org \
--cc=pasik@iki.fi \
--cc=xen-devel@lists.xensource.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).