From mboxrd@z Thu Jan 1 00:00:00 1970 From: Beilei Xing Subject: [PATCH v2 1/3] i40e: fix log error Date: Tue, 5 Jul 2016 14:10:03 +0800 Message-ID: <1467699005-16235-2-git-send-email-beilei.xing@intel.com> References: <1467272056-14388-1-git-send-email-beilei.xing@intel.com> <1467699005-16235-1-git-send-email-beilei.xing@intel.com> Cc: dev@dpdk.org, Beilei Xing To: jingjing.wu@intel.com, michalx.k.jastrzebski@intel.com Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id A7E575320 for ; Tue, 5 Jul 2016 08:11:03 +0200 (CEST) In-Reply-To: <1467699005-16235-1-git-send-email-beilei.xing@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The condition, "(pf->flags | I40E_FLAG_VMDQ)" will always be true, regardless of the value of the flags operand, because I40E_FLAG_VMDQ is 4ULL - meaning at least one bit will always be set in the result. That will cause log error when VMDq is disabled. Since the original intent behind the condition is to check if VMDq is enabled, fix the code by changing "|" to "&". Coverity issue: 13219, 13221 Fixes: 4805ed59e957 ("i40e: enhance mac address operations") Signed-off-by: Beilei Xing --- drivers/net/i40e/i40e_ethdev.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index f414d93..46ae866 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -2952,9 +2952,10 @@ i40e_macaddr_add(struct rte_eth_dev *dev, int ret; /* If VMDQ not enabled or configured, return */ - if (pool != 0 && (!(pf->flags | I40E_FLAG_VMDQ) || !pf->nb_cfg_vmdq_vsi)) { + if (pool != 0 && (!(pf->flags & I40E_FLAG_VMDQ) || + !pf->nb_cfg_vmdq_vsi)) { PMD_DRV_LOG(ERR, "VMDQ not %s, can't set mac to pool %u", - pf->flags | I40E_FLAG_VMDQ ? "configured" : "enabled", + pf->flags & I40E_FLAG_VMDQ ? "configured" : "enabled", pool); return; } @@ -3005,7 +3006,7 @@ i40e_macaddr_remove(struct rte_eth_dev *dev, uint32_t index) vsi = pf->main_vsi; else { /* No VMDQ pool enabled or configured */ - if (!(pf->flags | I40E_FLAG_VMDQ) || + if (!(pf->flags & I40E_FLAG_VMDQ) || (i > pf->nb_cfg_vmdq_vsi)) { PMD_DRV_LOG(ERR, "No VMDQ pool enabled" "/configured"); -- 2.5.0