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 E14AB43889; Thu, 11 Jan 2024 03:02:53 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6931240278; Thu, 11 Jan 2024 03:02:53 +0100 (CET) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2118.outbound.protection.outlook.com [40.107.93.118]) by mails.dpdk.org (Postfix) with ESMTP id 8A53A40266; Thu, 11 Jan 2024 03:02:51 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b95A4FYpVCc+QAhJHiOr9/NhBTmHIRsm+gppMzLYdWDw5KSpdLPV5dp18yxS9l/XFHzhULAqa4WER/BJ3oGJj15r4BRe+LqTZPpT73WdywWc7FvKkd4NJGDc7z9ziB1xD6e5DMjETuuqkoJIQjA25/GYJL1LBh8DN8yGmH43l/2b3JwPyoqVZ6v/zEOETxkaecWZa5aa+ZCOgapPEvPFG5QMqEu2GVIXsvmj+ISkApiqnGLHBB+nRHhGJQnxdeCcn+IRkAXLA811ftLOX61PrvcSp871vnEX9rlCReHq9fg+QhXb7YiWJQ7YOozMQBDF2HNPwbx3gzBedTux7BufiQ== 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=aCPSjkqV/juKUPMyPlSPaXcbrt19ghc5jNW1LYq+Tgg=; b=bA1tZbrUuJTe4B0IiWuHk1aRcxsMZUOyeB4Sh/RO88rCWKl3oX1ElPqAJW/KCWtReoApVQIV+iNm5ugY5UkKyTvKLHx2zKwZcG+j6barqNXEJZHhrM0yslvN30cFPU7poYJEwBmk5E/Q1mZF/e5xKx5yVtTE1fqwydZ01t3PL50b+u//zNcuTwnEzsG88Mpesp1D6FWIdffqP0NUhAaCwWRklc+EYfQ6jiUkne1SmwUfPk9ancZAnGi9UoYJXdL1+q9hgPnGo1Oc8S4Y5cIP8lkCVwXaCQ2+8jFjRTpIqxciPiLCmAq9VpQMQNvUDSRPLrmMpOzYwc/tn+LMSksFdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com; dkim=pass header.d=corigine.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aCPSjkqV/juKUPMyPlSPaXcbrt19ghc5jNW1LYq+Tgg=; b=PEaVLtE68SFZTZ9kaUqZOXsNRFkyuQ2509LqYvwzObJaUMc3i+fXfYheBbTn0AGiOUuzpR48+cuGS2Ag9fUKFcmIGHjK49+1nrD7tx35R7NjufxWmxLItHYh7CW1b39tbOi1UI8QUiQG8OmTVeUR5Lt9HBzdj3vJGoZcxqjjpTE= Received: from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) by MW3PR13MB3913.namprd13.prod.outlook.com (2603:10b6:303:5f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.17; Thu, 11 Jan 2024 02:02:47 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::8e02:f738:570a:f8aa]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::8e02:f738:570a:f8aa%6]) with mapi id 15.20.7181.015; Thu, 11 Jan 2024 02:02:47 +0000 From: Chaoyong He To: Ferruh Yigit , "dev@dpdk.org" CC: oss-drivers , Long Wu , "stable@dpdk.org" , Nole Zhang Subject: RE: [PATCH 2/3] net/nfp: fix free resource problem Thread-Topic: [PATCH 2/3] net/nfp: fix free resource problem Thread-Index: AQHaLnfFNqI/9sZEd06VCuEOI7vxTbCqTrgAgAP6/KCAIevrAIABDmqAgACnEoCAAhk9AA== Date: Thu, 11 Jan 2024 02:02:47 +0000 Message-ID: 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> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=corigine.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR13MB5545:EE_|MW3PR13MB3913:EE_ x-ms-office365-filtering-correlation-id: c12492e1-d547-4578-8247-08dc12496888 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: JS3Ky2XTRQiX2/O30ua46dSM33ru+OR0wYH3jpB3KfezdI3Vw6GHhVxuJ6NWN0JqLyfWD0uqtfAZNo7h8fSYUBoE/4L/XwqbIETorabEZXTRgt/B8LY1jCtNnT2XZ85udGzl6OuMmUr6QVrUvoAme2FfLg4PXPunmSth5D64zGeByIs5Lv9xGvUsJVPup96AE2BFBVjY8DMbTxU0wcvXl8G0IdTyH3xoT/cbGI8bLQYorOBz8/R9lKk1bjsRiDWSVhqeIEmpfIFid8WGHNKOErRR6Q4wjIgr+Kqa5cwUmP2PelJlk/ocyXCDD6ICgRbnZcI4B7VCqSfppn/I9tqPSUV75XSJU0NB0v9iSVe/6s5s+nvl92PCPLFEbuak2a5l0k280ZQ1xles0I3c0TGr2SxOSQPVm5SvsFzx96mzeAviHP1cbZT874sD92lWXv014OQrsFvmzm0nD9tsy7cM/3FjMj6f5cmdp6GStM3rV/5N5WBm0pZkxSJlMh7RitJQMXjIuj+l+UJvJU4DrG/nSFUFUvPrxqdDxekuBtBakX2m/zYmSa61bpVpZBaG+vSHn3pLlr+mbxWQIL18HkGRhHyB/OCRw5yJ/KB3CJiur0sh5GcHYPQiAfZKEGd7D83ruFngR46zR0xtRqR56j6g7pVw3CP8vMPM6kITZEZndoM= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(39840400004)(396003)(376002)(366004)(136003)(346002)(230922051799003)(186009)(64100799003)(451199024)(1800799012)(6506007)(478600001)(71200400001)(54906003)(7696005)(64756008)(110136005)(66556008)(8936002)(76116006)(66946007)(66476007)(66446008)(316002)(83380400001)(53546011)(107886003)(8676002)(2906002)(5660300002)(4326008)(52536014)(44832011)(41300700001)(9686003)(33656002)(38070700009)(122000001)(38100700002)(86362001)(55016003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cU8xUDNVNS9ENnAyTmY2SUZqNWNJbXJhKy9WOTVUTkFNNGFkYm1sVVE0cVph?= =?utf-8?B?cDlUYjgwRXBTL1VFMEs4dHZmV2lYUWtMUHhxTVN1bEY4d2FYd1dzVjg1eTR3?= =?utf-8?B?NU1YLytoNzc1YTdpRzlUT3lDcVpHa2JrQ1hsZnJPRER2WFp0N1QxekZDRits?= =?utf-8?B?WkY0bHcvTWFQVU9sYlJrMk1rOU1uelIvTU40bVQ3MlgvMURuTzM0bFY4V212?= =?utf-8?B?RWdTcUk1d0ZzdW40Z09VM2sxWTZNOXpsTlpXUW9kZlVvN0h2dXh0WUpDS1dR?= =?utf-8?B?NThrNWc4UGh5czJ1TFZNOXVjcWhhYXR2T2RhdFowKzRFRUgyLzZhTDRGMndp?= =?utf-8?B?YzE5Wk5IakNXWHdaV1dYSkpsUDdIeDA3LzBQY1dLcVdxT3gyTjY2YkVpM1Ns?= =?utf-8?B?eWxXamY4QmowWldMdHVsTDdoVmpvK0EvU1BIRW9Gb0ZUSzlaek1FMjBqYXFa?= =?utf-8?B?L1MrV05wVjZ1T3JCZTExR3UwUndKdnhYYnBna0ZnYit6Uk5KNGtGaDJ4RlB6?= =?utf-8?B?NlJlV05aSE5vekUveFVVaTQ4VWlpQU9TZm9lck11Z2ZoZFVKR25EU1h0ZEJW?= =?utf-8?B?elI1MUxTMVJKYXlZTUNRNDJCUE9tS3BFV2RqVlJlTDgwRE9FMWNqelBMVmIz?= =?utf-8?B?SmtPL0s5KzR2cE9PMkNMMm5LcUNlT1krMTkxcjlLcXFMT0lWcXh5Z084WlJ2?= =?utf-8?B?VlNQenkzb0hGUC91VG14aGFGcllUOFpqSEhZdStTVm9XTC9BbGdhZXFETjlL?= =?utf-8?B?Z3QxOEh0QkN3c1JFenhxMUxBZzFleGlzK2dNUjlLK3pEdEJDMnBqVG5EWkJ5?= =?utf-8?B?VHo3cTdLayt1SnZRZENER2JCT3ZaM0FzUnVWVExGTEYzM1BSWVp0a3Iyb1Fm?= =?utf-8?B?TjRZMDE2aGxnckR5dDNaSEdOcDJjQnFEaTNQVFpJdkZYbDZ4aC9zN3p4YXZ5?= =?utf-8?B?cElhNXowVGNMNVg2UXFIQ1RqM0M3L2laeHhCaWRiMU5vdUhKWjBhbEYyL29L?= =?utf-8?B?a0w3a0lDOFZ5R2V4bmdPVlBPbnhxdUlMdE84WFM4blFLVjBZRWxCclRXWmdw?= =?utf-8?B?MTJuQ0E0cC93RTMxanJ6Ui9VWHl5ZEdQUndrVERINWlEeTRGTTQvZ0Fwb0FK?= =?utf-8?B?L2lrSzdpbWNNWHZTZ0pwR2xoYlA2UVk0aFZZNGE1RjBtMVBMZWdlbHAyRmNk?= =?utf-8?B?VE0zcUU5bVdHUGVZY2NPcEQ1UStwNEJNT200UWkvWDljb1JXY1NaQXF2K0Jz?= =?utf-8?B?c3VFUjZpdGI4NjVOSlk5Um1uZHVwOXd2VWQ4ZkR3a2I3K1JjUmZkNktUZjg0?= =?utf-8?B?elc0K3IwZXVxUmNFMW56a3lwSzRpaWdWNTZYNHRURUN3S3MwdjlzdjczdTlK?= =?utf-8?B?NlBBVXIwcTJWMk5iNDdkV2k5SW9XbUZ2ZjBWU0Uyc2hhcGgzVjFPN29ZaGZ2?= =?utf-8?B?dS96WXZKSVY0dTU3cTc2V0V3VC9ia3dFKzlOeUxqdU1ydkkweDFyNlRzU09U?= =?utf-8?B?UmlTalE2RkVJOXRBbWZlYlRnK2NXT1REVlhqbzgweitVVS9qV3lpR0haTG1r?= =?utf-8?B?ZWQrc1hrdzk1LzhpL3FTbFUzK3VKWlhnYWg2OVVvMXU5YzlyYlRCbUJIMWNS?= =?utf-8?B?SUJRM3RLKzBRN0Y1aWRFSGtHV2RObk1RYlljaGEzUGtpY3YrV0xXeDVGckUz?= =?utf-8?B?OHNaU3czZTErNGVxTjRiTWN3K3Q0QlNuYmtHQm5WUVMvSU5lZndxU3RDcUM4?= =?utf-8?B?dDNjR3JxcTVQR2dCYWxJcnNoa3IrckdFUnloTGREYms4OEl2WmpWK2hKUExL?= =?utf-8?B?U1dlQ0hOVCtUREowQVlWVmhFZFUvbEpsL0dUMjh5T0VoRTI2dWlPSktYQ0Y4?= =?utf-8?B?ZG5ucG53YXFSQWpRd3c0dVhRaDN1YjB0VnMyRUhYQnhIWWxNajNqUnVISjN0?= =?utf-8?B?a1gxS1FpT1VwWnRRYjBObjRQSjBxMW1Ud2JQN1dqVzRncGEzNTRpYmF6VlFo?= =?utf-8?B?NERmdjBudTlmOHlGcXkwREtUNTBBYXRvODBuRWhNZ2xzYTZ0ODJRQUZzSVJl?= =?utf-8?B?MitzWDUyNzJiQ0djejF0M24zZ0NaanF0OXBEeFcrdnRqcmNJYzc5M3pSWkZR?= =?utf-8?Q?T+3Q=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c12492e1-d547-4578-8247-08dc12496888 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Jan 2024 02:02:47.4966 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fe128f2c-073b-4c20-818e-7246a585940c X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: SFYAGghKihFFvsKbfl9gSNi+l3h/V2FZyVyf/WqZQwGW8Aysie1Wubzu1HZykytqYDQ9LUWgsnlZlNacPDQxFkdgN/JaypGZNq9LSmci0fA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR13MB3913 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 PiBPbiAxLzkvMjAyNCA3OjU2IEFNLCBDaGFveW9uZyBIZSB3cm90ZToNCj4gPj4gT24gMTIvMTgv MjAyMyAxOjUwIEFNLCBDaGFveW9uZyBIZSB3cm90ZToNCj4gPj4+PiBPbiAxMi8xNC8yMDIzIDEw OjI0IEFNLCBDaGFveW9uZyBIZSB3cm90ZToNCj4gPj4+Pj4gRnJvbTogTG9uZyBXdSA8bG9uZy53 dUBjb3JpZ2luZS5jb20+DQo+ID4+Pj4+DQo+ID4+Pj4+IFNldCB0aGUgcmVwcmVzZW50b3IgYXJy YXkgdG8gTlVMTCB0byBhdm9pZCB0aGF0IGNsb3NlIGludGVyZmFjZQ0KPiA+Pj4+PiBkb2VzIG5v dCBmcmVlIHNvbWUgcmVzb3VyY2UuDQo+ID4+Pj4+DQo+ID4+Pj4+IEZpeGVzOiBhMTM1YmMxNjQ0 ZDYgKCJuZXQvbmZwOiBmaXggcmVzb3VyY2UgbGVhayBmb3IgZmxvd2VyDQo+ID4+Pj4+IGZpcm13 YXJlIikNCj4gPj4+Pj4gQ2M6IGNoYW95b25nLmhlQGNvcmlnaW5lLmNvbQ0KPiA+Pj4+PiBDYzog c3RhYmxlQGRwZGsub3JnDQo+ID4+Pj4+DQo+ID4+Pj4+IFNpZ25lZC1vZmYtYnk6IExvbmcgV3Ug PGxvbmcud3VAY29yaWdpbmUuY29tPg0KPiA+Pj4+PiBSZXZpZXdlZC1ieTogQ2hhb3lvbmcgSGUg PGNoYW95b25nLmhlQGNvcmlnaW5lLmNvbT4NCj4gPj4+Pj4gUmV2aWV3ZWQtYnk6IFBlbmcgWmhh bmcgPHBlbmcuemhhbmdAY29yaWdpbmUuY29tPg0KPiA+Pj4+PiAtLS0NCj4gPj4+Pj4gIGRyaXZl cnMvbmV0L25mcC9mbG93ZXIvbmZwX2Zsb3dlcl9yZXByZXNlbnRvci5jIHwgMTUNCj4gPj4+Pj4g KysrKysrKysrKysrKystDQo+ID4+Pj4+ICAxIGZpbGUgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygr KSwgMSBkZWxldGlvbigtKQ0KPiA+Pj4+Pg0KPiA+Pj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9u ZXQvbmZwL2Zsb3dlci9uZnBfZmxvd2VyX3JlcHJlc2VudG9yLmMNCj4gPj4+Pj4gYi9kcml2ZXJz L25ldC9uZnAvZmxvd2VyL25mcF9mbG93ZXJfcmVwcmVzZW50b3IuYw0KPiA+Pj4+PiBpbmRleCAy N2VhMzg5MWJkLi41ZjdjMWZhNzM3IDEwMDY0NA0KPiA+Pj4+PiAtLS0gYS9kcml2ZXJzL25ldC9u ZnAvZmxvd2VyL25mcF9mbG93ZXJfcmVwcmVzZW50b3IuYw0KPiA+Pj4+PiArKysgYi9kcml2ZXJz L25ldC9uZnAvZmxvd2VyL25mcF9mbG93ZXJfcmVwcmVzZW50b3IuYw0KPiA+Pj4+PiBAQCAtMjk0 LDE3ICsyOTQsMzAgQEAgbmZwX2Zsb3dlcl9yZXByX3R4X2J1cnN0KHZvaWQgKnR4X3F1ZXVlLA0K PiA+Pj4+PiBzdGF0aWMgaW50ICBuZnBfZmxvd2VyX3JlcHJfdW5pbml0KHN0cnVjdCBydGVfZXRo X2RldiAqZXRoX2RldikgIHsNCj4gPj4+Pj4gKwl1aW50MTZfdCBpbmRleDsNCj4gPj4+Pj4gIAlz dHJ1Y3QgbmZwX2Zsb3dlcl9yZXByZXNlbnRvciAqcmVwcjsNCj4gPj4+Pj4NCj4gPj4+Pj4gIAly ZXByID0gZXRoX2Rldi0+ZGF0YS0+ZGV2X3ByaXZhdGU7DQo+ID4+Pj4+ICAJcnRlX3JpbmdfZnJl ZShyZXByLT5yaW5nKTsNCj4gPj4+Pj4NCj4gPj4+Pj4gKwlpZiAocmVwci0+cmVwcl90eXBlID09 IE5GUF9SRVBSX1RZUEVfUEhZU19QT1JUKSB7DQo+ID4+Pj4+ICsJCWluZGV4ID0gTkZQX0ZMT1dF Ul9DTVNHX1BPUlRfUEhZU19QT1JUX05VTShyZXByLQ0KPiA+Pj4+PiBwb3J0X2lkKTsNCj4gPj4+ Pj4gKwkJcmVwci0+YXBwX2Z3X2Zsb3dlci0+cGh5X3JlcHJzW2luZGV4XSA9IE5VTEw7DQo+ID4+ Pj4+ICsJfSBlbHNlIHsNCj4gPj4+Pj4gKwkJaW5kZXggPSByZXByLT52Zl9pZDsNCj4gPj4+Pj4g KwkJcmVwci0+YXBwX2Z3X2Zsb3dlci0+dmZfcmVwcnNbaW5kZXhdID0gTlVMTDsNCj4gPj4+Pj4g Kwl9DQo+ID4+Pj4+ICsNCj4gPj4+Pj4gIAlyZXR1cm4gMDsNCj4gPj4+Pj4gIH0NCj4gPj4+Pj4N Cj4gPj4+Pj4gIHN0YXRpYyBpbnQNCj4gPj4+Pj4gLW5mcF9mbG93ZXJfcGZfcmVwcl91bmluaXQo X19ydGVfdW51c2VkIHN0cnVjdCBydGVfZXRoX2Rldg0KPiA+Pj4+PiAqZXRoX2RldikNCj4gPj4+ Pj4gK25mcF9mbG93ZXJfcGZfcmVwcl91bmluaXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2 KQ0KPiA+Pj4+PiAgew0KPiA+Pj4+PiArCXN0cnVjdCBuZnBfZmxvd2VyX3JlcHJlc2VudG9yICpy ZXByID0NCj4gPj4+Pj4gK2V0aF9kZXYtPmRhdGEtPmRldl9wcml2YXRlOw0KPiA+Pj4+PiArDQo+ ID4+Pj4+ICsJcmVwci0+YXBwX2Z3X2Zsb3dlci0+cGZfcmVwciA9IE5VTEw7DQo+ID4+Pj4+DQo+ ID4+Pj4NCj4gPj4+PiBIZXJlIGl0IGlzIGFzc2lnbmVkIHRvIE5VTEwgYnV0IGlzIGl0IGZyZWVk PyBJZiBmcmVlZCwgd2h5IG5vdCBzZXQNCj4gPj4+PiB0byBOVUxMIHdoZXJlIGl0IGlzIGZyZWVk Pw0KPiA+Pj4+DQo+ID4+Pj4gU2FtZSBmb3IgYWJvdmUgcGh5X3JlcHJzICYgdmZfcmVwcnMuDQo+ ID4+Pg0KPiA+Pj4gVGhlIHdob2xlIGludm9rZSB2aWV3Og0KPiA+Pj4gcnRlX2V0aF9kZXZfY2xv c2UoKQ0KPiA+Pj4gICAgIC0tPiBuZnBfZmxvd2VyX3JlcHJfZGV2X2Nsb3NlKCkNCj4gPj4+ICAg ICAgICAgLS0+IG5mcF9mbG93ZXJfcmVwcl9mcmVlKCkNCj4gPj4+ICAgICAgICAgICAgIC0tPiBu ZnBfZmxvd2VyX3BmX3JlcHJfdW5pbml0KCkNCj4gPj4+ICAgICAgICAgICAgIC0tPiBuZnBfZmxv d2VyX3JlcHJfdW5pbml0KCkNCj4gPj4+ICAgICAgICAgICAgLy8gSW4gdGhlc2UgdHdvIGZ1bmN0 aW9ucywgd2UganVzdCBhc3NpZ25lZCB0byBOVUxMIGJ1dCBub3QgZnJlZWQNCj4geWV0Lg0KPiA+ Pj4gICAgICAgICAgICAvLyBJdCBpcyBzdGlsbCByZWZlciBieSB0aGUgYGV0aF9kZXYtPmRhdGEt PmRldl9wcml2YXRlYC4NCj4gPj4+ICAgICAtLT4gcnRlX2V0aF9kZXZfcmVsZWFzZV9wb3J0KCkN Cj4gPj4+ICAgICAgICAgLS0+IHJ0ZV9mcmVlKGV0aF9kZXYtPmRhdGEtPmRldl9wcml2YXRlKTsN Cj4gPj4+ICAgICAgICAgLy8gQW5kIGhlcmUgaXQgaXMgcmVhbGx5IGZyZWVkIChieSB0aGUgcnRl IGZyYW1ld29yaykuDQo+ID4+Pg0KPiA+Pg0KPiA+PiAncnRlX2V0aF9kZXZfcmVsZWFzZV9wb3J0 KCknIGZyZWVzIHRoZSBkZXZpY2UgcHJpdmF0ZSBkYXRhLCBidXQgbm90DQo+ID4+IGFsbCBwb2lu dGVycywgbGlrZSAncmVwci0+YXBwX2Z3X2Zsb3dlci0+cGZfcmVwcicsIGluIHRoZSBzdHJ1Y3Qg YXJlDQo+ID4+IGZyZWVkLCBpdCBpcyBkZXZfY2xvc2UoKSBvcg0KPiA+PiB1bmludCgpIGZ1bmN0 aW9ucyByZXNwb25zaWJpbGl0eS4NCj4gPj4NCj4gPj4gQ2FuIHlvdSBwbGVhc2UgZG91YmxlIGNo ZWNrIGlmDQo+ID4+ICdldGhfZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZS0+YXBwX2Z3X2Zsb3dlci0+ cGZfcmVwcicgZnJlZWQgb3Igbm90Pw0KPiA+DQo+ID4gKGdkYikgYiBuZnBfZmxvd2VyX3JlcHJf ZGV2X2Nsb3NlDQo+ID4gQnJlYWtwb2ludCAxIGF0IDB4N2Y4MzlhNGFkMzdmOg0KPiBmaWxlIC4u L2RyaXZlcnMvbmV0L25mcC9mbG93ZXIvbmZwX2Zsb3dlcl9yZXByZXNlbnRvci5jLCBsaW5lIDM1 Ni4NCj4gPiAoZ2RiKSBjDQo+ID4gQ29udGludWluZy4NCj4gPg0KPiA+IFRocmVhZCAxICJkcGRr LXRlc3RwbWQiIGhpdCBCcmVha3BvaW50IDEsIG5mcF9mbG93ZXJfcmVwcl9kZXZfY2xvc2UNCj4g KGRldj0weDdmODM5YWVkMjM0MCA8cnRlX2V0aF9kZXZpY2VzPikNCj4gPiAgICAgYXQgLi4vZHJp dmVycy9uZXQvbmZwL2Zsb3dlci9uZnBfZmxvd2VyX3JlcHJlc2VudG9yLmM6MzU2DQo+ID4gMzU2 ICAgICAgICAgICAgIGlmIChydGVfZWFsX3Byb2Nlc3NfdHlwZSgpICE9IFJURV9QUk9DX1BSSU1B UlkpDQo+ID4gKGdkYikgbg0KPiA+IDM1OSAgICAgICAgICAgICByZXByID0gZGV2LT5kYXRhLT5k ZXZfcHJpdmF0ZTsNCj4gPiAoZ2RiKQ0KPiA+IDM2MCAgICAgICAgICAgICBhcHBfZndfZmxvd2Vy ID0gcmVwci0+YXBwX2Z3X2Zsb3dlcjsNCj4gPiAoZ2RiKQ0KPiA+IDM2MSAgICAgICAgICAgICBo dyA9IGFwcF9md19mbG93ZXItPnBmX2h3Ow0KPiA+IChnZGIpDQo+ID4gMzYyICAgICAgICAgICAg IHBmX2RldiA9IGh3LT5wZl9kZXY7DQo+ID4gKGdkYikNCj4gPiAzNjggICAgICAgICAgICAgbmZw X25ldF9kaXNhYmxlX3F1ZXVlcyhkZXYpOw0KPiA+IChnZGIpIHAgcmVwcg0KPiA+ICQxID0gKHN0 cnVjdCBuZnBfZmxvd2VyX3JlcHJlc2VudG9yICopIDB4MTdjNDljODAwDQo+ID4gKGdkYikgcCBk ZXYtPmRhdGEtPmRldl9wcml2YXRlDQo+ID4gJDIgPSAodm9pZCAqKSAweDE3YzQ5YzgwMA0KPiA+ IChnZGIpIHAgcmVwci0+YXBwX2Z3X2Zsb3dlci0+cGZfcmVwcg0KPiA+ICQzID0gKHN0cnVjdCBu ZnBfZmxvd2VyX3JlcHJlc2VudG9yICopIDB4MTdjNDljODAwDQo+ID4NCj4gPiBBcyB3ZSBjYW4g c2VlLCB0aGVzZSB0aHJlZSBwb2ludGVycyBwb2ludCB0aGUgc2FtZSBibG9jayBvZiBtZW1vcnku DQo+ID4NCj4gDQo+IEFoaCwgSSBtaXNzZWQgdGhhdCAncmVwci0+YXBwX2Z3X2Zsb3dlci0+cGZf cmVwcicgcG9pbnRzIHRvICdkZXZfcHJpdmF0ZScsIHNvDQo+IHlvdXIgY29kZSBtYWtlcyBzZW5z ZS4NCj4gDQo+IEJ1dCBpZiBpdCBpcyAnZGV2X3ByaXZhdGUnLCB3aHkgZnJlZSBpdCBpbiAnbmZw X3BmX3VuaW5pdCgpJyBhcyBpdCB3aWxsIGJlIGZyZWVkIGJ5DQo+ICdydGVfZXRoX2Rldl9yZWxl YXNlX3BvcnQoKSc/DQoNClNvcnJ5LCBJJ20gbm90IHVuZGVyc3RhbmRpbmcgdGhpcy4NClRoZSAn ZGV2X3ByaXZhdGUnIGlzIGEgJ3N0cnVjdCBuZnBfZmxvd2VyX3JlcHJlc2VudG9yIConLCBhbmQg aXQgd2lsbCBiZSBmcmVlZCBpbiAncnRlX2V0aF9kZXZfcmVsZWFzZV9wb3J0KCknLg0KV2hhdCBJ IGZyZWVkIGluICduZnBfcGZfdW5pbml0KCknIGlzIGEgJ3N0cnVjdCBuZnBfcGZfZGV2IConLCBz byBJJ20gbm90IGNhdGNoIHlvdXIgcG9pbnQgYWJvdXQgdGhpcy4NCg0KPiBXb24ndCByZW1vdmlu ZyAncnRlX2ZyZWUocGZfZGV2KTsnIGZyb20gJ25mcF9wZl91bmluaXQoKScgd2lsbCBoYXZlIHRo ZSBzYW1lDQo+IGVmZmVjdCwgaW5zdGVhZCBvZiBzZXR0aW5nIGl0IE5VTEwgaW4gYWR2YW5jZT8N Cj4gDQoNCklmIEkgcmVtb3ZlIHRoZSAncnRlX2ZyZWUocGZfZGV2KTsnIGZyb20gJ25mcF9wZl91 bmluaXQoKScsIHRoZXJlIHdpbGwgYmUgYSBtZW1vcnkgbGVhayBhcyBubyBvbmUgd2lsbCBmcmVl IGl0LCBhbmQgYWN0dWFsbHkgSSdtIG5vdCAnc2V0dGluZyBpdCBOVUxMIGluIGFkdmFuY2UnLg0K DQozNTkgICAgICAgICAgICAgcmVwciA9IGRldi0+ZGF0YS0+ZGV2X3ByaXZhdGU7DQozNjAgICAg ICAgICAgICAgYXBwX2Z3X2Zsb3dlciA9IHJlcHItPmFwcF9md19mbG93ZXI7DQozNjEgICAgICAg ICAgICAgaHcgPSBhcHBfZndfZmxvd2VyLT5wZl9odzsNCjM2MiAgICAgICAgICAgICBwZl9kZXYg PSBody0+cGZfZGV2Ow0KDQpNYXliZSB5b3UganVzdCBjb25mdXNlIHRoZSAncGZfcmVwcicgYW5k ICdwZl9kZXYnPyBKdXN0IGEgZ3Vlc3MuDQo=