From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A40CEA0352 for ; Mon, 7 Feb 2022 09:32:32 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 96897410FB; Mon, 7 Feb 2022 09:32:32 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id 5D8F54069D; Mon, 7 Feb 2022 09:32:30 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1644222750; x=1675758750; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=eGpyG//puwYQOto2xuSX20g8qUQQUvyc0G7VajDadjk=; b=Yu8+LCv4d9p6OPWExDaFVIg6TFwngoV4T2FnGzSOTTB+bg4ywyV6LS0A EZ1Q+fSxrwJ4nYdRKkujtgK9I67ksJpH0ie2DF2+5/S1+wDETp6Kj7hGU It9hUZLcqsTP/VQ850nGsIZIkVKo5FuWr3HdCQqwbc48bWLm01fYDtXtB bTJIR8xmOxOTmx2485gN08U8vxrVIHjHFz7TAywOefvUrlXCXmCmGReqc leyhwarwisa8cDpr0wIaTZoznFnNAjXxLKES9oHxkjsincgiRSNAeggTx +cQhIf3BmIVW4TaJTVcyZG4efR3B67LL4olg3VEHUJCgKdF6GgH1ycvAX Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10250"; a="273190514" X-IronPort-AV: E=Sophos;i="5.88,349,1635231600"; d="scan'208";a="273190514" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Feb 2022 00:32:29 -0800 X-IronPort-AV: E=Sophos;i="5.88,349,1635231600"; d="scan'208";a="484341579" Received: from intel-cd-odc-steve.cd.intel.com ([10.240.178.135]) by orsmga006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Feb 2022 00:32:27 -0800 From: Steve Yang To: dev@dpdk.org Cc: qiming.yang@intel.com, qi.z.zhang@intel.com, Steve Yang , stable@dpdk.org Subject: [PATCH v1] net/ice: fix dereference before null check Date: Mon, 7 Feb 2022 08:25:58 +0000 Message-Id: <20220207082558.1349140-1-stevex.yang@intel.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org This patch fixes coverity issue by assigning the address of the "info->data" without "info" pointer check. CID 375065: Null pointer dereferences (REVERSE_INULL) Null-checking "info" suggests that it may be null, but it has already been dereferenced on all paths leading to the check. Coverity issue: 375065 Fixes: fd8480e61490 ("net/ice: support module EEPROM") Cc: stable@dpdk.org Signed-off-by: Steve Yang --- drivers/net/ice/ice_ethdev.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c index d01acb8797..1a469afeac 100644 --- a/drivers/net/ice/ice_ethdev.c +++ b/drivers/net/ice/ice_ethdev.c @@ -5016,14 +5016,14 @@ ice_get_module_eeprom(struct rte_eth_dev *dev, #define I2C_USLEEP_MAX_TIME 2500 uint8_t value[SFF_READ_BLOCK_SIZE] = {0}; uint8_t addr = ICE_I2C_EEPROM_DEV_ADDR; - uint8_t *data = info->data; + uint8_t *data = NULL; enum ice_status status; bool is_sfp = false; uint32_t i, j; uint32_t offset = 0; uint8_t page = 0; - if (!info || !info->length || !data) + if (!info || !info->length || !info->data) return -EINVAL; status = ice_aq_sff_eeprom(hw, 0, addr, offset, page, 0, value, 1, 0, @@ -5034,6 +5034,7 @@ ice_get_module_eeprom(struct rte_eth_dev *dev, if (value[0] == ICE_MODULE_TYPE_SFP) is_sfp = true; + data = info->data; memset(data, 0, info->length); for (i = 0; i < info->length; i += SFF_READ_BLOCK_SIZE) { offset = i + info->offset; -- 2.27.0