|
@@ -2554,7 +2554,7 @@ static void mlxsw_sp_router_fib_event_work(struct work_struct *work)
|
|
case FIB_EVENT_RULE_ADD: /* fall through */
|
|
case FIB_EVENT_RULE_ADD: /* fall through */
|
|
case FIB_EVENT_RULE_DEL:
|
|
case FIB_EVENT_RULE_DEL:
|
|
rule = fib_work->fr_info.rule;
|
|
rule = fib_work->fr_info.rule;
|
|
- if (!fib4_rule_default(rule))
|
|
|
|
|
|
+ if (!fib4_rule_default(rule) && !rule->l3mdev)
|
|
mlxsw_sp_router_fib4_abort(mlxsw_sp);
|
|
mlxsw_sp_router_fib4_abort(mlxsw_sp);
|
|
fib_rule_put(rule);
|
|
fib_rule_put(rule);
|
|
break;
|
|
break;
|