[dpdk-dev] [PATCH] net/mlx5: fix 32-bit build
Ali Alnubani
alialnu at mellanox.com
Thu Jun 27 17:10:07 CEST 2019
This is to fix the error:
```
drivers/net/mlx5/mlx5_defs.h:14:26: error: format '%lx' expects argument
of type 'long unsigned int', but argument 5 has type 'off_t {aka long
long int}' [-Werror=format=]
#define MLX5_DRIVER_NAME "net_mlx5"
^
RTE_SDK/i686-native-linuxapp-gcc/include/rte_common.h:642:27:
note: in definition of macro 'RTE_FMT'
#define RTE_FMT(fmt, ...) fmt "%.0s", __VA_ARGS__ ""
^~~
RTE_SDK/drivers/net/mlx5/mlx5_utils.h:79:11: note: in expansion
of macro 'MLX5_DRIVER_NAME'
RTE_FMT(MLX5_DRIVER_NAME ": " \
^~~~~~~~~~~~~~~~
RTE_SDK/drivers/net/mlx5/mlx5_utils.h:101:2: note: in expansion
of macro 'PMD_DRV_LOG___'
PMD_DRV_LOG___(level, __VA_ARGS__)
^~~~~~~~~~~~~~
RTE_SDK/drivers/net/mlx5/mlx5_utils.h:103:2: note: in expansion
of macro 'PMD_DRV_LOG__'
PMD_DRV_LOG__(level, s "\n", __VA_ARGS__)
^~~~~~~~~~~~~
RTE_SDK/drivers/net/mlx5/mlx5_utils.h:109:2: note: in expansion
of macro 'PMD_DRV_LOG_'
PMD_DRV_LOG_(level, \
^~~~~~~~~~~~
RTE_SDK/drivers/net/mlx5/mlx5_txq.c:569:3: note: in expansion of
macro 'DRV_LOG'
DRV_LOG(DEBUG, "port %u: uar_mmap_offset 0x%lx",
^~~~~~~
RTE_SDK/drivers/net/mlx5/mlx5_txq.c:569:48: note: format string
is defined here
DRV_LOG(DEBUG, "port %u: uar_mmap_offset 0x%lx"
~~^
%llx
```
Which reproduces with gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0.
Fixes: 6bf10ab69be0 ("net/mlx5: support 32-bit systems")
Cc: motih at mellanox.com
Cc: stable at dpdk.org
Signed-off-by: Ali Alnubani <alialnu at mellanox.com>
---
drivers/net/mlx5/mlx5_txq.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c
index ebb42cbff..5cdcbf2f2 100644
--- a/drivers/net/mlx5/mlx5_txq.c
+++ b/drivers/net/mlx5/mlx5_txq.c
@@ -10,6 +10,7 @@
#include <stdint.h>
#include <unistd.h>
#include <sys/mman.h>
+#include <inttypes.h>
/* Verbs header. */
/* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
@@ -566,7 +567,7 @@ mlx5_txq_ibv_new(struct rte_eth_dev *dev, uint16_t idx)
txq_uar_init(txq_ctrl);
if (qp.comp_mask & MLX5DV_QP_MASK_UAR_MMAP_OFFSET) {
txq_ctrl->uar_mmap_offset = qp.uar_mmap_offset;
- DRV_LOG(DEBUG, "port %u: uar_mmap_offset 0x%lx",
+ DRV_LOG(DEBUG, "port %u: uar_mmap_offset 0x%"PRIx64"",
dev->data->port_id, txq_ctrl->uar_mmap_offset);
} else {
DRV_LOG(ERR,
--
2.22.0
More information about the dev
mailing list