linux_dsm_epyc7002/drivers/net/ethernet
Amir Vadai 1eb8c695bd net/mlx4_en: Add accelerated RFS support
Use RFS infrastructure and flow steering in HW to keep CPU
affinity of rx interrupts and application per TCP stream.

A flow steering filter is added to the HW whenever the RFS
ndo callback is invoked by core networking code.

Because the invocation takes place in interrupt context, the
actual setup of HW is done using workqueue. Whenever new filter
is added, the driver checks for expiry of existing filters.

Since there's window in time between the point where the core
RFS code invoked the ndo callback, to the point where the HW
is configured from the workqueue context, the 2nd, 3rd etc
packets from that stream will cause the net core to invoke
the callback again and again.

To prevent inefficient/double configuration of the HW, the filters
are kept in a database which is indexed using hash function to enable
fast access.

Signed-off-by: Amir Vadai <amirv@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-07-19 08:34:37 -07:00
..
3com drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
8390 net: add support for NS8390 based eth controllers on some ColdFire CPU boards 2012-07-12 07:54:45 -07:00
adaptec starfire: remove deprecated options. 2012-04-07 11:45:26 +02:00
adi bfin: Fix build failure due to get_ts_info() changes. 2012-04-06 00:17:50 -04:00
aeroflex ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
alteon Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
amd lance: remove unnecessary setting of skb->dev 2012-07-10 23:24:56 -07:00
apple ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
atheros ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
broadcom b44: add 64 bit stats 2012-07-18 09:29:43 -07:00
brocade drivers/net/ethernet: Fix non-kernel-doc comments with kernel-doc start markers 2012-07-10 23:13:46 -07:00
cadence net/macb: manage carrier state with call to netif_carrier_{on|off}() 2012-07-09 00:03:06 -07:00
calxeda net: calxedaxgmac: enable rx cut-thru mode 2012-07-10 23:25:47 -07:00
chelsio drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
cirrus cirrus: cs89x0: Remove function prototypes and reorder declarations 2012-05-18 23:48:07 -04:00
cisco enic: remove unnecessary setting of skb->dev 2012-07-10 23:24:56 -07:00
davicom dm9000: some coldfire boards need this 2012-05-14 18:40:16 -04:00
dec ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
dlink Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-05-07 23:35:40 -04:00
emulex be2net: Ignore physical link async event for Lancer 2012-07-18 09:28:38 -07:00
faraday net: ftgmac100/ftmac100: dont pull too much data 2012-07-18 09:40:53 -07:00
freescale Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-07-10 23:56:33 -07:00
fujitsu drivers/net: delete all code/drivers depending on CONFIG_MCA 2012-05-17 16:37:41 -04:00
hp ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
i825xx ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
ibm drivers/net/ethernet: Fix non-kernel-doc comments with kernel-doc start markers 2012-07-10 23:13:46 -07:00
icplus netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:52:27 -05:00
intel ixgbe: Cleanup holes in flags after removing several of them 2012-07-18 13:30:08 -07:00
marvell sky2: Fix for interrupt handler 2012-07-09 00:05:40 -07:00
mellanox net/mlx4_en: Add accelerated RFS support 2012-07-19 08:34:37 -07:00
micrel ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
microchip net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
myricom myri10ge: set maximal number of default RSS queues 2012-07-05 03:06:44 -07:00
natsemi drivers/net: delete all code/drivers depending on CONFIG_MCA 2012-05-17 16:37:41 -04:00
neterion vxge/s2io: remove dead URLs 2012-07-10 23:24:47 -07:00
nuvoton netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
nvidia drivers/net/ethernet: Fix non-kernel-doc comments with kernel-doc start markers 2012-07-10 23:13:46 -07:00
nxp lpc_eth: remove duplicated include 2012-07-16 22:16:40 -07:00
octeon octeon: fix PHY name to match MDIO bus name 2012-02-13 16:04:09 -05:00
oki-semi drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
packetengines yellowfin: stop using net_device.{base_addr, irq}. 2012-04-07 11:45:26 +02:00
pasemi net/pasemi: fix compiler warning 2012-05-02 20:52:48 -04:00
qlogic qlge: fix an "&&" vs "||" bug 2012-07-18 09:40:53 -07:00
racal netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
rdc r6040: use module_pci_driver macro 2012-07-09 14:42:30 -07:00
realtek r8169: verbose error message. 2012-07-17 23:34:06 +02:00
renesas net: sh_eth: add support for set_ringparam/get_ringparam 2012-06-27 01:24:16 -07:00
seeq Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
sfc Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next 2012-07-18 09:08:36 -07:00
sgi ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
silan sc92031: stop using net_device.{base_addr, irq} 2012-04-07 11:45:27 +02:00
sis sis900: stop using net_device.{base_addr, irq} and convert to __iomem. 2012-04-07 11:47:18 +02:00
smsc ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
stmicro Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-07-10 23:56:33 -07:00
sun sunhme: remove unnecessary setting of skb->dev 2012-07-10 23:24:57 -07:00
tehuti drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
ti driver: net: ethernet: cpsw: runtime PM support 2012-07-18 09:40:54 -07:00
tile ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
toshiba drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
tundra Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
via ethernet: Remove casts to same type 2012-06-06 09:31:33 -07:00
wiznet ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
xilinx ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
xircom Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
xscale net: remove ixp2000 ethernet driver 2012-04-04 18:09:37 -04:00
dnet.c dnet: Support the get_ts_info ethtool method. 2012-04-04 05:28:46 -04:00
dnet.h
ethoc.c ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
fealnx.c fealnx: Remove unused local label 'out' in netdev_open(). 2012-04-07 09:02:32 -04:00
jme.c jme: netpoll support 2012-07-18 09:40:54 -07:00
jme.h jme: Fix FIFO flush issue 2012-02-22 14:44:41 -05:00
Kconfig Ethernet driver for the WIZnet W5300 chip 2012-04-05 01:43:02 -04:00
korina.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
lantiq_etop.c ethernet: Use eth_random_addr 2012-07-16 22:38:27 -07:00
Makefile Ethernet driver for the WIZnet W5300 chip 2012-04-05 01:43:02 -04:00
mipsnet.c net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
netx-eth.c netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
s6gmac.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-05-22 19:22:50 -07:00