When ipool debug is enabled, there is internal memory
to maintain the ipool cache allocation. Need to free it
when destroying the ipool.
Fixes: 3a2bda363 ("net/mlx5: add ipool debug checks")
Cc: [email protected]
Signed-off-by: Rongwei Liu <[email protected]>
Acked-by: Viacheslav Ovsiienko <[email protected]>
---
drivers/net/mlx5/mlx5_utils.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/net/mlx5/mlx5_utils.c b/drivers/net/mlx5/mlx5_utils.c
index ac218868e6..58249b596f 100644
--- a/drivers/net/mlx5/mlx5_utils.c
+++ b/drivers/net/mlx5/mlx5_utils.c
@@ -871,6 +871,10 @@ mlx5_ipool_destroy(struct mlx5_indexed_pool *pool)
pool->cfg.free(trunks);
if (gc)
pool->cfg.free(gc);
+#ifdef POOL_DEBUG
+ if (pool->cache_validator.bmp_mem)
+ pool->cfg.free(pool->cache_validator.bmp_mem);
+#endif
mlx5_ipool_unlock(pool);
mlx5_free(pool);
return 0;
--
2.27.0