[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Re: [PATCH] xen network backend driver
On Wed, Jan 19, 2011 at 07:48:19PM +0000, Ben Hutchings wrote: > 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. > Yep. > > (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. > Thanks for clearing that up. > 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). > Ok. I should read changelogs more closely.. I thought both the receive/transmit multiqueue features appeared 'recently', but it seems I was wrong. I think Linux 2.6.32 added multiqueue VLAN support.. -- Pasi _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |