RPS: Ensure that an expired hardware filter can be re-added later
authorBen Hutchings <bhutchings@solarflare.com>
Mon, 3 Oct 2011 04:42:46 +0000 (04:42 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 3 Oct 2011 16:14:45 +0000 (12:14 -0400)
commit09994d1b09bd9b0046a4708fa50d2106610a4058
tree1bd59c2e19b01e30e5666dd483df6d6254b82995
parent76231e0297db30f1f0e947a02b42495e7d535d56
RPS: Ensure that an expired hardware filter can be re-added later

Amir Vadai wrote:
> When a stream is paused, and its rule is expired while it is paused,
> no new rule will be configured to the HW when traffic resume.
[...]
> - When stream was resumed, traffic was steered again by RSS, and
> because current-cpu was equal to desired-cpu,  ndo_rx_flow_steer
> wasn't called and no rule was configured to the HW.

Fix this by setting the flow's current CPU only in the table for the
newly selected RX queue.

Reported-and-tested-by: Amir Vadai <amirv@dev.mellanox.co.il>
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c