patch 'net/mlx5: fix meter creation default state' has been queued to stable release 21.11.1

Kevin Traynor ktraynor at redhat.com
Thu Mar 10 13:11:21 CET 2022


Hi,

FYI, your patch has been queued to stable release 21.11.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 03/14/22. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/ee836190a112912e101a8b754c500c87ae3ed3cd

Thanks.

Kevin

---
>From ee836190a112912e101a8b754c500c87ae3ed3cd Mon Sep 17 00:00:00 2001
From: Rongwei Liu <rongweil at nvidia.com>
Date: Mon, 7 Mar 2022 10:00:35 +0200
Subject: [PATCH] net/mlx5: fix meter creation default state

[ upstream commit c3130c78e87864d5139d6672e48df807b1c0e2db ]

Disable means there is no packet drop in the meter. Meter is
active always but programmed with another CIR/CBS value.

If the user wants to disable the meter in creation, PMD calls
the disable() API manually after meter initialized.

Fixes: 444320186393 ("net/mlx5: support meter creation with policy")

Signed-off-by: Rongwei Liu <rongweil at nvidia.com>
Acked-by: Matan Azrad <matan at nvidia.com>
---
 drivers/net/mlx5/mlx5_flow_meter.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_flow_meter.c b/drivers/net/mlx5/mlx5_flow_meter.c
index 4f5de5e422..a58e30dc83 100644
--- a/drivers/net/mlx5/mlx5_flow_meter.c
+++ b/drivers/net/mlx5/mlx5_flow_meter.c
@@ -16,4 +16,7 @@
 #include "mlx5_flow.h"
 
+static int mlx5_flow_meter_disable(struct rte_eth_dev *dev,
+		uint32_t meter_id, struct rte_mtr_error *error);
+
 /**
  * Create the meter action.
@@ -1289,5 +1292,5 @@ mlx5_flow_meter_create(struct rte_eth_dev *dev, uint32_t meter_id,
 	/* Add to the flow meter list. */
 	fm->active_state = 1; /* Config meter starts as active. */
-	fm->is_enable = 1;
+	fm->is_enable = params->meter_enable;
 	fm->shared = !!shared;
 	__atomic_add_fetch(&fm->profile->ref_cnt, 1, __ATOMIC_RELAXED);
@@ -1314,5 +1317,8 @@ mlx5_flow_meter_create(struct rte_eth_dev *dev, uint32_t meter_id,
 		if (mlx5_l3t_set_entry(priv->mtr_idx_tbl, meter_id, &data))
 			goto error;
+	} else if (!params->meter_enable && mlx5_flow_meter_disable(dev, meter_id, error)) {
+		goto error;
 	}
+	fm->active_state = params->meter_enable;
 	if (mtr_policy)
 		__atomic_add_fetch(&mtr_policy->ref_cnt, 1, __ATOMIC_RELAXED);
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-03-10 12:05:31.882320931 +0000
+++ 0022-net-mlx5-fix-meter-creation-default-state.patch	2022-03-10 12:05:31.317630899 +0000
@@ -1 +1 @@
-From c3130c78e87864d5139d6672e48df807b1c0e2db Mon Sep 17 00:00:00 2001
+From ee836190a112912e101a8b754c500c87ae3ed3cd Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c3130c78e87864d5139d6672e48df807b1c0e2db ]
+
@@ -13 +14,0 @@
-Cc: stable at dpdk.org
@@ -22 +23 @@
-index 06ab7c4a88..a3d1f2c08d 100644
+index 4f5de5e422..a58e30dc83 100644



More information about the stable mailing list