]> git.baikalelectronics.ru Git - kernel.git/commit
net: RPS: Enable hardware acceleration of RFS
authorBen Hutchings <bhutchings@solarflare.com>
Wed, 19 Jan 2011 11:03:53 +0000 (11:03 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 24 Jan 2011 22:53:01 +0000 (14:53 -0800)
commit8d061a6de72c704d8fcf11622602652ec72f237a
tree3ee70b7748c6c63a688f367e5ffd83fde21b87e3
parentdb4e047cc6c19f90003372c9a032a4731873ef01
net: RPS: Enable hardware acceleration of RFS

Allow drivers for multiqueue hardware with flow filter tables to
accelerate RFS.  The driver must:

1. Set net_device::rx_cpu_rmap to a cpu_rmap of the RX completion
IRQs (in queue order).  This will provide a mapping from CPUs to the
queues for which completions are handled nearest to them.

2. Implement net_device_ops::ndo_rx_flow_steer.  This operation adds
or replaces a filter steering the given flow to the given RX queue, if
possible.

3. Periodically remove filters for which rps_may_expire_flow() returns
true.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h
net/Kconfig
net/core/dev.c