From: Mark Bloch <ma...@mellanox.com>

Any matching rules will be mutated based on the packet reformat context
which is attached to that given flow rule.

Signed-off-by: Mark Bloch <ma...@mellanox.com>
Signed-off-by: Leon Romanovsky <leo...@mellanox.com>
---
 drivers/infiniband/hw/mlx5/main.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/infiniband/hw/mlx5/main.c 
b/drivers/infiniband/hw/mlx5/main.c
index fc0492b7ad19..c0e902bf1de6 100644
--- a/drivers/infiniband/hw/mlx5/main.c
+++ b/drivers/infiniband/hw/mlx5/main.c
@@ -2480,6 +2480,13 @@ 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_ID;
+                       action->packet_reformat_id = 
maction->flow_action_raw.action_id;
+                       return 0;
+               }
                /* fall through */
        default:
                return -EOPNOTSUPP;
--
2.14.4

Reply via email to