net/mlx5: DR, Fix matcher builders select check
authorAlex Vesker <valex@mellanox.com>
Sun, 10 Nov 2019 16:10:13 +0000 (18:10 +0200)
committerSaeed Mahameed <saeedm@mellanox.com>
Wed, 13 Nov 2019 22:25:03 +0000 (14:25 -0800)
When selecting a matcher ste_builder_arr will always be evaluated
as true, instead check if num_of_builders is set for validity.

Fixes: 667f264676c7 ("net/mlx5: DR, Support IPv4 and IPv6 mixed matcher")
Signed-off-by: Alex Vesker <valex@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/steering/dr_matcher.c

index 5db947d..c654898 100644 (file)
@@ -154,7 +154,7 @@ int mlx5dr_matcher_select_builders(struct mlx5dr_matcher *matcher,
        nic_matcher->num_of_builders =
                nic_matcher->num_of_builders_arr[outer_ipv][inner_ipv];
 
-       if (!nic_matcher->ste_builder) {
+       if (!nic_matcher->num_of_builders) {
                mlx5dr_dbg(matcher->tbl->dmn,
                           "Rule not supported on this matcher due to IP related fields\n");
                return -EINVAL;