net/mlx5: fix SWS meter state initialization
Checks
Commit Message
The PMD uses METER `state` variable to monitor ASO object
availability.
The patch updates SWS meter object state.
Fixes: 4359d9d1f76b ("net/mlx5: fix sync meter processing in HWS")
Cc: stable@dpdk.org
Signed-off-by: Gregory Etelson <getelson@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
---
drivers/net/mlx5/mlx5_flow_meter.c | 2 ++
1 file changed, 2 insertions(+)
Comments
Hi,
From: Gregory Etelson <getelson@nvidia.com>
Sent: Sunday, October 27, 2024 5:31 PM
To: dev@dpdk.org
Cc: Gregory Etelson; Maayan Kashani; Raslan Darawsheh; stable@dpdk.org; Dariusz Sosnowski; Slava Ovsiienko; Bing Zhao; Ori Kam; Suanming Mou; Matan Azrad
Subject: [PATCH] net/mlx5: fix SWS meter state initialization
The PMD uses METER `state` variable to monitor ASO object
availability.
The patch updates SWS meter object state.
Fixes: 4359d9d1f76b ("net/mlx5: fix sync meter processing in HWS")
Cc: stable@dpdk.org
Signed-off-by: Gregory Etelson <getelson@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
Patch applied to next-net-mlx,
Kindest regards,
Raslan Darawsheh
Hi,
From: Gregory Etelson <getelson@nvidia.com>
Sent: Sunday, October 27, 2024 5:31 PM
To: dev@dpdk.org
Cc: Gregory Etelson; Maayan Kashani; Raslan Darawsheh; stable@dpdk.org; Dariusz Sosnowski; Slava Ovsiienko; Bing Zhao; Ori Kam; Suanming Mou; Matan Azrad
Subject: [PATCH] net/mlx5: fix SWS meter state initialization
The PMD uses METER `state` variable to monitor ASO object
availability.
The patch updates SWS meter object state.
Fixes: 4359d9d1f76b ("net/mlx5: fix sync meter processing in HWS")
Cc: stable@dpdk.org
Signed-off-by: Gregory Etelson <getelson@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
Patch applied to next-net-mlx,
Kindest regards,
Raslan Darawsheh
@@ -1914,6 +1914,7 @@ mlx5_flow_meter_action_modify(struct mlx5_priv *priv,
if (sh->meter_aso_en) {
fm->is_enable = !!is_enable;
aso_mtr = container_of(fm, struct mlx5_aso_mtr, fm);
+ aso_mtr->state = ASO_METER_WAIT;
ret = mlx5_aso_meter_update_by_wqe(priv, MLX5_HW_INV_QUEUE,
aso_mtr, &priv->mtr_bulk,
NULL, true);
@@ -2165,6 +2166,7 @@ mlx5_flow_meter_create(struct rte_eth_dev *dev, uint32_t meter_id,
/* If ASO meter supported, update ASO flow meter by wqe. */
if (priv->sh->meter_aso_en) {
aso_mtr = container_of(fm, struct mlx5_aso_mtr, fm);
+ aso_mtr->state = ASO_METER_WAIT;
ret = mlx5_aso_meter_update_by_wqe(priv, MLX5_HW_INV_QUEUE,
aso_mtr, &priv->mtr_bulk, NULL, true);
if (ret)