diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c index b5f0ab88e064..65fce84135f3 100644 --- a/drivers/infiniband/hw/mlx5/main.c +++ b/drivers/infiniband/hw/mlx5/main.c @@ -2486,6 +2486,14 @@ static int parse_flow_flow_action(const union ib_flow_spec *ib_spec, action->action |= MLX5_FLOW_CONTEXT_ACTION_DECAP; return 0; } + if (maction->flow_action_raw.sub_type == + MLX5_IB_FLOW_ACTION_PACKET_REFORMAT) { + action->action |= + MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; + action->reformat_id = + maction->flow_action_raw.action_id; + return 0; + } /* fall through */ default: return -EOPNOTSUPP;