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 CD4F6470AE for ; Sun, 21 Dec 2025 16:03:21 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C6CD94025F; Sun, 21 Dec 2025 16:03:21 +0100 (CET) Received: from BL2PR02CU003.outbound.protection.outlook.com (mail-eastusazon11011069.outbound.protection.outlook.com [52.101.52.69]) by mails.dpdk.org (Postfix) with ESMTP id 74C7240648 for ; Sun, 21 Dec 2025 16:03:20 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ZJeOqU/ovcLq0WyQX90QSqlkDbWAuR1IG/zL09yyEHqYmRIaZJkGhh5q028fwUODP07/WSOrD3visMLF1tphVcYzywsUkmyLifW3z5Eo5YetdsvSdySIJO7d+nnRUekpNp2dPB7Uqi0sHoZqLNo0un9YZdmTI+B5/ynKJcIJF4bC2KNSUN/LizJb9C7bk/YUp1OSRwMt3wZ0aDbHejT2Q7z4CotMe+OzJJ+lk+ZwODTx84svDpJOZNOLgarloQHr9FbqG+QbCNq0qSQ3A5aDwad8RwGFz5dhpyeQew1LWE4b6DrpC0vOsBJovpXL0aSt01n7qdot3VY3lyPZKBQ3RA== 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=EMFK4cjNCe3fTkkCIa5+CAwKvknu1Z8SZPyU4FtW1yY=; b=JOYxyE6g03DRdAozB6KGnzgkc9mVTW2KXRToFAuGeLWLZzmNlBi4kA6Ei1PObWo6GvyvdEYuAVt2zEzRDLeBe7dNjA79Nb+r8LzMsQ+icqQ0xX4J4M1L9o7GV4BgyDhS79Vjb4/0Sd3dW5eczW3xHL76hFlxjrWi6ukygf9XDGPkw3DtBq/N+L0NUhk1Q7j0IrWSwvPcGtRNbIRadhUVldIhyrukO0TxrYnM+n05T/fVV95g/0reYwWkqXO2QOFj7ie5rUYzJSMXEohRFv26DQTiippm8FuijFMshP7CDa3VsAj677y6A9sHDp2Kc9ygo2IDNNkJZQ6AcPez5scWIg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.233) smtp.rcpttodomain=intel.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EMFK4cjNCe3fTkkCIa5+CAwKvknu1Z8SZPyU4FtW1yY=; b=Au/R2RW7P9tRKxtga0YfDUrvX+hlq1naux+TkL4b4GZPaEfA42K5q8TJKFGrA8qfHb79GszsRCHKGH6wHXogKdt5sY8cABpYri2cZeht7vBb8HuoCmZisRRkXkm7xJ6sw8oDWAzQbjvVnZa8YiYXa2k+b9PgUH1x4a8z2rq1RtDrJ+M05ud5z0z1SCcmpUVD3hGOGJ6ot4ofKP+ikuGh+h1Hlt0ShL5iLSgVquRCY8iU74suRMKtBUI/TE78U2TV7HC+ozx/o8qNhEGrA87XrvnQnu7yV/elocnx1SDgLg7KnzQfka2B0WBeVAfSQLBmF0wKzaunfB9p0hcf04qjmw== Received: from SJ0PR05CA0034.namprd05.prod.outlook.com (2603:10b6:a03:33f::9) by DS0PR12MB6534.namprd12.prod.outlook.com (2603:10b6:8:c1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.10; Sun, 21 Dec 2025 15:03:14 +0000 Received: from SJ1PEPF00001CE3.namprd05.prod.outlook.com (2603:10b6:a03:33f:cafe::e9) by SJ0PR05CA0034.outlook.office365.com (2603:10b6:a03:33f::9) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9456.9 via Frontend Transport; Sun, 21 Dec 2025 15:03:13 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.233) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.118.233 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.233; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.233) by SJ1PEPF00001CE3.mail.protection.outlook.com (10.167.242.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9456.9 via Frontend Transport; Sun, 21 Dec 2025 15:03:13 +0000 Received: from drhqmail201.nvidia.com (10.126.190.180) by mail.nvidia.com (10.127.129.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Sun, 21 Dec 2025 07:03:05 -0800 Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail201.nvidia.com (10.126.190.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Sun, 21 Dec 2025 07:03:05 -0800 Received: from nvidia.com (10.127.8.12) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20 via Frontend Transport; Sun, 21 Dec 2025 07:03:04 -0800 From: Shani Peretz To: Anatoly Burakov CC: Bruce Richardson , dpdk stable Subject: patch 'net/ice: fix memory leak in raw pattern parse' has been queued to stable release 23.11.6 Date: Sun, 21 Dec 2025 16:56:53 +0200 Message-ID: <20251221145746.763179-65-shperetz@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251221145746.763179-1-shperetz@nvidia.com> References: <20251221145746.763179-1-shperetz@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ1PEPF00001CE3:EE_|DS0PR12MB6534:EE_ X-MS-Office365-Filtering-Correlation-Id: 022afbfd-2390-40fc-170f-08de40a21085 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|36860700013|376014|82310400026|1800799024|7053199007|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?MWVDPVc63Lx1ZBhVOmxR4orRGLx7+ohigK2VXrEnTZ8x3nT5brza+xAl2vXq?= =?us-ascii?Q?bkETO0YcNxZEWmkyZ8QWho7Qe8uuhmaYwfVWkhrDwj/7J+DZ6DKRChJGCjwb?= =?us-ascii?Q?IlacvpZLf9DkJbF4TLACG3NEp9wLVlrb0aEu0hGuK55feEj+gAXdFF1Db13r?= =?us-ascii?Q?uyBz1BlasmJCcS/oNxF9pqg7vBpi3m38iPYfXFiuFAT7oxbDIrAs7yaSCnc4?= =?us-ascii?Q?AxUFOWIX1Yry+mRM7Hh797uOqTS1H7D54cFzPeIyMrn4519IZZ4e0+bsnPQG?= =?us-ascii?Q?BSqwOkLl6KltmCsz2VM0v3marXCjJcCEQJ7L2r1I2sRcagV/W5hgay+CvjSf?= =?us-ascii?Q?Rksf2CaSPVy9HUk38gfqpppWGAFjrLc+pxnzg/3GRihlQchM3XtN7bhfgkIE?= =?us-ascii?Q?pwUUmKOT6tdl/7kQZFlVY9vUqHW+PxyiY5aFwM9t2N7E+ul5HfKrgNJseChe?= =?us-ascii?Q?93iRrg2tpmVQu1qQrftJfLjSDEf1F3cxydzbk/gQ/W6ndXTB8wySNyMgADCZ?= =?us-ascii?Q?zgvAi4zoA3D23QsfExxr2HkMpLKeCDNELW52WnUOJeHxpXPMGDNalyjyUroE?= =?us-ascii?Q?FkikgMCDocKIIzMt2RMf1oVTWzJbZ1ih3DJ81evg95rCJZSgDV5fOXtkB1Y/?= =?us-ascii?Q?gdBoVLL+ipDzZViWuUShwFHYOGtN/+0URaNF3oSBFw9w/f7jakijMyfwCB46?= =?us-ascii?Q?QxOY9q2vI0p4DjgNP6Ycpqe4WShAGtnYFvGJak1k0tM8pkHMl1g7iWPKl8A4?= =?us-ascii?Q?dv927vOzeO7GITdj5NGWaQZtOMWtukhB+O/LCVhyzFb5e05+kJTEbu7OiUR2?= =?us-ascii?Q?DCK+HpSpGQ2KphmqHrfxHwdSwLZSIEd21j0vbTx4fQn6viUqgPayVIFpXtSC?= =?us-ascii?Q?v4C3VkO9qf98WZ6AxvlrDFwkau9PZvQ0V9P0oZqTr0baI69Jw5pikiCi5VzH?= =?us-ascii?Q?a7ga0raAI0sjNwO26QePqXsG8gqyzMaBK1W63t/agw6MPogfO0b7KDIuAyCX?= =?us-ascii?Q?8hdGBRwubPNn4MS8aaFJRPVQc3BP/IyA7XazeaVK9fr13dwsDEHzaKMgzhGQ?= =?us-ascii?Q?RVrmSA4sXCZR5M5cky6Ru3CchDDjHKsu1IGgmMsz4xI0tR8cahs/ALl0PBJV?= =?us-ascii?Q?mJqw30qQZS1eCgcmgc7QzVM0qnIUFgPj94bKaZgdAWZCzLaUxj9NwIwkGPds?= =?us-ascii?Q?VeNXREat0Lw3gjyZaA3fyYX19XNMmlRjx5cHRtCG5A4iijya0S0WXYJVVUu8?= =?us-ascii?Q?yxRupWNylG/ZZoJwaqPMR4vIFvn20J0ulZ9qkwrPvUw+TOR7qHDwd2MQ6/Sx?= =?us-ascii?Q?8Ta5wbvCmm5B0rbrOeSCl50b0pOiKJ0/J6CB1uTDei4Y5Tvi9Uo7PCBjl0P2?= =?us-ascii?Q?aCbqZxCGQ1n/T0kj4+7TukttoI/i6nTaRodo0JHGnTM0tJbJfyWm+xFG3p60?= =?us-ascii?Q?6rirRFm547GliVs0J7evtPAPuCW6aJjxvN5Qg8psor63PTOe5ScD6tEzQs/C?= =?us-ascii?Q?uGMb5KCLI/FrjxcM7c0YkHjtW1/1afDIipvu6FjcgAblBWV7rQAT01im9bt5?= =?us-ascii?Q?vN9udl/rtwqPDAMzCLKj0TaP4/WsTW0p1OcsC/bB?= X-Forefront-Antispam-Report: CIP:216.228.118.233; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc7edge2.nvidia.com; CAT:NONE; SFS:(13230040)(36860700013)(376014)(82310400026)(1800799024)(7053199007)(13003099007); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Dec 2025 15:03:13.9053 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 022afbfd-2390-40fc-170f-08de40a21085 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.118.233]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SJ1PEPF00001CE3.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6534 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 Hi, FYI, your patch has been queued to stable release 23.11.6 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 12/26/25. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/shanipr/dpdk-stable This queued commit can be viewed at: https://github.com/shanipr/dpdk-stable/commit/c19bf0a9689460d7951d53f09f836ef8f1128914 Thanks. Shani --- >From c19bf0a9689460d7951d53f09f836ef8f1128914 Mon Sep 17 00:00:00 2001 From: Anatoly Burakov Date: Fri, 10 Oct 2025 14:13:20 +0100 Subject: [PATCH] net/ice: fix memory leak in raw pattern parse [ upstream commit 3938eeec989181216ea3f9cc8eee931a2915ca5d ] Currently, when parsing rte_flow raw type items, we allocate some internal structures, but if errors happen down the line we just quit and never free the memory we just allocated. Fix this by adding an error cleanup section. Fixes: 848de9572c83 ("net/ice: fix raw flow input pattern parsing") Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson --- drivers/net/ice/ice_fdir_filter.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c index 2320d49d4f..0445c5b480 100644 --- a/drivers/net/ice/ice_fdir_filter.c +++ b/drivers/net/ice/ice_fdir_filter.c @@ -1858,7 +1858,7 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, uint16_t tmp_val = 0; uint16_t pkt_len = 0; uint8_t tmp = 0; - int i, j; + int i, j, ret_val; pkt_len = strlen((char *)(uintptr_t)raw_spec->pattern); if (strlen((char *)(uintptr_t)raw_mask->pattern) != @@ -1913,19 +1913,22 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, pkt_len /= 2; - if (ice_parser_run(ad->psr, tmp_spec, pkt_len, &rslt)) - return -rte_errno; - - if (!tmp_mask) - return -rte_errno; + if (ice_parser_run(ad->psr, tmp_spec, pkt_len, &rslt)) { + ret_val = -rte_errno; + goto raw_error; + } if (ice_parser_profile_init(&rslt, tmp_spec, tmp_mask, - pkt_len, ICE_BLK_FD, true, &filter->prof)) - return -rte_errno; + pkt_len, ICE_BLK_FD, true, &filter->prof)) { + ret_val = -rte_errno; + goto raw_error; + } u8 *pkt_buf = (u8 *)ice_malloc(&ad->hw, pkt_len + 1); - if (!pkt_buf) - return -ENOMEM; + if (!pkt_buf) { + ret_val = -ENOMEM; + goto raw_error; + } rte_memcpy(pkt_buf, tmp_spec, pkt_len); filter->pkt_buf = pkt_buf; @@ -1936,6 +1939,11 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, rte_free(tmp_spec); rte_free(tmp_mask); break; + +raw_error: + rte_free(tmp_spec); + rte_free(tmp_mask); + return ret_val; } case RTE_FLOW_ITEM_TYPE_ETH: -- 2.43.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-12-21 16:54:20.473149189 +0200 +++ 0065-net-ice-fix-memory-leak-in-raw-pattern-parse.patch 2025-12-21 16:54:17.194097000 +0200 @@ -1 +1 @@ -From 3938eeec989181216ea3f9cc8eee931a2915ca5d Mon Sep 17 00:00:00 2001 +From c19bf0a9689460d7951d53f09f836ef8f1128914 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 3938eeec989181216ea3f9cc8eee931a2915ca5d ] + @@ -12 +13,0 @@ -Cc: stable@dpdk.org @@ -17 +18 @@ - drivers/net/intel/ice/ice_fdir_filter.c | 28 ++++++++++++++++--------- + drivers/net/ice/ice_fdir_filter.c | 28 ++++++++++++++++++---------- @@ -20,5 +21,5 @@ -diff --git a/drivers/net/intel/ice/ice_fdir_filter.c b/drivers/net/intel/ice/ice_fdir_filter.c -index d593624792..9dfe5c02cb 100644 ---- a/drivers/net/intel/ice/ice_fdir_filter.c -+++ b/drivers/net/intel/ice/ice_fdir_filter.c -@@ -1865,7 +1865,7 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, +diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c +index 2320d49d4f..0445c5b480 100644 +--- a/drivers/net/ice/ice_fdir_filter.c ++++ b/drivers/net/ice/ice_fdir_filter.c +@@ -1858,7 +1858,7 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, @@ -33 +34 @@ -@@ -1920,19 +1920,22 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, +@@ -1913,19 +1913,22 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, @@ -65 +66 @@ -@@ -1943,6 +1946,11 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, +@@ -1936,6 +1939,11 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,