RDMA/mlx5: Enable reformat on NIC RX if supported
authorMark Bloch <markb@mellanox.com>
Sun, 2 Sep 2018 09:51:35 +0000 (12:51 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 11 Sep 2018 15:28:06 +0000 (09:28 -0600)
A L3_TUNNEL_TO_L2 decap flow action requires to enable the encap bit on
the flow table, enable it if supported. This will allow to attach those
flow actions to NIC RX steering. We don't enable if running on a
representor.

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 5ae31ad..b5f0ab8 100644 (file)
@@ -3095,6 +3095,10 @@ static struct mlx5_ib_flow_prio *get_flow_table(struct mlx5_ib_dev *dev,
                        if (!dev->rep &&
                            MLX5_CAP_FLOWTABLE_NIC_RX(dev->mdev, decap))
                                flags |= MLX5_FLOW_TABLE_TUNNEL_EN_DECAP;
+                       if (!dev->rep &&
+                           MLX5_CAP_FLOWTABLE_NIC_RX(dev->mdev,
+                                       reformat_l3_tunnel_to_l2))
+                               flags |= MLX5_FLOW_TABLE_TUNNEL_EN_REFORMAT;
                } else {
                        max_table_size =
                                BIT(MLX5_CAP_FLOWTABLE_NIC_TX(dev->mdev,