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 8B43645847; Thu, 22 Aug 2024 16:42:02 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 17E4742E52; Thu, 22 Aug 2024 16:42:02 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by mails.dpdk.org (Postfix) with ESMTP id DCCCF4027A for ; Thu, 22 Aug 2024 16:41:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1724337720; x=1755873720; h=date:from:to:cc:subject:message-id:references: in-reply-to:mime-version; bh=ek8SmDMzo6j+h3UAlhst8iik8BBOeq3hXrOeBlhgrsk=; b=Oe0oUbVd4JGf1ikN5iN6EHpdi0tYlnGVGNOg/EtnqwFIzo6Bl1dwLRZx ma5+upXI2GDBWrDGL38vw8T/cAO/CUtkHRP2ufNKIiklUM5qGqu+VdXA1 rqhifdEFELVep5JKlTfp+1we5JCkYC/aenI1L+zhF+Mc8semongtf/JZU 66BDE9V9X63Tps0kQgFqQr7rL78zeJfy9rJI8PrmtIe4iaqLcAr+GSBw0 CnEnsbAHiZ/7QtCNlRIgmIWz7G0l9LGcIwv7S9QsZClfdF3bXtyuh+2Y5 aqOuX97iucsGOfWZrt38jjPlTc/nYV7blxEqGWJ8FtHkNCct2TxgdJKCR g==; X-CSE-ConnectionGUID: zdbTd6JuQfy6rFOQF8dzww== X-CSE-MsgGUID: YZyLpnlkRy2UTHB9smtzSA== X-IronPort-AV: E=McAfee;i="6700,10204,11172"; a="40219524" X-IronPort-AV: E=Sophos;i="6.10,167,1719903600"; d="scan'208";a="40219524" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Aug 2024 07:41:59 -0700 X-CSE-ConnectionGUID: G2CUwaVTTXWzX0wyLe/3YQ== X-CSE-MsgGUID: wUbSG21eTfWRbwhiK71thw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,167,1719903600"; d="scan'208";a="61790344" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orviesa006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 22 Aug 2024 07:41:59 -0700 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 22 Aug 2024 07:41:58 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Thu, 22 Aug 2024 07:41:58 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.43) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Thu, 22 Aug 2024 07:41:58 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=m5+isvO7/NNLg0guHb0QcniNa3YKZmCH0hzKGTpugCe4XgOh9PmBAsCUSkck0HSNs/WxvJA0vRJgUwhD1CwNkLMfOrWjmTwctS7AqmXGRr7aeqMJyjl8vIViGu2OJnffrMzn+9ELe9rj889pKhdLQwtuMvN0M1Tv5q3V7DAnLVavyG2VISuksW1uc+EZSeiLZqYRj3b6YkNptDljI609TP4qnAe6kKEZyNr3N0Z7EzF0w46HVEYvmyzfr8gcVe7Lr9F3kpc1L6bDK471yPPyd0XuAo2Kx5/gKrbf16naAfoMXrguZLxYQVtB8DZ4pzY9Mjnj43diGwToSoYCDg1cZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=C2kpbPV7FXhz1/Ccbj+qf0kndSP51H8BmGFgUVq9HG8=; b=iR6mPWOj3nqsJULFwoAqPa9X4YkvYARcfzr4anNuxctm07oqa5zd4v1ABfEaWikxgoB5zUHgPsD2bNRGNSuRd4ITiGC0d1D0/3VLFQDPEXPLR3JnPkSPzuPUZtm0LzBwr14xC8hAcgaAlXOe+KdKmO/4fa0zL4hIwhGLiGQLH8P1VMGG3dq/F6pjzJRaU4zOn9nfZyW6ipWLePYCIMJQRgSvf+YTP3t910gGrZLrChWcruDNyqUsErzj1wFmQBWUVzkIFfE1Do8ktWvjA/NhVNSh0bakLbCCwho8mm0czHbjTTqNqyBYq3buDTdJw4wu/VZvJi9VEpaNmmWGrJZ9gg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from DS0PR11MB7309.namprd11.prod.outlook.com (2603:10b6:8:13e::17) by DS7PR11MB7885.namprd11.prod.outlook.com (2603:10b6:8:d8::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7897.19; Thu, 22 Aug 2024 14:41:56 +0000 Received: from DS0PR11MB7309.namprd11.prod.outlook.com ([fe80::f120:cc1f:d78d:ae9b]) by DS0PR11MB7309.namprd11.prod.outlook.com ([fe80::f120:cc1f:d78d:ae9b%2]) with mapi id 15.20.7897.014; Thu, 22 Aug 2024 14:41:56 +0000 Date: Thu, 22 Aug 2024 15:41:51 +0100 From: Bruce Richardson To: Soumyadeep Hore CC: , , , Subject: Re: [PATCH v1 04/12] net/ice: avoid reading past end of PFA Message-ID: References: <20240822095612.216214-1-soumyadeep.hore@intel.com> <20240822095612.216214-5-soumyadeep.hore@intel.com> Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20240822095612.216214-5-soumyadeep.hore@intel.com> X-ClientProxiedBy: DUZPR01CA0059.eurprd01.prod.exchangelabs.com (2603:10a6:10:469::13) To DS0PR11MB7309.namprd11.prod.outlook.com (2603:10b6:8:13e::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS0PR11MB7309:EE_|DS7PR11MB7885:EE_ X-MS-Office365-Filtering-Correlation-Id: bd2c2750-1202-473f-263b-08dcc2b89241 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?/E//pOraa2JgknSWDaa58AKUSa93NSAHJ2RtBEuZMMGDKyACVjCuQ5w2nzsx?= =?us-ascii?Q?AtnqEYtjiUSd0Y0hrXeDVzdYH+/70rUz+mEc32rXF0FtdGOXEezabuiBdui8?= =?us-ascii?Q?EJlbX3LwOcUQvhf6voby+ALeiJSO2kKBQVmbPQczDNMKK/YpHCdk2vd9aGFQ?= =?us-ascii?Q?7bh43iMH1MWcTRL7XkNooc19YrVn5NB7/ps4ZVSw+i+m3dlR1UQQlZEHvwVx?= =?us-ascii?Q?GXZpTsYnVvSGHAui9o7xnE6Aio3/n/fjzOexA3aMQCb/tpAq6MlpBIYAlmBy?= =?us-ascii?Q?ooZfh0Tdrdukj9iq6DzC/QEup4/QEELTvDicCPZlug1AcSJLeU/zN5Pg5qOv?= =?us-ascii?Q?/AGwPKqLNm5t19mlLfivjdSxzlfqgTg+VeM5jiASFEzu543jQ0hx/aIypxSb?= =?us-ascii?Q?m38DZjWAUUtaC5vHBNiENGbNhvWsbXI60+Fi4EuI5Tjj4+TTo0moj8RsGc4m?= =?us-ascii?Q?NKTjWbwGROQ3uuLDIqQapIwT/FDsbO5me7Ox5PBhy+7gpKmxLMgwlY7I4KPN?= =?us-ascii?Q?FL7WFi8216JXscniGlSHtMTL6yxGp67Buh7p3IvUHQmQPaa4hFtQZwC4U0ge?= =?us-ascii?Q?R71Nihvq3rTacMSiePzwNtGFRDTRPJX8Lg84J8L5x9mXKdtE+9DE8Mbl9DW9?= =?us-ascii?Q?bt3HWORRb2i3IukHpuc5ALRcKSCia9t4ZKJDNFlf4s90YkjeYDrOjka0huKn?= =?us-ascii?Q?44pt7I0d3DSgA14WObRwIJAGpEKxXhWjCnVfJKg6uTBEgbBmsH1rjGbDTy8z?= =?us-ascii?Q?wrbs+Y5L3eBQncatY3Bb67ZnZXRGxn2MhBD3SXRixbJnEK4qr6SKUxwnXhkd?= =?us-ascii?Q?fmazDg0H5Ul9rk9evCeyMLeIZUskEBUJjYJdHn+iPmeOCSZi7l1rqGueZ/aK?= =?us-ascii?Q?L0u3nVVXHH94H0zt0jeIU8YkwA6v2MI6TnLJ7lJ5bj+tI0wZlt5BxT6413oA?= =?us-ascii?Q?cw7583K/cI7woHUSCCX10TNMYRFYtO5cenNKCpwLM7Xwl5jOZNLI1Kjx1I/x?= =?us-ascii?Q?PrELZ1Eqwn+aKDmKs+vCf4mkoY2vlUdxxDh+W3iBq8Ou0SwGCuLblPdvTj9F?= =?us-ascii?Q?fX6dRdPQKHRhylujvk8kJfLChmGUeg8JKIz2ad+8Yr+6G7THG4IOiKC844Y+?= =?us-ascii?Q?FGXhW/SDYcUwkF1/m5aEAfwQ5n1bnZBDZmSei/1nGc5pYdn/k0QLwORgZWqI?= =?us-ascii?Q?cPKS9+LU7lvO8aHk1SQgD3PWihFqSIokux8DwT5zI6UpDrSZqlgvSW5T4pwg?= =?us-ascii?Q?6hiB4j1uSl7eEWwqCLxO4QuG/yYXgQsQuGveWHyI0X+LYgvWWlcXgUtHnFgF?= =?us-ascii?Q?A7FSYZX2xuhvN+xlIIBpVc1GtS4Wxl5InuPDC1Xy76TIiw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS0PR11MB7309.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6fMOTz6WWeoFwSnmR/NQ3iELikQ8lD71L76PbM06h90QLDABUz5Grj9NTqYB?= =?us-ascii?Q?RyDOArVOdbtBGjfczDGtjMcSWFMDbT3HvnkEVoTLV5pfm3/PUUGOWhUvfOul?= =?us-ascii?Q?BOxj0lvkuiOIZvM4iyZaR4osdptaR6rhnix5qnwY3Gs0iF67MTW3BFfjTaBK?= =?us-ascii?Q?qyFI/rgS58Spe6dB6nY0qJPLZ9dudh2XGdj0KE/E9jwZqNBhXzFZyuA3efOJ?= =?us-ascii?Q?uBNeiDALRig/GmuHRDKXd+83OedSgNZJDFVsSZiSPBNuz5xgAwzO1X3yJpmb?= =?us-ascii?Q?RwuG1GL2NrdTEF+gdTREY4T194GSw6G2ZSjwqHj+5NuGTdTjO5MJT5TzTnpr?= =?us-ascii?Q?DmkN5owcG+iwUj82VXjZLLRoVgHnz7B8fxm92HJAdbOlMNPAudGslMr9+Ntp?= =?us-ascii?Q?SLNTbiJJtjUdEy1DG0c8p3XTFkfFY7RIKLkPNATsS4Di/Bws1vc1zYUt8nIx?= =?us-ascii?Q?7R5cE+X4P0Elh6Z1CGh0akKkYrOf5URr56TJ0WHADY/xByvQ+29LcR+0oqU7?= =?us-ascii?Q?38SUq8CHY+mHwHmEzu2PIzS/MLmjjFFXcJHiozbifO+8m+GxRsOXjpoX92SQ?= =?us-ascii?Q?yiPWy1H1ctB8FBcC4AgPw927ZvUI1d13GUMCI/l1fK1EyuzuB6N2rq6TIHrt?= =?us-ascii?Q?P+SWg12mnB+0KhQ0edfWqp48RNejNPf2lbsNMfbZ5QG0Hpt7+OyyWg5PKg8c?= =?us-ascii?Q?4PbWX28Z7/nGSzThClpGh48Zd7e7lsTbWfsWlYJ5uolTiJ1WHzrMhaoMkBES?= =?us-ascii?Q?g8/fR2sCez/tiCbWijSRgye5u7TxLl3dFDIbUlG0U5qMQ1faHoiGmdnQUxUD?= =?us-ascii?Q?eEdEPl/r2z25G1jkin+ySZoaTjMpMvxkh+JYOc58Mab7ID11fDtFnJJltgZD?= =?us-ascii?Q?GMnT6/E66rXjTLxywkvwtv4ykJao9CB+ipzRxb9w86W4FSer08zXXnVCXtIZ?= =?us-ascii?Q?zK3WIUM/2XQs8QFOYWbZ2vC1eCPU+wFIr97kf56Eta8AdZUfGx4K85qOqNHQ?= =?us-ascii?Q?8TOLAo0EJqmUicYaoKXONRXYOsXF4PDEFg57rgjhgNorZv6NAnnDWt3ATLtu?= =?us-ascii?Q?DtimmVX1fhQ8TsH7d7CJAib8arDccANOf8BQaa3rfo4p+F/xVzPHlB1tAmhO?= =?us-ascii?Q?hMNpJ0hfdLzNsFLQ6gd34iC0nhEB+PGju2MtyQlwfRpcPIR3HqMnEOu18nV+?= =?us-ascii?Q?uJspKv1NDpyrYdrKVnJ44+QIrCx8KcFqzhAlsuh/7881aldb8z4cNWFsJYEt?= =?us-ascii?Q?CfSlNVpvkswyvHmRzY/1Gh0LOLZn3egAiH0rpD+99vY10msAxob8aUPekxlm?= =?us-ascii?Q?9m/BtD+6B292wwaQMddPngMqcv9oQ/rtSPcxcFihMfnNU+hbRq22zlaQwQHU?= =?us-ascii?Q?+E6tuZzoI7oDVQbb38uku2+KkthYnokb+ZXuZbj6/wbuYKNS7Ojv2Qk8gnGx?= =?us-ascii?Q?b/yLh1o5GWvUm+pbO1rArKmZ3+9AtBA6QbUI5dRwdfq1dWwF2O9kW6MewxEH?= =?us-ascii?Q?j98PgDAIpxNbsSNVfMRyZLMA69HBQpOx1XD8gMC8e9joaQqEQdKa558H0nnU?= =?us-ascii?Q?3A9gSXL6pECeh+/vhO+zVdzjkz8IMhrjjLp3gzzsmYdF8OiPjhl/t9yUOpZu?= =?us-ascii?Q?EQ=3D=3D?= X-MS-Exchange-CrossTenant-Network-Message-Id: bd2c2750-1202-473f-263b-08dcc2b89241 X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB7309.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Aug 2024 14:41:56.5238 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: mivo1mKESVfnJMkidaYzgffItOubTNwb1LJ6ic5CO5VqfCDPvruzwD9YYeNhA7NLqxP+ConarKNmeaFEncagF40gK4HGoCKy0iVllW7GuFk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR11MB7885 X-OriginatorOrg: intel.com 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 On Thu, Aug 22, 2024 at 09:56:04AM +0000, Soumyadeep Hore wrote: > The ice_get_pfa_module_tlv() function iterates over the Preserved Fields > Area to read data from the Shadow RAM, including the Part Board Assembly > data, among others. > > If the specific TLV being requested is not found in the current NVM, the > code will read past the end of the PFA, misinterpreting the last word of > the PFA and the word just after the PFA as another TLV. This typically > results in one extra iteration before the length check of the while loop is > triggered. > > Signed-off-by: Soumyadeep Hore > --- This looks like a bug fix, so needs a fixes tag in V2. /Bruce > drivers/net/ice/base/ice_nvm.c | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/ice/base/ice_nvm.c b/drivers/net/ice/base/ice_nvm.c > index 5e982de4b5..0124cef04c 100644 > --- a/drivers/net/ice/base/ice_nvm.c > +++ b/drivers/net/ice/base/ice_nvm.c > @@ -498,11 +498,16 @@ ice_get_pfa_module_tlv(struct ice_hw *hw, u16 *module_tlv, u16 *module_tlv_len, > ice_debug(hw, ICE_DBG_INIT, "Failed to read PFA length.\n"); > return status; > } > - /* Starting with first TLV after PFA length, iterate through the list > + /* The Preserved Fields Area contains a sequence of TLVs which define > + * its contents. The PFA length includes all of the TLVs, plus its > + * initial length word itself, *and* one final word at the end of all > + * of the TLVs. > + * > + * Starting with first TLV after PFA length, iterate through the list > * of TLVs to find the requested one. > */ > next_tlv = pfa_ptr + 1; > - while (next_tlv < ((u32)pfa_ptr + pfa_len)) { > + while (next_tlv < ((u32)pfa_ptr + pfa_len - 1)) { > u16 tlv_sub_module_type; > u16 tlv_len; > > -- > 2.43.0 >