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 536EB457A1 for ; Mon, 12 Aug 2024 14:59:01 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4B7A0402C3; Mon, 12 Aug 2024 14:59:01 +0200 (CEST) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2053.outbound.protection.outlook.com [40.107.92.53]) by mails.dpdk.org (Postfix) with ESMTP id 1AFA74029C for ; Mon, 12 Aug 2024 14:58:59 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KQhCC2MgINmRx0dwkdlioe8jfJ+Wa3jugjP41FiDlAbbLeTafb3v1SoEeqHytAtPV0bK1IswdMgrzMZljuBRxZQDyihej2wbndklzKKVrKVCpuEQw1+eWWhFHmsIbItp/GLxUHRTxEg912BqOYhxgLwkz1SKbz/rLBlvkzxpFHm1jvCDc64ltbkQe+s5x3C4wKhhYzizr61FMmHO6aDCv5bFBKWvf7NykAlZvH46uZ35WjJVLDRzJkUgNxEoFNFAoHmGZJeJNracIlVcKeHNnBfTaoBjjudii0tX7cLkHqfFFvcoy9YEJ50aKJDUM6/II+XsK/w9bmUMJk3hvxS7VQ== 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=JQdR8HaG2CZUyyNAVHo0a98FzUmxaWfyNl5sflqy5Rs=; b=F61wiT6/3+Eaie+sXABRKM3LWrcj6Uvevfy9tfSVBp04aa9koEmd+X0n1QSLyaAhH51FmlCR3ipLsNd4FnUyw8bbxLFWehgjaEZC7SkAuz13KLqG/4eG2oJa/4D7Q0oMiHZ9V8RbJ9GfI10Nae4mAufBabsDm8CyZyAYWJJUhJR8jd+pvTHYnj7VQ7b4LDmO8Qb7CMVDedRNHtu6Bi+QXiXBaTBxGaWQfVjxn1WBzI0vQxR42vDTr0XPVCTpQK/qBiiRgueOCwTvOGLMv6Dl7su3RCiXnMM4+XahWjT2oQLCowe8EjHyyNtipYcBNqZIY8r0dwgBAU2iGJVhHSK/1A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=trustnetic.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=JQdR8HaG2CZUyyNAVHo0a98FzUmxaWfyNl5sflqy5Rs=; b=XcEpKziuJpnDNorFIHkRHAPqcmkYYkS8DKj6tyb9Ffv/VOwe/vlvG7Dgi9YH3+RAbJ0faZTXAGeOHxyxQSynaZkAg8qozokxM7fun1kJTZXaZNBYZQVjxta32xA7AqxRZ50JClmqiBUhUy3l4oguX9VCXEba/HdVUODH8eHcLDuqJTKWsx/yaosDeaR4jrtWwwZUL6qkJCxjLDx3B0HnwLAPJFxNGrCUhV7KOxWae0hhghFqxhqClKG4gp3Szr36tfpa6l8f+A+uTLh9FfCNxl7NuNl4kH5KN1jI607pK2JGICMVmQvN0p/R1ZPj4sKaCF/Cy5zw7YLxVgjmY7T6gw== Received: from SJ0PR13CA0026.namprd13.prod.outlook.com (2603:10b6:a03:2c0::31) by IA1PR12MB6308.namprd12.prod.outlook.com (2603:10b6:208:3e4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7849.15; Mon, 12 Aug 2024 12:58:52 +0000 Received: from CO1PEPF000042AA.namprd03.prod.outlook.com (2603:10b6:a03:2c0:cafe::20) by SJ0PR13CA0026.outlook.office365.com (2603:10b6:a03:2c0::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7849.22 via Frontend Transport; Mon, 12 Aug 2024 12:58:52 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) 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.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by CO1PEPF000042AA.mail.protection.outlook.com (10.167.243.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.19 via Frontend Transport; Mon, 12 Aug 2024 12:58:51 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 12 Aug 2024 05:58:33 -0700 Received: from nvidia.com (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 12 Aug 2024 05:58:31 -0700 From: Xueming Li To: Jiawen Wu CC: , dpdk stable Subject: patch 'net/ngbe: fix memory leaks' has been queued to stable release 23.11.2 Date: Mon, 12 Aug 2024 20:49:20 +0800 Message-ID: <20240812125035.389667-84-xuemingl@nvidia.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240812125035.389667-1-xuemingl@nvidia.com> References: <20240712110153.309690-23-xuemingl@nvidia.com> <20240812125035.389667-1-xuemingl@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000042AA:EE_|IA1PR12MB6308:EE_ X-MS-Office365-Filtering-Correlation-Id: 01dcf28f-fc4d-4538-4ec6-08dcbace83ff X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|36860700013|376014|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Rw7d3ahBgdWOeYXy8IdP7dbt6AIvaQs46KNhyUo9J/DGxm1r671zpk2Ofl/q?= =?us-ascii?Q?OcSNwxm/6thIcX5tBcRJmqlrrJ2i5nqAVZKMZlW/R8xA1XVIdIF4ZYwPvenb?= =?us-ascii?Q?PPrq6HfYsz08B4i8S4I2h+LEl0XnadG0YCU6AYhvDW1+c1vOR/0QA8Alwsnv?= =?us-ascii?Q?PlKObUFfS0Q9ca60sogfBkp952s1pALsBzkAvqW1JpxsdRCP/wt/u+Q5uP2Q?= =?us-ascii?Q?McB2+2qbOJaG05OxDxMbIkvZmjRpiyPvJjwZXqEbbkTT/FhBPntX9WacvGh5?= =?us-ascii?Q?IMTgmTiBXRis1jCkjyFWsWTn/TJ6KxXME5mfv1kVu+tmKunPFTkr3N5cpur3?= =?us-ascii?Q?vcmFIeUgB4zXK9REOsLZ7PkvgKl+7za2tYwAUvMUINfdrcq/teHMwRqDkASk?= =?us-ascii?Q?d3f2Irqt97LNSB+3uxCb7sNs/w7GWieK9iBiVNn8QU7BoNtQVHyZGeZcM26O?= =?us-ascii?Q?JtSvMhiVBYIKDfCPKmo/OpZsIBfFzQ3nQXEsXcWhhvlRbsoTHUBpjHOjUAXe?= =?us-ascii?Q?7znDz7YRROQiIO/oSoG3ZuK2TMsm56QM75thxd665c3L/F081iWoZrPnwF7u?= =?us-ascii?Q?G5Cb8xc+y0xSepRjhDQkRhmNZjV49c+oG5grO6S6r88m5UcliYqnnj/Q7pAu?= =?us-ascii?Q?NW/ci/MBzx6csOcllhxSo3tg9f0lXv4lEPNiaUiWyOBxui8mxu5uZe2iQ0+s?= =?us-ascii?Q?Ve6L4UJQKcO14PNAvRU16A5qzzLrDyribIYjqUxtrMQRQ7jj8wk+DPJcy8j+?= =?us-ascii?Q?2h0vIVLaFgFxEoq2uIE1R+DIsSOXs3LVObrZvSrxk8EWZvPYN4VSnaw9z3qU?= =?us-ascii?Q?BvlSQBJCtBGUS8Cj7JTqBPMxokAc6SetWKrOSDYv2YCPSUl9uZtpeY63+n+Q?= =?us-ascii?Q?TeGWDYGGNzyeaMMul5M+FqsMtzBAIJIzQjWKxM+nBRk6lYCYl0Jlbzo+6TvM?= =?us-ascii?Q?ER27cQmovH9EcpSpccE+RrLcp5Z1WCtJkhsPp9VzaSv9ZDBqLv2gDj0Ls2dJ?= =?us-ascii?Q?beOTbN8+T5TntNrWp22A4b126FAg2ADHoA2sDBpF6J+4EMPhDtc+QDEct5SV?= =?us-ascii?Q?alvwc+uGU9pL21Qzfh21qDUejG4iO1PHtOt1i2CvvF81FZmWZWRndfz3WPdV?= =?us-ascii?Q?Q+2kTtKFZvZB9G6ErV5FywOIX0Ho2g4xdlqUh0v0IpDs3bUKh2OFKRYwwhEn?= =?us-ascii?Q?dyrciufByMZAke54XRrvdqCTqKxQgcCpcmtzBIC3VgjfNdyNHJtwePRhrisY?= =?us-ascii?Q?/GlfeqVeq72Ki0kyUYSSA69R8k1jcWS56EuYKfsDfZq4jYChc77SlVnPEmEG?= =?us-ascii?Q?jtSIgyxyQR93sXBQhIDRj0TrWFxt9wUBGhVv1LEsNsaS3gGoSq5RTmctEtbA?= =?us-ascii?Q?KHZY+1J6H3EQMk67V0HGxWnEiUczGNPLlCWg0VrfF6kWyjbNX5quBuO8Q+Vd?= =?us-ascii?Q?3rn8Ab3kJCubO5m/+95TH/NgWOqC5SOI?= X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230040)(36860700013)(376014)(82310400026)(1800799024); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Aug 2024 12:58:51.8469 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 01dcf28f-fc4d-4538-4ec6-08dcbace83ff X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000042AA.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6308 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.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 08/14/24. 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://git.dpdk.org/dpdk-stable/log/?h=23.11-staging This queued commit can be viewed at: https://git.dpdk.org/dpdk-stable/commit/?h=23.11-staging&id=2dfb54ff33bccc083f78f7a2ed47fc862ec750e1 Thanks. Xueming Li --- >From 2dfb54ff33bccc083f78f7a2ed47fc862ec750e1 Mon Sep 17 00:00:00 2001 From: Jiawen Wu Date: Tue, 18 Jun 2024 15:11:46 +0800 Subject: [PATCH] net/ngbe: fix memory leaks Cc: Xueming Li [ upstream commit fea7422f7a4ec2b4c406865629b5ebea699f6588 ] Fix some memory leaks caused by not release resource in time. Fixes: 43b7e5ea60ac ("net/ngbe: support Rx queue setup/release") Fixes: a58e7c312c6b ("net/ngbe: support Tx queue setup/release") Signed-off-by: Jiawen Wu --- drivers/net/ngbe/ngbe_rxtx.c | 5 +++++ drivers/net/ngbe/ngbe_rxtx.h | 2 ++ 2 files changed, 7 insertions(+) diff --git a/drivers/net/ngbe/ngbe_rxtx.c b/drivers/net/ngbe/ngbe_rxtx.c index 8a873b858e..4680ff91f1 100644 --- a/drivers/net/ngbe/ngbe_rxtx.c +++ b/drivers/net/ngbe/ngbe_rxtx.c @@ -1791,6 +1791,7 @@ ngbe_tx_queue_release(struct ngbe_tx_queue *txq) if (txq->ops != NULL) { txq->ops->release_mbufs(txq); txq->ops->free_swring(txq); + rte_memzone_free(txq->mz); } rte_free(txq); } @@ -1995,6 +1996,7 @@ ngbe_dev_tx_queue_setup(struct rte_eth_dev *dev, return -ENOMEM; } + txq->mz = tz; txq->nb_tx_desc = nb_desc; txq->tx_free_thresh = tx_free_thresh; txq->pthresh = tx_conf->tx_thresh.pthresh; @@ -2097,6 +2099,7 @@ ngbe_rx_queue_release(struct ngbe_rx_queue *rxq) ngbe_rx_queue_release_mbufs(rxq); rte_free(rxq->sw_ring); rte_free(rxq->sw_sc_ring); + rte_memzone_free(rxq->mz); rte_free(rxq); } } @@ -2187,6 +2190,7 @@ ngbe_reset_rx_queue(struct ngbe_adapter *adapter, struct ngbe_rx_queue *rxq) rxq->rx_free_trigger = (uint16_t)(rxq->rx_free_thresh - 1); rxq->rx_tail = 0; rxq->nb_rx_hold = 0; + rte_pktmbuf_free(rxq->pkt_first_seg); rxq->pkt_first_seg = NULL; rxq->pkt_last_seg = NULL; } @@ -2277,6 +2281,7 @@ ngbe_dev_rx_queue_setup(struct rte_eth_dev *dev, return -ENOMEM; } + rxq->mz = rz; /* * Zero init all the descriptors in the ring. */ diff --git a/drivers/net/ngbe/ngbe_rxtx.h b/drivers/net/ngbe/ngbe_rxtx.h index 9130f9d0df..2914b9a756 100644 --- a/drivers/net/ngbe/ngbe_rxtx.h +++ b/drivers/net/ngbe/ngbe_rxtx.h @@ -276,6 +276,7 @@ struct ngbe_rx_queue { struct rte_mbuf fake_mbuf; /** hold packets to return to application */ struct rte_mbuf *rx_stage[RTE_PMD_NGBE_RX_MAX_BURST * 2]; + const struct rte_memzone *mz; }; /** @@ -353,6 +354,7 @@ struct ngbe_tx_queue { uint8_t tx_deferred_start; /**< not in global dev start */ const struct ngbe_txq_ops *ops; /**< txq ops */ + const struct rte_memzone *mz; }; struct ngbe_txq_ops { -- 2.34.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2024-08-12 20:44:05.260509581 +0800 +++ 0083-net-ngbe-fix-memory-leaks.patch 2024-08-12 20:44:02.295069334 +0800 @@ -1 +1 @@ -From fea7422f7a4ec2b4c406865629b5ebea699f6588 Mon Sep 17 00:00:00 2001 +From 2dfb54ff33bccc083f78f7a2ed47fc862ec750e1 Mon Sep 17 00:00:00 2001 @@ -4,0 +5,3 @@ +Cc: Xueming Li + +[ upstream commit fea7422f7a4ec2b4c406865629b5ebea699f6588 ] @@ -10 +12,0 @@ -Cc: stable@dpdk.org @@ -19 +21 @@ -index c54c67f7ee..f3eb797d0c 100644 +index 8a873b858e..4680ff91f1 100644 @@ -22 +24 @@ -@@ -1813,6 +1813,7 @@ ngbe_tx_queue_release(struct ngbe_tx_queue *txq) +@@ -1791,6 +1791,7 @@ ngbe_tx_queue_release(struct ngbe_tx_queue *txq) @@ -30 +32 @@ -@@ -2030,6 +2031,7 @@ ngbe_dev_tx_queue_setup(struct rte_eth_dev *dev, +@@ -1995,6 +1996,7 @@ ngbe_dev_tx_queue_setup(struct rte_eth_dev *dev, @@ -38 +40 @@ -@@ -2138,6 +2140,7 @@ ngbe_rx_queue_release(struct ngbe_rx_queue *rxq) +@@ -2097,6 +2099,7 @@ ngbe_rx_queue_release(struct ngbe_rx_queue *rxq) @@ -46 +48 @@ -@@ -2228,6 +2231,7 @@ ngbe_reset_rx_queue(struct ngbe_adapter *adapter, struct ngbe_rx_queue *rxq) +@@ -2187,6 +2190,7 @@ ngbe_reset_rx_queue(struct ngbe_adapter *adapter, struct ngbe_rx_queue *rxq) @@ -53,2 +55,2 @@ - -@@ -2323,6 +2327,7 @@ ngbe_dev_rx_queue_setup(struct rte_eth_dev *dev, + } +@@ -2277,6 +2281,7 @@ ngbe_dev_rx_queue_setup(struct rte_eth_dev *dev, @@ -63 +65 @@ -index 41580ba0b9..7574db32d8 100644 +index 9130f9d0df..2914b9a756 100644 @@ -66 +68 @@ -@@ -291,6 +291,7 @@ struct ngbe_rx_queue { +@@ -276,6 +276,7 @@ struct ngbe_rx_queue { @@ -74 +76 @@ -@@ -373,6 +374,7 @@ struct ngbe_tx_queue { +@@ -353,6 +354,7 @@ struct ngbe_tx_queue {