linux/drivers/net/ethernet
Ido Schimmel fc922bb0dd mlxsw: spectrum_router: Use one LPM tree for all virtual routers
The number of LPM trees available for lookup is much smaller than the
number of virtual routers, which are used to implement VRFs. In
addition, an LPM tree can only be used by one protocol - either IPv4 or
IPv6.

Therefore, in order to increase the number of supported virtual routers
to the maximum we need to be able to share LPM trees across virtual
routers instead of trying to find an optimized tree for each.

Do that by allocating one LPM tree for each protocol, but make sure it
will only include prefixes that are actually used, so as to not perform
unnecessary lookups.

Since changing the structure of a bound tree isn't recommended, whenever
a new tree it required, it's first created and then bound to each
virtual router, replacing the old one.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-08-14 11:14:03 -07:00
..
3com networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
8390
adaptec
adi
aeroflex networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
agere networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
alacritech
allwinner networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
alteon
altera
amazon net: ena: update ena driver to version 1.2.0 2017-06-23 14:15:11 -04:00
amd net: sched: get rid of struct tc_to_netdev 2017-08-07 09:42:37 -07:00
apm xgene: Always get clk source, but ignore if it's missing for SGMII ports 2017-08-04 11:30:37 -07:00
apple net: Convert to using %pOF instead of full_name 2017-07-24 13:41:48 -07:00
aquantia aquantia: Switch to use napi_gro_receive 2017-08-04 20:57:13 -07:00
arc net: arc_emac: Add support for ndo_do_ioctl net_device_ops operation 2017-08-03 15:14:34 -07:00
atheros net: atl1c: fix spelling mistake: "droppted" -> "dropped" 2017-06-29 12:24:26 -04:00
aurora net: ethernet: nb8800: Handle all 4 RGMII modes identically 2017-07-25 21:27:01 -07:00
broadcom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-08-10 12:11:16 -07:00
brocade
cadence net: cadence: macb: constify pci_device_id. 2017-07-17 13:37:15 -07:00
calxeda
cavium liquidio: fix duplicated code for different branches 2017-08-14 10:58:09 -07:00
chelsio net: sched: use newly added classid identity helpers 2017-08-11 13:47:01 -07:00
cirrus networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
cisco cisco: enic: Fic an error handling path in 'vnic_dev_init_devcmd2()' 2017-07-11 10:54:15 -07:00
davicom networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
dec net: tulip: remove useless code in tulip_init_one() 2017-07-19 16:33:57 -07:00
dlink
emulex benet: fix set but not used warning 2017-07-25 12:31:37 -07:00
ezchip
faraday ftgmac100: return error in ftgmac100_alloc_rx_buf 2017-07-25 21:21:44 -07:00
freescale net: dpaa_eth: constify platform_device_id 2017-08-13 20:12:23 -07:00
fujitsu
hisilicon hns3pf: Fix some harmless copy and paste bugs 2017-08-11 14:31:59 -07:00
hp networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
i825xx networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
ibm ibmvnic: Correct 'unused variable' warning in build. 2017-08-09 22:30:52 -07:00
intel net: sched: use newly added classid identity helpers 2017-08-11 13:47:01 -07:00
marvell net: mvpp2: add support for TX interrupts and RX queue distribution modes 2017-08-03 15:16:09 -07:00
mediatek net-next: mediatek: bring up QDMA RX ring 0 2017-08-09 22:45:36 -07:00
mellanox mlxsw: spectrum_router: Use one LPM tree for all virtual routers 2017-08-14 11:14:03 -07:00
micrel networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
microchip
moxa net: moxa: Add spaces preferred around that '{+,-}' 2017-07-29 14:02:07 -07:00
myricom
natsemi
neterion s2io: Remove UFO support. 2017-07-17 09:52:57 -07:00
netronome nfp: send control message when MAC representors are created 2017-08-11 14:51:17 -07:00
nuvoton net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
nvidia forcedeth: replace init_timer_deferrable with setup_deferrable_timer 2017-08-11 14:25:35 -07:00
nxp net: manual clean code which call skb_put_[data:zero] 2017-06-20 13:30:15 -04:00
oki-semi net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
packetengines net: manual clean code which call skb_put_[data:zero] 2017-06-20 13:30:15 -04:00
pasemi
qlogic qlge: fix duplicated code for different branches 2017-08-14 10:58:10 -07:00
qualcomm net: qcom/emac: fix double free of SGMII IRQ during shutdown 2017-07-14 08:55:32 -07:00
rdc
realtek net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
renesas net: sh_eth: constify platform_device_id 2017-08-13 20:12:23 -07:00
rocker rocker: Ignore address families other than IPv4 2017-08-03 15:35:59 -07:00
samsung
seeq
sfc net: sched: get rid of struct tc_to_netdev 2017-08-07 09:42:37 -07:00
sgi ioc3-eth: store pointer to net_device for priviate area 2017-07-15 14:28:56 -07:00
silan networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
sis net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
smsc smsc911x: Add check for ioremap_nocache() return code 2017-07-12 14:35:43 -07:00
stmicro net: stmmac: dwmac-rk: Add integrated PHY supprot for rk3328 2017-08-11 14:28:59 -07:00
sun Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-08-01 10:07:50 -07:00
synopsys drivers: net: add missing interrupt.h include 2017-07-18 11:13:41 -07:00
tehuti net: tehuti: don't process data if it has not been copied from userspace 2017-07-19 22:48:02 -07:00
ti net: ti: cpsw:: constify platform_device_id 2017-08-13 20:12:23 -07:00
tile
toshiba net: tc35815: fix spelling mistake: "Intterrupt" -> "Interrupt" 2017-07-29 15:22:08 -07:00
tundra net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
via net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
wiznet
xilinx net: Convert to using %pOF instead of full_name 2017-07-24 13:41:48 -07:00
xircom
xscale
dnet.c networking: make skb_put & friends return void pointers 2017-06-16 11:48:39 -04:00
dnet.h
ec_bhf.c net: ec_bhf: constify pci_device_id. 2017-07-17 13:37:15 -07:00
ethoc.c net: ethoc: enable NAPI before poll may be scheduled 2017-06-06 16:22:51 -04:00
fealnx.c networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
jme.c net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
jme.h
Kconfig
korina.c net/{mii, smsc}: Make mii_ethtool_get_link_ksettings and smc_netdev_get_ecmd return void 2017-06-05 11:00:42 -04:00
lantiq_etop.c
Makefile
netx-eth.c