diff options
author | Jiri Pirko <jiri@mellanox.com> | 2016-07-05 11:27:39 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-07-05 09:06:28 -0700 |
commit | 6cf3c971dc84cb36579515ddb488919b9e9fb6de (patch) | |
tree | a222cda7bcb7e83cea3606a1bc0cb56c60d9e711 /drivers/net/ethernet/mellanox/mlxsw/spectrum.c | |
parent | net: introduce default neigh_construct/destroy ndo calls for L2 upper devices (diff) | |
download | linux-dev-6cf3c971dc84cb36579515ddb488919b9e9fb6de.tar.xz linux-dev-6cf3c971dc84cb36579515ddb488919b9e9fb6de.zip |
mlxsw: spectrum_router: Add private neigh table
We need to hold some private data for every neigh entry. It would be
possible to do it using neigh_priv_len/ndo_neigh_construct/
ndo_neigh_destroy however only for the port device itself. That would not
work for stacked devices like bridge/team/bond. So introduce a private
neigh table. Hook onto ndos neigh_construct/destroy and add/remove
table entry according to that.
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Reviewed-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlxsw/spectrum.c')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlxsw/spectrum.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c index 7b2b741b2a23..9bebb7af4e54 100644 --- a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c +++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c @@ -803,6 +803,8 @@ static const struct net_device_ops mlxsw_sp_port_netdev_ops = { .ndo_get_stats64 = mlxsw_sp_port_get_stats64, .ndo_vlan_rx_add_vid = mlxsw_sp_port_add_vid, .ndo_vlan_rx_kill_vid = mlxsw_sp_port_kill_vid, + .ndo_neigh_construct = mlxsw_sp_router_neigh_construct, + .ndo_neigh_destroy = mlxsw_sp_router_neigh_destroy, .ndo_fdb_add = switchdev_port_fdb_add, .ndo_fdb_del = switchdev_port_fdb_del, .ndo_fdb_dump = switchdev_port_fdb_dump, |