linux/drivers/net
Maor Gottlieb 33cfaaa8f3 net/mlx5e: Split the main flow steering table
Currently, the main flow table is used for two purposes:
One is to do mac filtering and the other is to classify
the packet l3-l4 header in order to steer the packet to
the right RSS TIR.

This design is very complex, for each configured mac address we
have to add eleven rules (rule for each traffic type), the same if the
device is put to promiscuous/allmulti mode.
This scheme isn't scalable for future features like aRFS.

In order to simplify it, the main flow table is split to two flow
tables:
1. l2 table - filter the packet dmac address, if there is a match
we forward to the ttc flow table.

2. TTC (Traffic Type Classifier) table - classify the traffic
type of the packet and steer the packet to the right TIR.

In this new design, when new mac address is added, the driver adds
only one flow rule instead of eleven.

Signed-off-by: Maor Gottlieb <maorg@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-04-29 16:29:11 -04:00
..
appletalk
arcnet arcnet: com90xx: add __init attribute 2016-04-19 20:17:45 -04:00
bonding bonding: fix bond_get_stats() 2016-03-18 23:14:15 -04:00
caif
can can: rcar_can: Add r8a7795 support 2016-03-10 10:30:21 +01:00
cris
dsa Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-04-23 18:51:33 -04:00
ethernet net/mlx5e: Split the main flow steering table 2016-04-29 16:29:11 -04:00
fddi
fjes fjes: Update fjes driver version : 1.1 2016-04-16 21:51:01 -04:00
hamradio drivers: net: use NETDEV_TX_OK instead of NETDEV_TX_LOCKED 2016-04-26 15:53:05 -04:00
hippi
hyperv hv_netvsc: Fix the list processing for network change event 2016-04-24 23:27:58 -04:00
ieee802154 ieee802154: atusb: update my copyright years for this driver 2016-04-21 00:21:28 +02:00
ipvlan ipvlan: Fix failure path in dev registration during link creation 2016-04-28 17:23:08 -04:00
irda irda: sh_irda: remove driver 2016-04-04 16:24:13 -04:00
phy mdio_bus: get_phy_device() doesn't return NULL anymore 2016-04-26 15:41:20 -04:00
plip
ppp ppp: add rtnetlink device creation support 2016-04-29 16:09:44 -04:00
slip
team team: team should sync the port's uc/mc addrs when add a port 2016-03-30 17:06:58 -04:00
usb cdc_mbim: apply "NDP to end" quirk to all Huawei devices 2016-04-14 21:04:04 -04:00
vmxnet3 Driver: Vmxnet3: set CHECKSUM_UNNECESSARY for IPv6 packets 2016-04-21 15:28:05 -04:00
wan farsync: fix off-by-one bug in fst_add_one 2016-03-14 13:09:49 -04:00
wimax
wireless drivers/wireless: use nla_put_u64_64bit() 2016-04-26 12:00:48 -04:00
xen-netback xen-netback: reduce log spam 2016-03-13 22:08:01 -04:00
dummy.c
eql.c
geneve.c geneve: break dependency with netdev drivers 2016-04-21 15:35:44 -04:00
ifb.c
Kconfig net: dummy: remove note about being Y by default 2016-04-26 01:11:55 -04:00
LICENSE.SRC
loopback.c
macsec.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-04-27 15:43:10 -04:00
macvlan.c macvlan: fix failure during registration v3 2016-04-26 15:17:18 -04:00
macvtap.c macvtap: check minor when unregistering 2016-04-26 15:17:45 -04:00
Makefile macsec: introduce IEEE 802.1AE driver 2016-03-13 22:40:24 -04:00
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c drivers: net: remove NETDEV_TX_LOCKED 2016-04-26 15:53:05 -04:00
sb1000.c
Space.c
sungem_phy.c
tun.c tuntap: calculate rps hash only when needed 2016-04-28 16:38:54 -04:00
veth.c veth: Update features to include all tunnel GSO types 2016-04-21 14:14:59 -04:00
virtio_net.c virtio/vhost: new features, performance improvements, cleanups 2016-03-20 13:28:18 -07:00
vrf.c net: vrf: Fix dst reference counting 2016-04-11 15:56:20 -04:00
vxlan.c vxlan: fix initialization with custom link parameters 2016-04-29 15:08:56 -04:00
xen-netfront.c