]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
RDMA/mlx5: Enable attaching packet reformat action to steering flows
authorMark Bloch <markb@mellanox.com>
Sun, 2 Sep 2018 09:51:36 +0000 (12:51 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 11 Sep 2018 15:28:06 +0000 (09:28 -0600)
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 <markb@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/mlx5/main.c

index b5f0ab88e064d0ac0f0e4c5df225d232106d1e18..65fce84135f326e9dd37d780a6925777f87f762f 100644 (file)
@@ -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;