[PATCH] net/mlx5/hws: fix saving of jumbo tag for deletion

Erez Shitrit erezsh at nvidia.com
Wed Mar 22 11:16:20 CET 2023


In cases with more than one STE we didn't update the whole tag
of the match jumbo STE, the ste_attr that keeps that indication was not
updated at the last iteration.
Now we indicate it is a jumbo frame before saving the tag for coming
deletion of it.

Fixes: 405242c52dd5 ("net/mlx5/hws: add rule object")
Cc: stable at dpdk.org

Signed-off-by: Erez Shitrit <erezsh at nvidia.com>
Reviewed-by: Alex Vesker <valex at nvidia.com>
Acked-by: Matan Azrad <matan at nvidia.com>
---
 drivers/net/mlx5/hws/mlx5dr_rule.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/hws/mlx5dr_rule.c b/drivers/net/mlx5/hws/mlx5dr_rule.c
index 9d5e5b11a5..2418ca0b26 100644
--- a/drivers/net/mlx5/hws/mlx5dr_rule.c
+++ b/drivers/net/mlx5/hws/mlx5dr_rule.c
@@ -116,6 +116,9 @@ static void
 mlx5dr_rule_save_delete_info(struct mlx5dr_rule *rule,
 			     struct mlx5dr_send_ste_attr *ste_attr)
 {
+	struct mlx5dr_match_template *mt = rule->matcher->mt;
+	bool is_jumbo = mlx5dr_matcher_mt_is_jumbo(mt);
+
 	if (unlikely(mlx5dr_matcher_req_fw_wqe(rule->matcher))) {
 		uint8_t *src_tag;
 
@@ -136,7 +139,7 @@ mlx5dr_rule_save_delete_info(struct mlx5dr_rule *rule,
 		return;
 	}
 
-	if (ste_attr->wqe_tag_is_jumbo)
+	if (is_jumbo)
 		memcpy(rule->tag.jumbo, ste_attr->wqe_data->jumbo, MLX5DR_JUMBO_TAG_SZ);
 	else
 		memcpy(rule->tag.match, ste_attr->wqe_data->tag, MLX5DR_MATCH_TAG_SZ);
-- 
2.18.2



More information about the stable mailing list