summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiri Pirko2016-10-25 11:25:56 +0200
committerDavid S. Miller2016-10-28 19:43:56 +0200
commit2083d36790e328a364896a2833fbedbf6e1d2317 (patch)
treeae4477cbf13ea57823ff8f18387fda083584943a
parentnet sched filters: fix notification of filter delete with proper handle (diff)
downloadkernel-qcow2-linux-2083d36790e328a364896a2833fbedbf6e1d2317.tar.gz
kernel-qcow2-linux-2083d36790e328a364896a2833fbedbf6e1d2317.tar.xz
kernel-qcow2-linux-2083d36790e328a364896a2833fbedbf6e1d2317.zip
mlxsw: spectrum_router: Save requested prefix bitlist when creating tree
Currently, the prefix bitlist is not saved for LPM trees, causing the compare to always fail which causes the tree to be destroyed and created for every inserted and removed FIB entry. So fix this by saving the bitlist as it should have been done from the very beginning. Fixes: 53342023eed9 ("mlxsw: spectrum_router: Implement LPM trees management") Signed-off-by: Jiri Pirko <jiri@mellanox.com> Reviewed-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
index f3d50d369bbe..4cff4c043d11 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
@@ -320,6 +320,8 @@ mlxsw_sp_lpm_tree_create(struct mlxsw_sp *mlxsw_sp,
lpm_tree);
if (err)
goto err_left_struct_set;
+ memcpy(&lpm_tree->prefix_usage, prefix_usage,
+ sizeof(lpm_tree->prefix_usage));
return lpm_tree;
err_left_struct_set: