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 DEED143877; Tue, 9 Jan 2024 18:48:25 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C86484021F; Tue, 9 Jan 2024 18:48:25 +0100 (CET) Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2070.outbound.protection.outlook.com [40.107.212.70]) by mails.dpdk.org (Postfix) with ESMTP id 35EF04013F; Tue, 9 Jan 2024 18:48:24 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XYMB3uyOUe6+U5U/3SIOFngRmVxUixBk8q/mHnSKOfWwdE8Lk74FNDE8xkZVFTr5vdVkDC068Oq/bYI03GG3wy4b1BtNHOeSHoKD52ywNUwJeP0bs/7GPAdEgj736FjUcRItvYFkdxFpfRAm3IOSwdTATI/tj8zqVliLte0wXwHw+EsYIrsKNWO98mM0VVPncE3s1fw/8OVAsfJ0wGTk33KjfYOZ5kyW5aOE7U6Uq2SgrW7vdzxYCdniN27FTkRmzaWFlBqE741OHelSidtIAkZA6vhOeLnMRqa9BLREzv0yAeRJF8Ow2NovuB9R1cLNOu+/HveeiEnDMoqOQNTl+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=MCgpZEEsI/npOPUbnYI1nON88iOCode30MBcVi9OoIA=; b=RA5GUgBNHPVFyUbsTEWH+WRQ7s3Rst677FPdjxzGztwIUkG3xYtoGm/nuj8nfHpflLRNryYdOYmvvxQOTO51z4Bca7+UwFIt8uOA0QeOMum5Dqhp1ftUQ2rByEr1xbFtgDPKuYsiRXxrPiWvJSJ/U0u4u0Xov7rzg0Jb2W/o9wRdGrbqR5me0OPlrUfFupnOEeylcV+RNlI3KX3NX8ynvHkJtdBIXx2hDfwTtv1Dh8TeEe/kVo7aYaCGWvxJdae0LH8THProcXJ3F3CbpPubDaaBdBpUe5o2pcev7HXpha10HEBSMIHuGgCrvOXykqcHRhMtv3VsFuUhtR732vjk0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MCgpZEEsI/npOPUbnYI1nON88iOCode30MBcVi9OoIA=; b=NO+0S5dZif0Aok1I8/P9kQrQ0MABBtGCRkXwRsfaDhuIf1verXE8smldEOcwqgDV0q61xkHF8hBR6+a8GFaE0QC/W+8V4XRh9WMHMQb7+FmuD32/1zyTxxDtSDz9idrn1M63PiAPYQZ2l/Zb6MsIsH2u+YeohvToDrDPqn0d2IM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) by DM4PR12MB5104.namprd12.prod.outlook.com (2603:10b6:5:393::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.23; Tue, 9 Jan 2024 17:48:21 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::815a:45e6:cf5e:479f]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::815a:45e6:cf5e:479f%4]) with mapi id 15.20.7159.020; Tue, 9 Jan 2024 17:48:21 +0000 Message-ID: Date: Tue, 9 Jan 2024 17:48:15 +0000 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/3] net/nfp: fix free resource problem Content-Language: en-US To: Chaoyong He , "dev@dpdk.org" Cc: oss-drivers , Long Wu , "stable@dpdk.org" , Nole Zhang References: <20231214102431.2091608-1-chaoyong.he@corigine.com> <20231214102431.2091608-3-chaoyong.he@corigine.com> <0a5a69d7-2d2e-4a0e-9d29-18ec856b5be2@amd.com> <7905a240-7457-4986-8afe-959d57462d94@amd.com> From: Ferruh Yigit Autocrypt: addr=ferruh.yigit@amd.com; keydata= xsFNBGJDD3EBEAC/M7Tk/DfQSmP1K96vyzdhfSBzlCaGtcxNXorq4fALruqVsD3oi0yfyEz9 4YN8x7py0o9EL8ZdpOX0skc0AMCDAaw033uWhCn0GLMeGRKUbfOAPvL6ecSDvGD7CJIO9j0J eZUvasBgPdM/435PEr9DmC6Ggzdzt8IuG4PoLi5jpFSfcqxZFCCxLUDEo/w0nuguk2FTuYJg B2zEZ4JTBZrw7hIHiFh8D8hr6YA6a5uTofq1tr+l048lbtdFUl8TR0aIExVzE4Z8qKZlcE+9 RQaewjK5Al1jLE4sHdmd3GN+IvgDF3D/fLsi25SKJDeGSdeHkOmaX0qGeM4WKIfU6iARRCiQ N3AmBIxZ/A7UXBKLaOyZ+/i3sE6Wb53nrO4i8+0K2Qwyh6LjTeiJAIjYKN43ppxz3DaI+QwQ vI+uyHr4Gg0Da9EPPz/YyKauSeOZCfCB5gIfICO0j6x0SCl8uQ2nLpjxcZkf0gjcwUzP3h+S 3x6NfDji9YEij0zczW/dcSpGgZ6vsFpPrtnP9ZXy6J53yp0kJtOJoOlkEFFdU2yCZnCDseum CoudmGLZVvS0/DzHDJejq+3kK3FDGktZBOxZIIpal+nFqS7lVgOZc4+huVv3jyhzoAUOEyXA XK5j6o7g8STUY+z33QNnHpdLvecMwuzmvqy0jR54yAbZ64mB9QARAQABzSNGZXJydWggWWln aXQgPGZlcnJ1aC55aWdpdEBhbWQuY29tPsLBlwQTAQgAQQIbAwULCQgHAgYVCgkICwIEFgID AQIeAQIXgAIZARYhBEm7aYjps5XGsPHCElRTPtCKKm/6BQJkdyEEBQkE3meNAAoJEFRTPtCK Km/6UdcP/0/kEp49aIUhkRnQfmKmNVpcBEs4NqceNCWTQlaXdEwL1lxf1L49dsF5Jz1yvWi3 tMtq0Mk1o68mQ7q8iZAzIeLxGQAlievMNE0BzLWPFmuX+ac98ITBqKdnUAn6ig5ezR+jxrAU 58utUszDl16eMabtCu76sINL5izB8zCWcDEUB4UqM8iBSQZ7/a7TSBVS0jVBldAORg1qfFIs cGMPQn/skhy3QqbK3u3Rhc44zRxvzrQJmhY6T1rpeniHSyGOeIYqjpbpnMU5n1VWzQ4NXvAD VDkZ4NDw6CpvF4S2h2Ds7w7GKvT6RRTddrl672IaLcaWRiqBNCPm+eKh4q5/XkOXTgUqYBVg Ors8uS9EbQC/SAcp9VHF9fB+3nadxZm4CLPe5ZDJnSmgu/ea7xjWQYR8ouo2THxqNZtkercc GOxGFxIaLcJIR/XChh9d0LKgc1FfVARTMW8UrPgINVEmVSFmAVSgVfsWIV+NSpG9/e90E4SV gMLPABn1YpJ8ca/IwqovctqDDXfxZOvCPOVWTzQe/ut767W+ctGR1kRkxWcz470SycOcY+PW VRPJd91Af0GdLFkwzZgNzkd6Gyc9XXcv4lwwqBLhWrBhqPYB0aZXIG1E/cVTiRp4dWpFHAFD DcuLldjIw93lCDsIeEDM9rBizGVMWEoeFmqSe7pzGTPXzsFNBGJDD3EBEAC8fBFQHej8qgIG CBzoIEd1cZgPIARlIhRudODXoNDbwA+zJMKtOVwol3Hh1qJ2/yZP11nZsqrP4fyUvMxrwhDe WBWFVDbWHLnqXMnKuUU1vQMujbzgq/4Rb9wSMW5vBL6YxhZng+h71JgS/9nVtzyaTtsOTrJi 6nzFSDx6Wbza2jYvL9rlK0yxJcMEiKwZQ/if4KcOesD0rtxomU/iSEv6DATcJbGXP6T93nPl 90XksijRKAmOwvdu3A8IIlxiSSVRP0lxiHOeR35y6PjHY2usfEDZZOVOfDfhlCVAIBZUZALv VmFOVSTYXeKgYa6Ooaf72+cHM3SgJIbYnevJfFv8YQW0MEAJ/IXE7B1Lk+pHNxwU3VBCrKnA fd/PTvviesuYRkrRD6qqZnINeu3b2DouVGGt2fVcGA38BujCd3p8i7azoGc7A6cgF7z9ETnr ANrbg1/dJyDmkDxOxVrVquTBbxJbDy2HaIe9wyJTEK2Sznpy62DaHVY+gfDQzexBXM10geHC IIUhEnOUYVaq65X3ZDjyAQnNDBQ4uMqSHZk8DpJ22X+T+IMzWzWl+VyU4UZXjkLKPvlqPjJk 1RbKScek5L2GhxHQbPaD76Hx4Jiel0vm2G+4wei8Ay1+0YRFkhySxogU/uQVXHTv63KzQMak oIfnN/V2R0ucarsvMBW+gwARAQABwsF8BBgBCAAmAhsMFiEESbtpiOmzlcaw8cISVFM+0Ioq b/oFAmR3IPsFCQTeZ44ACgkQVFM+0Ioqb/qINhAAtcor9bevHy22HvJvXX17IOpPSklZJAeQ Az43ZEo5kRlJ8mElc2g3RzYCvL/V3fSiIATxIsLq/MDtYhO8AAvklxND/u2zeBd7BkRZTZZX W1V1cM3oTvfx3LOhDu4f2ExQzCGdkzbXTRswSJIe1W0qwsDp+YPekbrsKp1maZArGeu+6FuW honeosIrWS98QJmscEhP8ooyJkLDCCOgEk+mJ/JBjzcJGuYn6+Iy/ApMw/vqiLGL1UWekcTA g18mREHqIR+A3ZvypIufSFB52oIs1zD/uh/MgmL62bY/Cw6M2SxiVxLRsav9TNkF6ZaNQCgn GqifliCEMvEuLZRBOZSYH2A/PfwjYW0Ss0Gyfywmb2IA990gcQsXxuCLG7pAbWaeYazoYYEQ NYmWatZNMAs68ERI2zvrVxdJ/fBWAllIEd0uQ4P05GtAHPdTIDQYp545+TPV7oyF0LfXcsQs SFVZE6igdvkjfYmh+QOrHGZvpWXLTmffVf/AQ81wspzbfxJ7sYM4P8Mg5kKOsaoUdyA/2qVe cMh1CLUHXF1GlofpGbe1lj4KUJVse5g3qwV7i9VrseA8c4VIZewdIjkzAhmmbxl+8rM/LKBH dZUMTzME5PFCXJIZ83qkZQ795MTe2YScp9dIV7fsS5tpDwIs7BZNVM1l3NAdK+DLHqNxKuyO 8Zk= In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0002.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:15::7) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|DM4PR12MB5104:EE_ X-MS-Office365-Filtering-Correlation-Id: 6d486733-7362-4c17-e0e6-08dc113b2b5a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fFVGIQKQusq8oIHk80Xp6mx+xxcNIlgvu+NgImgsnUhffRd4m+aUIXx5jyHqkXfuRz0Fgz8RIXFmLAbcEI25jCcElCFhArU1VHe7gICjUSxaABsJlt7nEsCFfjS9ax4FkCU92NY2Cw7eIQxeQWmYk7EExxaR7tXYPWsRNZiYtvr2aXWDCg1srv7EvHPoeL6qV1FSZ8i5GdvOOHP5AUX2yU0g4vv5fNx2+K3zhyKNr0AffcRXOwSXMOuPptzHPRcGP4PLCmx73HWmYGzPrOkqYom++48M5NIKCWq/m2wd89HwoF9A5edKDzmtQz43HWJ5cUAZRVTPIMZoAvJza3Ux5MzWlopqigG+X/LMgLG7YMuzNiSj7+iCmEYV6aVFLOMtnEldwSx/nGmgLtuXrQZHAkILyz6K3OPerNxsnSxzHVUpwZEx/2fxaSFJjtn6A6VXLrgXmdUeVK68Y4W830GQdQs5QRX05FJxzHMfsdKUia59jNrhh9NY9r8WO0sYNrdRi9m5q8S+0ZZkmW5s4zx2DgbLG+BBQfpaFdewdEUvdnR9ZA+tjz12GB/bCvwefshMjHk6PLdC1ic2buNRCg5R3RwTTnebgXLHG7WHwlv5HP/rr0DdyOs2iolAyL2DtxGmUXDuRpeh1VtXVM0S0Inp8g== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(39860400002)(136003)(366004)(376002)(346002)(396003)(230922051799003)(64100799003)(1800799012)(186009)(451199024)(38100700002)(41300700001)(31686004)(2906002)(5660300002)(54906003)(110136005)(6486002)(44832011)(36756003)(53546011)(86362001)(6666004)(6512007)(6506007)(8936002)(316002)(8676002)(4326008)(66946007)(66556008)(66476007)(83380400001)(31696002)(478600001)(26005)(2616005)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TmtTNGsvbjVnQndLQ0p6NmVrUHMvVVhjMHJZbGpWTHYrZEdsS2pzWVpuclRZ?= =?utf-8?B?dUNvdmhrRFVmUEFCdzFvZ0pKQVBSWEVJRUxUYlFNMy80OXVGQnlJZkJZN29D?= =?utf-8?B?RjhQNnZ3VmV0emxHeGRqbDJCeG1nVTNNbm54L2R4SWF4azR6MVE0UFNNakdZ?= =?utf-8?B?T1RNL1pHZzJNN2x3WlRsdG1ZZDYzL3ZoSVlBQmVCc0E0Z1I0aEFMcXJMcllu?= =?utf-8?B?dVhpOUVrWC9SM0dCVEVISEp2MGNuNEpnd0JrYXB6WkFvQnRUdkg1L1ZQaDMr?= =?utf-8?B?dUFQamxGOVNtR3FGK3djRGVmZWN4QkdHRWk4OE5vWE9HaEUrL2Y4WHZMd3Vt?= =?utf-8?B?dE1NQ3k2bXV6TWxkeDRMN3Rsa2hzaW5zU3J2WWRWQ3BRZW00TCttZnJ5cjRw?= =?utf-8?B?UDQzNXl1bG1mL1AvZ21FY1pvcW1NeFR6Wi9KN2xaVGxaS08wOUhsV3ZpV1dZ?= =?utf-8?B?MlpiZFNJd3k3YWZJNEdBN2N6eThJcVNZUFZqZXpOeWZ2bG5OU0s0MExaeHNY?= =?utf-8?B?QVR6NXEwMG1udURONnMxN3hTZGRlWTI3VmFZZnE2VXlhcE1LakJZZHIxbUpi?= =?utf-8?B?L0thNHN4Mm1mYXBxcnl6THFjVEZ5S0F3Tko2eTYxTDI4emZCazAyMWpNbUZy?= =?utf-8?B?ZTFwSEY2N2RoaDlHODFsU2NScjhLOG13RmRsb2sxR1k5cTlHMmlBUjV1bGo2?= =?utf-8?B?V0hERExjb3VpczN2cWxyU1dUY0dFbjBFTEpvS2xoZ1hIU3Nqc3Q3bHBSSTlu?= =?utf-8?B?Y0w2bE1iYndtZWNKbzg3bmtnemtTMERHUzlHTXhEc0JlQmZKZXdseWpJRDRt?= =?utf-8?B?TGFVMWhoT1V1VERmWUJqUnU4OE1nK3drQzN6WFA1bzQySUh4NTFnZS94Q3lk?= =?utf-8?B?V3YyeWV4TU9GeGg2SEx3U1VxdHVaMTZjY0ZXWnI3NThNbURTRld4MTQ5dkhZ?= =?utf-8?B?bEJMOTE4aGFySER6YWtHYlhhUFBIMEJjQkdMNjh5TmF3bVVGa082cytsL0Z5?= =?utf-8?B?eG5UV0Jjd01GOXpVdU9uWGlZaHpxcjhFVEl1dWdWUXlJb2JCakNwSC9qd3ha?= =?utf-8?B?YWJzZktQVHR2L1ZER3RGeVBvbXptelRJTFFxZXI3MFlzbGJvaUcxRFNjRGp4?= =?utf-8?B?c3VuMmJ6dU1TaGQ4MnV3bDN3Q3Vxc2VHaWVXRW1uME5WZnlYVmgvM3dFc1Zj?= =?utf-8?B?b0R5enFoNjFFRTNwZnVsMWZRUmZHTlZlNFRjcjVPMW5ybG9QM01SdnBrYTlm?= =?utf-8?B?dmVCRmdUei9NYkNiMENWU0ZxY3lJeGRSZXRUd0N4N1VqeUVzcUxaRVY2Z3VM?= =?utf-8?B?a2JnWnlOcTljQUE2RTRQczZobmcxZkNSckMwWXVqOW5CaitCcXR6N0kyS3NY?= =?utf-8?B?eEFxZ2VHMWVNM3RLR0huM0NvRG1nSnVxWWMybmk4S1RZM1pSbnJVM2lCTmR1?= =?utf-8?B?Znc2YUNTZFJaL0VjMlpnajkxMG9uSFYvMUJabk0wRWMyOHFQclRiSGhCakJB?= =?utf-8?B?SVZKdERPdVA0MkNNVis5VjVWc3lnS3Y5K1JBdzd6RHYyK2NCV2lyTkFJZ2xh?= =?utf-8?B?UHdWYWh5QjJNUkRGZS9qUnRhQ0l4OHAzNmtzU2ZyWWVXY2dsVnVrUUxtZmNI?= =?utf-8?B?QlB5YXJ2dnR2cklXb0tDNzVYcDZDQTZGdVBKR0pMVFUxbTlWWjNIUnZkaXdx?= =?utf-8?B?VkE5Sy9NaWVYVGY4eEVIR001MjdlOG93U0JySDdkc1o2akorRkhoK1lRU2wr?= =?utf-8?B?eFVOVWFtWkJ5ekg2ZERxcWVGU0hzWnNhMndRS1R3aGtKUXcwRnFnV0U1Z1pq?= =?utf-8?B?WDVZUWNPRG01T3FPNGtZSVcxOWc0UUpxdjZtd1JPTnIvTGc3cE43VVhLS3E3?= =?utf-8?B?NDZ6bW5aTDljcC9jK0JWRnhmcEpObEsxdUFxRFlMeDJFaWYwWDRkcFZJUVVq?= =?utf-8?B?elFkMGxsY2hyUk9qUXhmdGNlb05hNFVQcWgrNlFhSDJzYnJhUFNnQUNoREFo?= =?utf-8?B?Z1J1UGFQbllLUmovYkw5RkxDelNrU2pkTWlPeXUxcFRLRi96YkxaWW14RHox?= =?utf-8?B?T3ROQVF2cU42bnV2VjVrQ1RnYVJ4cW02ZXlZUEppSGdXbW1CWVRRYm45b3ZC?= =?utf-8?Q?V8JE=3D?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6d486733-7362-4c17-e0e6-08dc113b2b5a X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2024 17:48:21.1253 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ugCSQaTZaz0gsn94a3ypRvgyHXv+RmS41LzC5ibdJ2T0kU2u3eYd+UMbSlOCtTOF X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5104 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 1/9/2024 7:56 AM, Chaoyong He wrote: >> On 12/18/2023 1:50 AM, Chaoyong He wrote: >>>> On 12/14/2023 10:24 AM, Chaoyong He wrote: >>>>> From: Long Wu >>>>> >>>>> Set the representor array to NULL to avoid that close interface does >>>>> not free some resource. >>>>> >>>>> Fixes: a135bc1644d6 ("net/nfp: fix resource leak for flower >>>>> firmware") >>>>> Cc: chaoyong.he@corigine.com >>>>> Cc: stable@dpdk.org >>>>> >>>>> Signed-off-by: Long Wu >>>>> Reviewed-by: Chaoyong He >>>>> Reviewed-by: Peng Zhang >>>>> --- >>>>> drivers/net/nfp/flower/nfp_flower_representor.c | 15 >>>>> ++++++++++++++- >>>>> 1 file changed, 14 insertions(+), 1 deletion(-) >>>>> >>>>> diff --git a/drivers/net/nfp/flower/nfp_flower_representor.c >>>>> b/drivers/net/nfp/flower/nfp_flower_representor.c >>>>> index 27ea3891bd..5f7c1fa737 100644 >>>>> --- a/drivers/net/nfp/flower/nfp_flower_representor.c >>>>> +++ b/drivers/net/nfp/flower/nfp_flower_representor.c >>>>> @@ -294,17 +294,30 @@ nfp_flower_repr_tx_burst(void *tx_queue, >>>>> static int nfp_flower_repr_uninit(struct rte_eth_dev *eth_dev) { >>>>> + uint16_t index; >>>>> struct nfp_flower_representor *repr; >>>>> >>>>> repr = eth_dev->data->dev_private; >>>>> rte_ring_free(repr->ring); >>>>> >>>>> + if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT) { >>>>> + index = NFP_FLOWER_CMSG_PORT_PHYS_PORT_NUM(repr- >>>>> port_id); >>>>> + repr->app_fw_flower->phy_reprs[index] = NULL; >>>>> + } else { >>>>> + index = repr->vf_id; >>>>> + repr->app_fw_flower->vf_reprs[index] = NULL; >>>>> + } >>>>> + >>>>> return 0; >>>>> } >>>>> >>>>> static int >>>>> -nfp_flower_pf_repr_uninit(__rte_unused struct rte_eth_dev *eth_dev) >>>>> +nfp_flower_pf_repr_uninit(struct rte_eth_dev *eth_dev) >>>>> { >>>>> + struct nfp_flower_representor *repr = eth_dev->data->dev_private; >>>>> + >>>>> + repr->app_fw_flower->pf_repr = NULL; >>>>> >>>> >>>> Here it is assigned to NULL but is it freed? If freed, why not set to >>>> NULL where it is freed? >>>> >>>> Same for above phy_reprs & vf_reprs. >>> >>> The whole invoke view: >>> rte_eth_dev_close() >>> --> nfp_flower_repr_dev_close() >>> --> nfp_flower_repr_free() >>> --> nfp_flower_pf_repr_uninit() >>> --> nfp_flower_repr_uninit() >>> // In these two functions, we just assigned to NULL but not freed yet. >>> // It is still refer by the `eth_dev->data->dev_private`. >>> --> rte_eth_dev_release_port() >>> --> rte_free(eth_dev->data->dev_private); >>> // And here it is really freed (by the rte framework). >>> >> >> 'rte_eth_dev_release_port()' frees the device private data, but not all pointers, >> like 'repr->app_fw_flower->pf_repr', in the struct are freed, it is dev_close() or >> unint() functions responsibility. >> >> Can you please double check if >> 'eth_dev->data->dev_private->app_fw_flower->pf_repr' freed or not? > > (gdb) b nfp_flower_repr_dev_close > Breakpoint 1 at 0x7f839a4ad37f: file ../drivers/net/nfp/flower/nfp_flower_representor.c, line 356. > (gdb) c > Continuing. > > Thread 1 "dpdk-testpmd" hit Breakpoint 1, nfp_flower_repr_dev_close (dev=0x7f839aed2340 ) > at ../drivers/net/nfp/flower/nfp_flower_representor.c:356 > 356 if (rte_eal_process_type() != RTE_PROC_PRIMARY) > (gdb) n > 359 repr = dev->data->dev_private; > (gdb) > 360 app_fw_flower = repr->app_fw_flower; > (gdb) > 361 hw = app_fw_flower->pf_hw; > (gdb) > 362 pf_dev = hw->pf_dev; > (gdb) > 368 nfp_net_disable_queues(dev); > (gdb) p repr > $1 = (struct nfp_flower_representor *) 0x17c49c800 > (gdb) p dev->data->dev_private > $2 = (void *) 0x17c49c800 > (gdb) p repr->app_fw_flower->pf_repr > $3 = (struct nfp_flower_representor *) 0x17c49c800 > > As we can see, these three pointers point the same block of memory. > Ahh, I missed that 'repr->app_fw_flower->pf_repr' points to 'dev_private', so your code makes sense. But if it is 'dev_private', why free it in 'nfp_pf_uninit()' as it will be freed by 'rte_eth_dev_release_port()'? Won't removing 'rte_free(pf_dev);' from 'nfp_pf_uninit()' will have the same effect, instead of setting it NULL in advance?