[dpdk-dev] [PATCH] net/mlx5: fix indexed pool 32-bits build error

Suanming Mou suanmingm at mellanox.com
Sat Apr 18 03:44:52 CEST 2020


Currently, 32-bits compiler treats int64_t as long long int different
with 64-bits. The indexed pool dump function build will be failed in
32-bits mode.

As the maximum supported entries of the indexed pool is UINT32_MAX, use
the 64 bits to record the pool statistics is waste of memory. Align the
statistics value type to uint32_t.

Fixes: 1702f7848f6a ("net/mlx5: add indexed memory pool")

Signed-off-by: Suanming Mou <suanmingm at mellanox.com>
---
 drivers/net/mlx5/mlx5_utils.c |  4 ++--
 drivers/net/mlx5/mlx5_utils.h | 10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_utils.c b/drivers/net/mlx5/mlx5_utils.c
index 7683167..07a6283 100644
--- a/drivers/net/mlx5/mlx5_utils.c
+++ b/drivers/net/mlx5/mlx5_utils.c
@@ -472,8 +472,8 @@ struct mlx5_indexed_pool *
 	       pool->cfg.type, pool->cfg.size, pool->n_trunk_valid,
 	       pool->cfg.trunk_size, pool->n_trunk_valid);
 #ifdef POOL_DEBUG
-	printf("Pool %s entry %ld, trunk alloc %ld, empty: %ld, "
-	       "available %ld free %ld\n",
+	printf("Pool %s entry %u, trunk alloc %u, empty: %u, "
+	       "available %u free %u\n",
 	       pool->cfg.type, pool->n_entry, pool->trunk_new,
 	       pool->trunk_empty, pool->trunk_avail, pool->trunk_free);
 #endif
diff --git a/drivers/net/mlx5/mlx5_utils.h b/drivers/net/mlx5/mlx5_utils.h
index 1051b12..d81ace3 100644
--- a/drivers/net/mlx5/mlx5_utils.h
+++ b/drivers/net/mlx5/mlx5_utils.h
@@ -127,11 +127,11 @@ struct mlx5_indexed_pool {
 	struct mlx5_indexed_trunk **trunks;
 	uint32_t free_list; /* Index to first free trunk. */
 #ifdef POOL_DEBUG
-	int64_t n_entry;
-	int64_t trunk_new;
-	int64_t trunk_avail;
-	int64_t trunk_empty;
-	int64_t trunk_free;
+	uint32_t n_entry;
+	uint32_t trunk_new;
+	uint32_t trunk_avail;
+	uint32_t trunk_empty;
+	uint32_t trunk_free;
 #endif
 	uint32_t grow_tbl[]; /* Save the index offset for the grow trunks. */
 };
-- 
1.8.3.1



More information about the dev mailing list