Subject: Re: [RFC PATCH 0/3] Simplified 16 bit Toeplitz hash algorithm

From: Ben Hutchings <[email-masked]>
Date: Mon, 03 Jan 2011 19:30:39 +0000

On Mon, 2011-01-03 at 11:02 -0800, David Miller wrote:
> From: Tom Herbert <[email-masked]>
> Date: Mon, 3 Jan 2011 10:47:20 -0800
> 
> > I'm not sure why this would be needed.  What is the a advantage in
> > making the TX and RX queues match?
> 
> That's how their hardware based RFS essentially works.
> 
> Instead of watching for "I/O system calls" like we do in software, the
> chip watches for which TX queue a flow ends up on and matches things
> up on the receive side with the same numbered RX queue to match.

ixgbe also implements IRQ affinity setting (or rather hinting) and TX
queue selection by CPU, the inverse of IRQ affinity setting.  Together
with the hardware/firmware Flow Director feature, this should indeed
result in hardware RFS.  (However, irqbalanced does not yet follow the
affinity hints AFAIK, so this requires some manual intervention.  Maybe
the OOT driver is different?)

The proposed change to make TX queue selection hash-based seems to be a
step backwards.

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.