[dpdk-dev] [PATCH v4 1/8] net/mlx5: fix flow counters creation
Slava Ovsiienko
viacheslavo at mellanox.com
Tue Oct 23 12:04:10 CEST 2018
The Flow counter creation function contains two problems:
- Flow counter object in Verbs is not freed in case of memory
allocation error. The call of counter Verbs object deallocating
function is added to fix.
- The initial value of reference counter is set to one in order
to provide the correct counter object freeing in the
flow_verbs_counter_release() function. The reference counter
field should be initialized to one.
Fixes: 60bd8c9747e8 ("net/mlx5: add count flow action")
Cc: stable at dpdk.org
Signed-off-by: Viacheslav Ovsiienko <viacheslavo at mellanox.com>
---
drivers/net/mlx5/mlx5_flow_verbs.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/mlx5/mlx5_flow_verbs.c b/drivers/net/mlx5/mlx5_flow_verbs.c
index 4ae974b..6ddb13b 100644
--- a/drivers/net/mlx5/mlx5_flow_verbs.c
+++ b/drivers/net/mlx5/mlx5_flow_verbs.c
@@ -72,6 +72,7 @@
}),
.hits = 0,
.bytes = 0,
+ .ref_cnt = 1,
};
if (!tmpl.cs) {
@@ -80,6 +81,7 @@
}
cnt = rte_calloc(__func__, 1, sizeof(*cnt), 0);
if (!cnt) {
+ claim_zero(mlx5_glue->destroy_counter_set(tmpl.cs));
rte_errno = ENOMEM;
return NULL;
}
--
1.8.3.1
More information about the dev
mailing list