From: Beilei Xing <beilei.x...@intel.com> There's build error with clang 3.4.2 in CentOS 7:
drivers/net/idpf/idpf_vchnl.c:141:13: error: comparison of constant 522 with expression of type 'enum virtchnl_ops' is always false [-Werror,-Wtautological-constant-out-of-range-compare] Fixed the compiling error in the patch. Fixes: 549343c25db8 ("net/idpf: support device initialization") Signed-off-by: Beilei Xing <beilei.x...@intel.com> --- v2 change: modify enum virtchnl_ops with uint32_t in header file. drivers/net/idpf/idpf_ethdev.h | 10 +++++----- drivers/net/idpf/idpf_vchnl.c | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/net/idpf/idpf_ethdev.h b/drivers/net/idpf/idpf_ethdev.h index ccdf4abe40..1efdfe4ce0 100644 --- a/drivers/net/idpf/idpf_ethdev.h +++ b/drivers/net/idpf/idpf_ethdev.h @@ -137,7 +137,7 @@ struct idpf_adapter { struct virtchnl2_version_info virtchnl_version; struct virtchnl2_get_capabilities *caps; - volatile enum virtchnl_ops pend_cmd; /* pending command not finished */ + volatile uint32_t pend_cmd; /* pending command not finished */ uint32_t cmd_retval; /* return value of the cmd response from ipf */ uint8_t *mbx_resp; /* buffer to store the mailbox response from ipf */ @@ -195,7 +195,7 @@ notify_cmd(struct idpf_adapter *adapter, int msg_ret) adapter->cmd_retval = msg_ret; /* Return value may be checked in anither thread, need to ensure the coherence. */ rte_wmb(); - adapter->pend_cmd = VIRTCHNL_OP_UNKNOWN; + adapter->pend_cmd = VIRTCHNL2_OP_UNKNOWN; } /* clear current command. Only call in case execute @@ -206,15 +206,15 @@ clear_cmd(struct idpf_adapter *adapter) { /* Return value may be checked in anither thread, need to ensure the coherence. */ rte_wmb(); - adapter->pend_cmd = VIRTCHNL_OP_UNKNOWN; + adapter->pend_cmd = VIRTCHNL2_OP_UNKNOWN; adapter->cmd_retval = VIRTCHNL_STATUS_SUCCESS; } /* Check there is pending cmd in execution. If none, set new command. */ static inline bool -atomic_set_cmd(struct idpf_adapter *adapter, enum virtchnl_ops ops) +atomic_set_cmd(struct idpf_adapter *adapter, uint32_t ops) { - enum virtchnl_ops op_unk = VIRTCHNL_OP_UNKNOWN; + uint32_t op_unk = VIRTCHNL2_OP_UNKNOWN; bool ret = __atomic_compare_exchange(&adapter->pend_cmd, &op_unk, &ops, 0, __ATOMIC_ACQUIRE, __ATOMIC_ACQUIRE); diff --git a/drivers/net/idpf/idpf_vchnl.c b/drivers/net/idpf/idpf_vchnl.c index 00ac5b2a6b..ac6486d4ef 100644 --- a/drivers/net/idpf/idpf_vchnl.c +++ b/drivers/net/idpf/idpf_vchnl.c @@ -55,7 +55,7 @@ idpf_vc_clean(struct idpf_adapter *adapter) } static int -idpf_send_vc_msg(struct idpf_adapter *adapter, enum virtchnl_ops op, +idpf_send_vc_msg(struct idpf_adapter *adapter, uint32_t op, uint16_t msg_size, uint8_t *msg) { struct idpf_ctlq_msg *ctlq_msg; @@ -118,7 +118,7 @@ idpf_read_msg_from_cp(struct idpf_adapter *adapter, uint16_t buf_len, struct idpf_ctlq_msg ctlq_msg; struct idpf_dma_mem *dma_mem = NULL; enum idpf_vc_result result = IDPF_MSG_NON; - enum virtchnl_ops opcode; + uint32_t opcode; uint16_t pending = 1; int ret; @@ -132,7 +132,7 @@ idpf_read_msg_from_cp(struct idpf_adapter *adapter, uint16_t buf_len, rte_memcpy(buf, ctlq_msg.ctx.indirect.payload->va, buf_len); - opcode = (enum virtchnl_ops)rte_le_to_cpu_32(ctlq_msg.cookie.mbx.chnl_opcode); + opcode = rte_le_to_cpu_32(ctlq_msg.cookie.mbx.chnl_opcode); adapter->cmd_retval = (enum virtchnl_status_code)rte_le_to_cpu_32(ctlq_msg.cookie.mbx.chnl_retval); -- 2.26.2