From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 173C1A00C3; Thu, 14 May 2020 09:20:39 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 522E01D650; Thu, 14 May 2020 09:20:38 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 4C93D1D636 for ; Thu, 14 May 2020 09:20:36 +0200 (CEST) IronPort-SDR: zjO/7v0xFCRIFe6RwOP3f9jcSh1rmB61Mb0Vv322K8gf9q4alMyLiTQx0dLA9fJ4PrICf1QmvU Lh/7NRF7uVRg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 May 2020 00:20:35 -0700 IronPort-SDR: D9pvqc+22ddEKq2R5t4DeUB1oubYllEI1Uz84diBagGllMbF0w1+J9Gs/pTanUZ9t3YO3iS/Ah UiQEmGOgeq8w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,390,1583222400"; d="scan'208";a="280764748" Received: from intel.sh.intel.com ([10.239.255.18]) by orsmga002.jf.intel.com with ESMTP; 14 May 2020 00:20:33 -0700 From: Chenxu Di To: dev@dpdk.org Cc: beilei.xing@intel.com, jia.guo@intel.com, Chenxu Di Date: Thu, 14 May 2020 07:07:20 +0000 Message-Id: <20200514070720.31734-1-chenxux.di@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200507030928.42082-1-chenxux.di@intel.com> References: <20200507030928.42082-1-chenxux.di@intel.com> Subject: [dpdk-dev] [PATCH v4] net/i40e: fix out of bounds read issue X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch fixes (out-of-bounds read) coverity issue. Coverity issue: 357699 Coverity issue: 357694 Fixes: feaae285b342 ("net/i40e: support hash configuration in RSS flow") Signed-off-by: Chenxu Di --- v4: -Updated the return value. --- drivers/net/i40e/i40e_ethdev.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index 749d85f54..91dcd0ebf 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -13179,6 +13179,9 @@ i40e_rss_config_hash_function(struct i40e_pf *pf, break; } + if (i == UINT64_BIT) + return -EINVAL; + for (j = I40E_FILTER_PCTYPE_INVALID + 1; j < I40E_FILTER_PCTYPE_MAX; j++) { if (pf->adapter->pctypes_tbl[i] & (1ULL << j)) @@ -13311,6 +13314,9 @@ i40e_rss_clear_hash_function(struct i40e_pf *pf, break; } + if (i == UINT64_BIT) + return -EINVAL; + for (j = I40E_FILTER_PCTYPE_INVALID + 1; j < I40E_FILTER_PCTYPE_MAX; j++) { if (pf->adapter->pctypes_tbl[i] & (1ULL << j)) -- 2.17.1