for (tt = 0; tt < MLX5_NUM_TT; tt++) {
                struct mlx5_ttc_rule *rule = &rules[tt];
 
+               if (test_bit(tt, params->ignore_dests))
+                       continue;
                rule->rule = mlx5_generate_ttc_rule(dev, ft, ¶ms->dests[tt],
                                                    ttc_rules[tt].etype,
                                                    ttc_rules[tt].proto);
                if (!mlx5_tunnel_proto_supported_rx(dev,
                                                    ttc_tunnel_rules[tt].proto))
                        continue;
+               if (test_bit(tt, params->ignore_tunnel_dests))
+                       continue;
                trules[tt] = mlx5_generate_ttc_rule(dev, ft,
                                                    ¶ms->tunnel_dests[tt],
                                                    ttc_tunnel_rules[tt].etype,
 
        struct mlx5_flow_namespace *ns;
        struct mlx5_flow_table_attr ft_attr;
        struct mlx5_flow_destination dests[MLX5_NUM_TT];
+       DECLARE_BITMAP(ignore_dests, MLX5_NUM_TT);
        bool   inner_ttc;
+       DECLARE_BITMAP(ignore_tunnel_dests, MLX5_NUM_TUNNEL_TT);
        struct mlx5_flow_destination tunnel_dests[MLX5_NUM_TUNNEL_TT];
 };