build error: i40e_common.c: In function "i40e_parse_discover_capabilities": ../drivers/net/i40e/base/../i40e_logs.h:43:50: error: format "%llX" expects argument of type "long long unsigned int", but argument 7 has type "u64" {aka "long unsigned int" [-Werror=format=] 43 | rte_log(RTE_LOG_ ## level, i40e_logtype_driver, "%s(): " fmt, \ | ^~~~~~~~ .../i40e_osdep.h:87:3: note: in expansion of macro "PMD_DRV_LOG_RAW" 87 | PMD_DRV_LOG_RAW(DEBUG, "i40e %02x.%x " s, \ | ^~~~~~~~~~~~~~~ .../base/i40e_common.c:4100:4: note: in expansion of macro "i40e_debug" 4100 | i40e_debug(hw, I40E_DEBUG_INIT, | ^~~~~~~~~~
Using 'PRIX64' to fix the build error. Fixes: 889bc9f0cd3a ("i40e/base: unify the capability function") Cc: sta...@dpdk.org Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com> --- Cc: helin.zh...@intel.com Cc: Luca Boccassi <bl...@debian.org> Cc: David Marchand <david.march...@redhat.com> --- drivers/net/i40e/base/i40e_common.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c index 8e3db0756c..e20bb9ac35 100644 --- a/drivers/net/i40e/base/i40e_common.c +++ b/drivers/net/i40e/base/i40e_common.c @@ -2,6 +2,8 @@ * Copyright(c) 2001-2020 Intel Corporation */ +#include <inttypes.h> + #include "i40e_type.h" #include "i40e_adminq.h" #include "i40e_prototype.h" @@ -4098,7 +4100,7 @@ STATIC void i40e_parse_discover_capabilities(struct i40e_hw *hw, void *buff, p->wr_csr_prot = (u64)number; p->wr_csr_prot |= (u64)logical_id << 32; i40e_debug(hw, I40E_DEBUG_INIT, - "HW Capability: wr_csr_prot = 0x%llX\n\n", + "HW Capability: wr_csr_prot = 0x%" PRIX64 "\n\n", (p->wr_csr_prot & 0xffff)); break; case I40E_AQ_CAP_ID_DIS_UNUSED_PORTS: -- 2.26.2