]> git.baikalelectronics.ru Git - kernel.git/commitdiff
net/mlx5e: Set inline mode requirements for matching on IP fragments
authorOr Gerlitz <ogerlitz@mellanox.com>
Tue, 10 Jan 2017 20:33:34 +0000 (22:33 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 11 Jan 2017 02:34:01 +0000 (21:34 -0500)
For e-switch level matching on packets being an IP fragment, we
need to make sure the source vport inline mode is L3, fix that.

Fixes: 23a203f85241 ('net/mlx5e: Offload TC matching on packets being IP fragments')
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Reviewed-by: Roi Dayan <roid@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c

index 9cfddd9fc0974a54ebd9dd6aee3f54e2883a15be..a35fa1eb06946a291972be6870029c90db354358 100644 (file)
@@ -389,6 +389,10 @@ static int __parse_cls_flower(struct mlx5e_priv *priv,
                        MLX5_SET(fte_match_set_lyr_2_4, headers_c, frag, 1);
                        MLX5_SET(fte_match_set_lyr_2_4, headers_v, frag,
                                 key->flags & FLOW_DIS_IS_FRAGMENT);
+
+                       /* the HW doesn't need L3 inline to match on frag=no */
+                       if (key->flags & FLOW_DIS_IS_FRAGMENT)
+                               *min_inline = MLX5_INLINE_MODE_IP;
                }
        }