mlxsw: spectrum: Limit number of FDB records per learning session
authorIdo Schimmel <idosch@mellanox.com>
Wed, 24 Aug 2016 10:00:23 +0000 (12:00 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 24 Aug 2016 16:41:11 +0000 (09:41 -0700)
commit1803e0fb7ef9534154e6a1abf77bc2ca352f72e1
treed7b73756b7170c50379e40f2a7e9d7f1c57d3fa1
parentfff84d2a39603336ccb7140e282c4011315e29c4
mlxsw: spectrum: Limit number of FDB records per learning session

Up until now a learning session ended whenever the number of queried
records was zero. This turned out to be problematic in situations where
a large number of MACs (48K) had to be processed by the switch driver,
as RTNL mutex is held during the learning session.

Instead, limit the number of FDB records that can be processed in a
session to 64. This means that every time the device is queried for
learning notifications (currently, every 100ms), up to 64 records will
be processed by the switch driver.

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>
drivers/net/ethernet/mellanox/mlxsw/reg.h
drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c