From patchwork Thu May 25 09:58:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nithin Dabilpuram X-Patchwork-Id: 127413 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6E20E42B9A; Thu, 25 May 2023 12:11:02 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A7DC242D9B; Thu, 25 May 2023 12:10:10 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id D746640DF8 for ; Thu, 25 May 2023 12:09:58 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34PA2UjT020269 for ; Thu, 25 May 2023 03:09:58 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=MmzjvofCfDTdP1mzh3IUkLuC154Th14guOmTM5PDxzs=; b=JuF3si2adOAyDyOR3GAmlHHISP4ncbpm0uh5xA1FBa4ymPwI1hRHLUtwi3rM1h7Z1MsC Uhci6xxNj/KEIbzoq2a/ESn1Qy6fUQa6XQzQRL2D1riVabOHd4/DlY5O2c4s1Umk4UKy JGCSTwCHMXSQWKme3OQoDFf6wutovaHT4JM9vLKbxl0Im45e/ZRi+/c8fSzh4qpGHwzG 9MTYnmWc4uXiVTMJyEhqL83q3uJ04aKlI2XDbfEZOkwdcRg99EE/D7yLufjcqtYmDHWi o5iBNFoqMhcHi+x1vzQnKCpTbXrNXvBhFQmob7O6HXQiDIGbs+2asuvrZDHyE0DYIucW qg== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3qt5jng0kq-19 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Thu, 25 May 2023 03:09:57 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Thu, 25 May 2023 03:09:48 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.48 via Frontend Transport; Thu, 25 May 2023 03:09:48 -0700 Received: from hyd1588t430.caveonetworks.com (unknown [10.29.52.204]) by maili.marvell.com (Postfix) with ESMTP id 684DD5B6DD2; Thu, 25 May 2023 03:00:16 -0700 (PDT) From: Nithin Dabilpuram To: Nithin Kumar Dabilpuram , Kiran Kumar K , Sunil Kumar Kori , Satha Rao CC: , , Hanumanth Pothula Subject: [PATCH v3 20/32] common/cnxk: access valid pass value Date: Thu, 25 May 2023 15:28:52 +0530 Message-ID: <20230525095904.3967080-20-ndabilpuram@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230525095904.3967080-1-ndabilpuram@marvell.com> References: <20230411091144.1087887-1-ndabilpuram@marvell.com> <20230525095904.3967080-1-ndabilpuram@marvell.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: erGWwDVkwkzWfQmSOhnmRMao5zf2Ngnz X-Proofpoint-GUID: erGWwDVkwkzWfQmSOhnmRMao5zf2Ngnz X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-05-25_06,2023-05-24_01,2023-05-22_02 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Hanumanth Pothula There is a possibility of accessing an invalid pass value on rvu device look up failure, as the return value is dropped. Hence pass through the return value of rvu device look, to make sure valid pass value is accessed. Signed-off-by: Hanumanth Pothula --- drivers/common/cnxk/roc_model.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/common/cnxk/roc_model.c b/drivers/common/cnxk/roc_model.c index f4f2a38e70..6dc2afe7f0 100644 --- a/drivers/common/cnxk/roc_model.c +++ b/drivers/common/cnxk/roc_model.c @@ -148,6 +148,7 @@ cn10k_part_pass_get(uint32_t *part, uint32_t *pass) #define SYSFS_PCI_DEVICES "/sys/bus/pci/devices" char dirname[PATH_MAX]; struct dirent *e; + int ret = -1; DIR *dir; dir = opendir(SYSFS_PCI_DEVICES); @@ -165,18 +166,19 @@ cn10k_part_pass_get(uint32_t *part, uint32_t *pass) e->d_name); /* Lookup for rvu device and get part pass information */ - if (!rvu_device_lookup(dirname, part, pass)) + ret = rvu_device_lookup(dirname, part, pass); + if (!ret) break; } closedir(dir); - return 0; + return ret; } static bool populate_model(struct roc_model *model, uint32_t midr) { - uint32_t impl, major, part, minor, pass; + uint32_t impl, major, part, minor, pass = 0; bool found = false; size_t i;