mlxsw: router: Enable neighbors to be created on stacked devices
authorYotam Gigi <yotamg@mellanox.com>
Wed, 24 Aug 2016 09:18:52 +0000 (11:18 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 24 Aug 2016 16:39:04 +0000 (09:39 -0700)
Make the function mlxsw_router_neigh_construct search the rif according
to the neighbour dev other than the dev that was passed to the ndo, thus
allowing creating neigbhours upon stacked devices.

Fixes: 6cf3c971dc84 ("mlxsw: spectrum_router: Add private neigh table")
Signed-off-by: Yotam Gigi <yotamg@mellanox.com>
Reviewed-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/spectrum_router.c

index 90bb93b037eccf4710d2176c9c9f969fd74a852c..917ddd1e422f773a07d52aac7f978f03fdcb47db 100644 (file)
@@ -657,7 +657,7 @@ int mlxsw_sp_router_neigh_construct(struct net_device *dev,
                return 0;
        }
 
-       r = mlxsw_sp_rif_find_by_dev(mlxsw_sp, dev);
+       r = mlxsw_sp_rif_find_by_dev(mlxsw_sp, n->dev);
        if (WARN_ON(!r))
                return -EINVAL;