summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-09-01 10:01:36 -0700
committerDavid S. Miller <davem@davemloft.net>2017-09-01 10:01:36 -0700
commit0d22a3cf8da164dfc694cc159eabd355f14aba7e (patch)
tree620ef0986f1589e1505761700a15a4f94b9ce9b2
parent843bd2b38d7f3929e0fa4dd7e8061ba9da7a3961 (diff)
parent241bc859f6d0f912b8a2246896501a9d934149fa (diff)
Merge branch 'mlxsw-next-fixes'
Jiri Pirko says: ==================== mlxsw: spectrum_router: Couple of fixes Ido Schimmel (2): mlxsw: spectrum_router: Trap packets hitting anycast routes mlxsw: spectrum_router: Set abort trap in all virtual routers ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
index 0cf68102d113..de15eac50866 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
@@ -3659,7 +3659,7 @@ static void mlxsw_sp_fib6_entry_type_set(struct mlxsw_sp_fib_entry *fib_entry,
* local, which will cause them to be trapped with a lower
* priority than packets that need to be locally received.
*/
- if (rt->rt6i_flags & RTF_LOCAL)
+ if (rt->rt6i_flags & (RTF_LOCAL | RTF_ANYCAST))
fib_entry->type = MLXSW_SP_FIB_ENTRY_TYPE_TRAP;
else if (rt->rt6i_flags & RTF_REJECT)
fib_entry->type = MLXSW_SP_FIB_ENTRY_TYPE_LOCAL;
@@ -3993,9 +3993,6 @@ static int __mlxsw_sp_router_set_abort_trap(struct mlxsw_sp *mlxsw_sp,
char raltb_pl[MLXSW_REG_RALTB_LEN];
char ralue_pl[MLXSW_REG_RALUE_LEN];
- if (!mlxsw_sp_vr_is_used(vr))
- continue;
-
mlxsw_reg_raltb_pack(raltb_pl, vr->id, proto, tree_id);
err = mlxsw_reg_write(mlxsw_sp->core, MLXSW_REG(raltb),
raltb_pl);