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 14E3FA0C4E; Thu, 12 Aug 2021 16:29:12 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E7A664014D; Thu, 12 Aug 2021 16:29:11 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2054.outbound.protection.outlook.com [40.107.237.54]) by mails.dpdk.org (Postfix) with ESMTP id 9CDEE40042 for ; Thu, 12 Aug 2021 16:29:10 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NBN5T1vfLHBiI3N/nYKH2SB3kLAckEMC6bNDXI9+vqqrEdEe7ENkthfF3xgbiDDgzqK6K7/ew8H84eD/jCbEMUherehZ3hwdwZte9SJYCd5Gy/KuVjASPi1+1WFq+uciMvzjFWG8DrQ4spBZ8JJRUgCOwEa3eCXRJnBsBsfvtprq4RaSRvcIgC1OgpELvq7tEMUzd8aVq02hcrIrcIRHd/2/wVJ90OHcODxU/u44D94uJNLMcEkcMxM0Bn4dV2UzT/Wl7Cp2MVh2/WeKexxoB1dKfAnHUry/eMMBZz6lb7EB2kLI0kAhgZUvmdWI1P9kmDohsOqHLPQHcNJhOehykw== 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-SenderADCheck; bh=8kJiv/o+trCVnJ9gGWvI/gp73Wc6XNZs4ebHVT43OTs=; b=ctxua1Z5dj9gSLxIcnah0sAj1mi9T441quY8f+CH0nyvzWb6tWcKnkHlcMQf70SK3EZW/GkzgrqBp49R2tR2yIpyfRsErTqQ+YuKrKRVdL/kcfCzbODdpcQqjb6ZF7O9teePGDa7EWvPR9e4cmvLUBx6du+wC2V429lXYc3a+xfkrwbh6krcEvNNLXtwJHr4zwbjxygoirGq1RsTsdAQbr8PAu+I1plsD/LqOgVmc2ISRmwgoMA0qBENESFvqhrXLrDTY5yGEv0u42fioVlBjma3ofu/6uggpAj9ouTXrqZMkhxf2SLH5gNBQKlzJ8IUlVmG87OK9vitzlAwW84A7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none 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=8kJiv/o+trCVnJ9gGWvI/gp73Wc6XNZs4ebHVT43OTs=; b=B13YPIgnXIJ/5NHZX4zlBzL4nO0ZJXn8W3csU0G9ZCnScXBYMkhm07rV8gqzg/xUMMEZVfKLxq7v/tYCucQxuIse2e9O0gEfnvJvLirinOZ/E23Ov2tqheiaSILHwCYg6Hgcp861LzMthfi5YUD4e94K8clUn4A4dfpvV6m/UnA8SY3qmVTwuMOmra6eol2yqPZbnwXMjSw8fHNl1ulwX2i08dfuY9/PtJqSxwjO7gxtD1EdaJrHY6dYA+fEWNgV65IHefE0BAYDq4loDeWpO9Ekoi62JLi26v8jU1tzeQT3wHMumy0gQUPr227zcUVj3BVWby26bB5+wzSM9zK9sA== Received: from DM4PR12MB5373.namprd12.prod.outlook.com (2603:10b6:5:39a::17) by DM6PR12MB5536.namprd12.prod.outlook.com (2603:10b6:5:1ba::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.14; Thu, 12 Aug 2021 14:29:09 +0000 Received: from DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::20f5:dbdd:64b1:617b]) by DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::20f5:dbdd:64b1:617b%9]) with mapi id 15.20.4415.018; Thu, 12 Aug 2021 14:29:09 +0000 From: "Xueming(Steven) Li" To: "Xueming(Steven) Li" , Ferruh Yigit , "Singh, Aman Deep" , Andrew Rybchenko CC: "dev@dpdk.org" , Slava Ovsiienko , NBU-Contact-Thomas Monjalon , "jerinj@marvell.com" Thread-Topic: [dpdk-dev] [RFC] ethdev: change queue release callback Thread-Index: AQHXgpljDVfm/8YqW0ivT75D62VYsqtYApaAgBNREoCAAA5jAIABFCyggAAPMICAAACt4IABxOiAgAABFKCAAbYI4A== Date: Thu, 12 Aug 2021 14:29:09 +0000 Message-ID: References: <20210727034134.20556-1-xuemingl@nvidia.com> <24309185-57e8-9a21-6b3a-939c4d74f1e7@oktetlabs.ru> <3032fdb1-58a5-5470-9903-09b992c059d4@intel.com> <8f8178d5-65e5-43f4-fc17-f753183e8042@intel.com> <534241c3-4423-bfa9-b7ee-56f0f5e59f5f@intel.com> <94c1dc7a-cf48-7f35-59c8-20795cef3070@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: nvidia.com; dkim=none (message not signed) header.d=none;nvidia.com; dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c3a2ef84-a53d-4ec6-d6ba-08d95d9d8c19 x-ms-traffictypediagnostic: DM6PR12MB5536: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: l4n+6m2Bmsu6JZIeCPGfL5+wot1X+x/ytFUN09C3/nBUUffhS3SwDeWl+Ka0fNCOOgrtJlLveg93BUKvjyg3otwUwLfChkptq8sPjdV6wJ2WHmJVUUB2UKbL32M25uCL8jH5Z1CcwiqU+x1F0DyBwPDSuRKRDA8O+SUGB/38//rINzMxTe89qCU7ekK2qGjuZD7vyM7Sfu7NN0jv9KnML/YiWORqfdzSyYmlAmatlQaC4a9J/ePQ5YBL7A8XZMXLtfnaiyrwlfeAv4ReLx361FdtWUXU/QnPb7KODlybw7QUt0e//uaKzyayu2C/1IPQvdrRcZ80W4bRWOmS/JlY356/2L3VKwxQf9QmLInIiqEAui9mCkn7BzpG6njXu03iTMRA48Qk+1X6OlIAS8NISXqPhmengeJVPPmQ2OGJeex2dF4tEX9z++qVZgi1WCr/CkXkJYglLsPFZDb/TpE3zZSqxL8Nl+Bga90zGTxYf9OiZsxym77byB7811OsnXhSX/qew+03wLpA3khhdiQRzOfr7SRZN3ajbmdX3I9imt0YrrrpXTlLxrEGwgUsC9vgw+DTT2fb/xejp2OYVE/2tpflSIwGQnSf5Zc3StC9V0R/u8ekmn4qtmSS+3WhV9xiHenUybxu6sqImYnMtxtqA/aA4SuJy+nuh7CbE0w+5CtInaewgH+PSfhakGVXickpl+L7cX5qM1ze0MPa5ZR6Lg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5373.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(396003)(39860400002)(346002)(136003)(376002)(186003)(76116006)(54906003)(9686003)(122000001)(4326008)(66556008)(38070700005)(71200400001)(2906002)(64756008)(66446008)(478600001)(66476007)(55016002)(66946007)(38100700002)(33656002)(86362001)(53546011)(52536014)(8936002)(316002)(5660300002)(83380400001)(26005)(7696005)(6506007)(110136005)(8676002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?T0RmcjZPcDZ6T2VBMmZwU2JEVEwvUjNmQTBETUIrRG1pYmpvTU9vNll0UldX?= =?utf-8?B?UDFCeEFicS96Q3UwaWpGRW0rU3pHeWo5VC9GRUF5MEJ0dzdkKzVFd3BMR2c5?= =?utf-8?B?VnBKanZuSytVbC9ZUVNPdnZkWlVTR043YVhoejBNOStNRUVKb2JKZDQ3YVNS?= =?utf-8?B?UHpOazJSN0x5aXozWituQWxiNk1TU1Fyb2I0TDk2UUNpbVdEZ2wwWEsrVTlJ?= =?utf-8?B?em55UnFNNXh3WVVDeC9lQzJOS3F3VmcxWEhITTlTMDgyWStEZEpKalg0dy9G?= =?utf-8?B?alJRempjRU0yKzBJTmRJdDBXcHA3b3gxZmRrMkdGOE1IMmpQU2NQWEVDdDJv?= =?utf-8?B?cTRuaG5xODFORUh4K05uMXl2NHlQRDAvL0czZmpCaU02czR3OHVpU1hubk9j?= =?utf-8?B?N2I3a3dnbnhER2Y4SXc1aHZnSWVZWXpGWitSQWtoQm81bnR4cFh2d29FMHBt?= =?utf-8?B?cVJocGNSY0JhaXJUSmtscU42aGcvazlkUnF2aXI4YXE2WXdjeGVwL1ErNDFj?= =?utf-8?B?eE5aalE1V3BqeWRkQVZNcG9MQTRBcGpXUld2NVhCVklyTVdteXd0YWJFcHJF?= =?utf-8?B?UEZlaktVWlN0QURXamc0cG5IQXJETHpyWEVCZlh2WmlHakd5b0VNMFBtUjBy?= =?utf-8?B?QmU3NWVmR2pxdGEyRmR0S1J6MmtCMmJqZnA5Zkw5elF0MkZTQUZsTm5ZNFc1?= =?utf-8?B?TVV5d1NQVHBBTTFnL2FXbkVuTzhVWlVVa2dxeG81bGdPUE52ZDg5Q1N4UVVW?= =?utf-8?B?NzQxbUZnQnRXcm53bHpGeXdna2tnUE9DN29oRkhEYkhhOGJZc2RnOUp0Mmx5?= =?utf-8?B?VEJyTjU2RlFZRE94cmlpVkpxNjhEQUpCVWZwQkxRcHB6UkZnUXp2OUh3TjNJ?= =?utf-8?B?WlVaNDBoUDJkeE1hbXBKK2JwVlVQZEI2dmVpRWJ2ek1tOXVqMmNCTUkrK2JP?= =?utf-8?B?dE5tVFpocS9RRnZNRVlML21oNFIyK3RJdFdLSUp0K2sxanNnMEVwbk1acFhO?= =?utf-8?B?eGZuN0pKVytJZHBSQStTUnovaEZ4d01IZ0wvVDI2WUpCYTBEbTNuUTNNb0U3?= =?utf-8?B?UjBhRXRqc2d1QXJpWXNZZDFjK29YeklBdDZFSnpzNG1qUmhRQ3gyT1RRc2Zu?= =?utf-8?B?bmxVZ1BHRy9aekF5T0dQVXV5SVdadTVRT3JER2pDbmJuUXozdTV4MGZHdGJm?= =?utf-8?B?Zi9nQkZDeENGdnV6c1ZZaStzWk5Valc2VEJGbGNZYmFsNk5MN1pXM2pmekFk?= =?utf-8?B?UEpYV0daTjVsMGhLdklWaTA1OWgyU3lMa0dSYVpMempiQ1dvdDd1Z0V0NjlQ?= =?utf-8?B?c3Zya1ZvMFZQRlhmQUIvRjFRaHNJb1hBa2RGMGRleXNWUlVNakxoaXdqV1RS?= =?utf-8?B?cm5SZDkvekJlRTZKaXc5ek1yWTNwc1l2eUF2dlRscGhtMmJMSWtBZmQ1RUpV?= =?utf-8?B?cWg4M1JzVlNGeFpGcDFFTnJodzg3T2ppcXpZdFI2VFNYK1pkbDE4WGt6cGZr?= =?utf-8?B?Z0Rpb041ZTZPbkVNZGFBUFE2SmloYTZva3g3clRkZzZmWTkzamdqMXNTaGpE?= =?utf-8?B?bXBZclFVR0MwcjZzTm5JekRRRHJJOTUrSDV2bytLVmM0dVBNb1dmYVpveDEv?= =?utf-8?B?STdUVVhSYWhnNC9pMW1SaXhkTXlYKzZnK3RPTEF4OVQ4MlZhSkovZ0R3NE5N?= =?utf-8?B?dTJCbnRWeHZVdUVESzBRcDkydU5WQ0lBM0FSRktaRFhuc1pibEJ6VVJEblpM?= =?utf-8?Q?XHAgzafUmIqImixNBt9AB2jMXku2nZsTVuFQ50g?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5373.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3a2ef84-a53d-4ec6-d6ba-08d95d9d8c19 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Aug 2021 14:29:09.0930 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: PdA3unzpqRAo5G4aGiNgLfpT7nhTG7BOTCJ2laIQg0La27Gf3BGXqS5/4Wi86gidJO3KZ+mmTROjUQe2E4eNLA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB5536 Subject: Re: [dpdk-dev] [RFC] ethdev: change queue release callback 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 Sender: "dev" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2IDxkZXYtYm91bmNl c0BkcGRrLm9yZz4gT24gQmVoYWxmIE9mIFh1ZW1pbmcoU3RldmVuKSBMaQ0KPiBTZW50OiBXZWRu ZXNkYXksIEF1Z3VzdCAxMSwgMjAyMSA4OjEzIFBNDQo+IFRvOiBGZXJydWggWWlnaXQgPGZlcnJ1 aC55aWdpdEBpbnRlbC5jb20+OyBTaW5naCwgQW1hbiBEZWVwIDxhbWFuLmRlZXAuc2luZ2hAaW50 ZWwuY29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMu cnU+DQo+IENjOiBkZXZAZHBkay5vcmc7IFNsYXZhIE92c2lpZW5rbyA8dmlhY2hlc2xhdm9AbnZp ZGlhLmNvbT47IE5CVS1Db250YWN0LVRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5l dD47DQo+IGplcmluakBtYXJ2ZWxsLmNvbQ0KPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUkZD XSBldGhkZXY6IGNoYW5nZSBxdWV1ZSByZWxlYXNlIGNhbGxiYWNrDQo+IA0KPiANCj4gDQo+ID4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBGZXJydWggWWlnaXQgPGZlcnJ1 aC55aWdpdEBpbnRlbC5jb20+DQo+ID4gU2VudDogV2VkbmVzZGF5LCBBdWd1c3QgMTEsIDIwMjEg Nzo1OCBQTQ0KPiA+IFRvOiBYdWVtaW5nKFN0ZXZlbikgTGkgPHh1ZW1pbmdsQG52aWRpYS5jb20+ OyBTaW5naCwgQW1hbiBEZWVwDQo+ID4gPGFtYW4uZGVlcC5zaW5naEBpbnRlbC5jb20+OyBBbmRy ZXcgUnliY2hlbmtvDQo+ID4gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pg0KPiA+IENj OiBkZXZAZHBkay5vcmc7IFNsYXZhIE92c2lpZW5rbyA8dmlhY2hlc2xhdm9AbnZpZGlhLmNvbT47 DQo+ID4gTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0Pjsg amVyaW5qQG1hcnZlbGwuY29tDQo+ID4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1JGQ10gZXRo ZGV2OiBjaGFuZ2UgcXVldWUgcmVsZWFzZSBjYWxsYmFjaw0KPiA+DQo+ID4gT24gOC8xMC8yMDIx IDEwOjA3IEFNLCBYdWVtaW5nKFN0ZXZlbikgTGkgd3JvdGU6DQo+ID4gPg0KPiA+ID4NCj4gPiA+ PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4+IEZyb206IEZlcnJ1aCBZaWdpdCA8 ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gPiA+PiBTZW50OiBUdWVzZGF5LCBBdWd1c3QgMTAs IDIwMjEgNDo1NCBQTQ0KPiA+ID4+IFRvOiBYdWVtaW5nKFN0ZXZlbikgTGkgPHh1ZW1pbmdsQG52 aWRpYS5jb20+OyBTaW5naCwgQW1hbiBEZWVwDQo+ID4gPj4gPGFtYW4uZGVlcC5zaW5naEBpbnRl bC5jb20+OyBBbmRyZXcgUnliY2hlbmtvDQo+ID4gPj4gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRs YWJzLnJ1Pg0KPiA+ID4+IENjOiBkZXZAZHBkay5vcmc7IFNsYXZhIE92c2lpZW5rbyA8dmlhY2hl c2xhdm9AbnZpZGlhLmNvbT47DQo+ID4gPj4gTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmphbG9uIDx0 aG9tYXNAbW9uamFsb24ubmV0Pg0KPiA+ID4+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtSRkNd IGV0aGRldjogY2hhbmdlIHF1ZXVlIHJlbGVhc2UgY2FsbGJhY2sNCj4gPiA+Pg0KPiA+ID4+IE9u IDgvMTAvMjAyMSA5OjAzIEFNLCBYdWVtaW5nKFN0ZXZlbikgTGkgd3JvdGU6DQo+ID4gPj4+IEhp IFNpbmdoIGFuZCBGZXJydWgsDQo+ID4gPj4+DQo+ID4gPj4+PiAtLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KPiA+ID4+Pj4gRnJvbTogRmVycnVoIFlpZ2l0IDxmZXJydWgueWlnaXRAaW50ZWwu Y29tPg0KPiA+ID4+Pj4gU2VudDogTW9uZGF5LCBBdWd1c3QgOSwgMjAyMSAxMTozMSBQTQ0KPiA+ ID4+Pj4gVG86IFNpbmdoLCBBbWFuIERlZXAgPGFtYW4uZGVlcC5zaW5naEBpbnRlbC5jb20+OyBB bmRyZXcNCj4gPiA+Pj4+IFJ5YmNoZW5rbyA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+ OyBYdWVtaW5nKFN0ZXZlbikgTGkNCj4gPiA+Pj4+IDx4dWVtaW5nbEBudmlkaWEuY29tPg0KPiA+ ID4+Pj4gQ2M6IGRldkBkcGRrLm9yZzsgU2xhdmEgT3ZzaWllbmtvIDx2aWFjaGVzbGF2b0Budmlk aWEuY29tPjsNCj4gPiA+Pj4+IE5CVS1Db250YWN0LVRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1v bmphbG9uLm5ldD4NCj4gPiA+Pj4+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtSRkNdIGV0aGRl djogY2hhbmdlIHF1ZXVlIHJlbGVhc2UNCj4gPiA+Pj4+IGNhbGxiYWNrDQo+ID4gPj4+Pg0KPiA+ ID4+Pj4gT24gOC85LzIwMjEgMzozOSBQTSwgU2luZ2gsIEFtYW4gRGVlcCB3cm90ZToNCj4gPiA+ Pj4+PiBIaSBYdWVtaW5nLA0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gT24gNy8yOC8yMDIxIDE6MTAg UE0sIEFuZHJldyBSeWJjaGVua28gd3JvdGU6DQo+ID4gPj4+Pj4+IE9uIDcvMjcvMjEgNjo0MSBB TSwgWHVlbWluZyBMaSB3cm90ZToNCj4gPiA+Pj4+Pj4+IFRvIGFsaWduIHdpdGggb3RoZXIgZXRo IGRldmljZSBxdWV1ZSBjb25maWd1cmF0aW9uIGNhbGxiYWNrcywNCj4gPiA+Pj4+Pj4+IGNoYW5n ZSBSWCBhbmQgVFggcXVldWUgcmVsZWFzZSBjYWxsYmFjayBBUEkgcGFyYW1ldGVyIGZyb20NCj4g PiA+Pj4+Pj4+IHF1ZXVlIG9iamVjdCB0byBkZXZpY2UgYW5kIHF1ZXVlIGluZGV4Lg0KPiA+ID4+ Pj4+Pj4NCj4gPiA+Pj4+Pj4+IFNpZ25lZC1vZmYtYnk6IFh1ZW1pbmcgTGkgPHh1ZW1pbmdsQG52 aWRpYS5jb20+DQo+ID4gPj4+Pj4+DQo+ID4gPj4+Pj4+IEluIGZhY3QsIHRoZXJlIGlzIG5vIHN0 cm9uZyByZWFzb25zIHRvIGRvIGl0LCBidXQgSSB0aGluayBpdCBpcw0KPiA+ID4+Pj4+PiBhIG5p Y2UgY2xlYW51cCB0byB1c2UgKGRldiArIHF1ZXVlIGluZGV4KSBvbiBjb250cm9sIHBhdGguDQo+ ID4gPj4+Pj4+DQo+ID4gPj4+Pj4+IEhvcGVmdWxseSBpdCB3aWxsIG5vdCByZXN1bHQgaW4gYW55 IHJlZ3Jlc3Npb25zLg0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gQ29tYmluZWQgdGhlcmUgYXJlIDEw MCsgQVBJJ3MgZm9yIFJ4L1R4IHF1ZXVlX3JlbGVhc2UgdGhhdCBuZWVkDQo+ID4gPj4+Pj4gdG8g YmUgbW9kaWZpZWQgZm9yIGl0Lg0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gSSBiZWxpZXZlIGFsbCBy ZWdyZXNzaW9uIHBvc3NpYmlsaXRpZXMgaGVyZSB3aWxsIGJlIGNhdWdodCwgaW4NCj4gPiA+Pj4+ PiBjb21waWxhdGlvbiBwaGFzZSBpdHNlbGYuDQo+ID4gPj4+Pj4NCj4gPiA+Pj4+DQo+ID4gPj4+ PiBTYW1lIGhlcmUsIGl0IGlzIGEgZ29vZCBjbGVhbnVwIGJ1dCB0aGVyZSBpcyBubyBzdHJvbmcg cmVhc29uIGZvciBpdC4NCj4gPiA+Pj4+DQo+ID4gPj4+PiBTaW5jZSBpdCBpcyBhbGwgaW50ZXJu YWwsIHRoZXJlIGlzIG5vIEFCSSByZXN0cmljdGlvbiBvbiB0aGUNCj4gPiA+Pj4+IHBhdGNoLCBh bmQgdjIxLjExIHdpbGwgYmUgZnVsbCBBQkkgYnJlYWsgcGF0Y2hlcywgdG8gbm90IGNhdXNlIGNv bmZsaWN0cyB3aXRoIHRoaXMgY2hhbmdlLCB3aGF0IHdvdWxkIHlvdSB0aGluayB0byBoYXZlIGl0 IG9uDQo+IHYyMi4wMj8NCj4gPiA+Pj4NCj4gPiA+Pj4gVGhpcyBwYXRjaCBpcyByZXF1aXJlZCBi eSBzaGFyZWQtcnhxIGZlYXR1cmUgd2hpY2ggQUJJIGJyb2tlbiwgdGFyZ2V0IHRvIDIxLjExLg0K PiA+ID4+DQo+ID4gPj4gV2h5IGl0IGlzIHJlcXVpcmVkPw0KPiA+ID4NCj4gPiA+IEluIHJ4IGJ1 cnN0IGZ1bmN0aW9uLCByeHEgb2JqZWN0IGlzIHVzZWQgaW4gZGF0YSBwYXRoLiBGb3IgYmVzdCBk YXRhIHBlcmZvcm1hbmNlLCBpdCdzIHNoYXJlZC1yeHEgb2JqZWN0IGluIGNhc2Ugb2Ygc2hhcmVk IHJ4cSBlbmFibGVkLg0KPiA+ID4gSSB0aGluayBldGggYXBpIGRlZmluZWQgcnhxIG9iamVjdCBm b3IgcGVyZm9ybWFuY2UgYXMgd2VsbCwgc3BlY2lmaWMgb24gZGF0YSBwbGFuZS4NCj4gPiA+IEhh cmR3YXJlIHNhdmVzIHBvcnQgaW5mbyByZWNlaXZlZCBwYWNrZXQgZGVzY3JpcHRvciBmb3IgbXkg Y2FzZS4NCj4gPiA+IENhbid0IHRlbGwgd2hpY2ggZGV2aWNlJ3MgcXVldWUgd2l0aCB0aGlzIHNo YXJlZCByeHEgb2JqZWN0LCBjb250cm9sDQo+ID4gPiBwYXRoIGNhbid0IHVzZSB0aGlzIHNoYXJl ZCByeHEgYW55bW9yZSwgaGF2ZSB0byBiZSBzcGVjaWZpYyBvbg0KPiA+IGRldiBhbmQgcXVldWUg aWQuDQo+ID4gPg0KPiA+DQo+ID4gSSBoYXZlIHNlZW4gc2hhcmVkIFJ4IHF1ZXVlIHBhdGNoLCBi dXQgdGhhdCBqdXN0IGludHJvZHVjZXMgdGhlDQo+ID4gb2ZmbG9hZCBhbmQgZG9lc24ndCBoYXZl IHRoZSBQTUQgaW1wbGVtZW50YXRpb24sIHNvIGhhcmQgdG8gc2VlIHRoZSBkZXBlbmRlbmN5LCBj YW4geW91IHBsZWFzZSBwdXQgdGhlIHBzZXVkb2NvZGUgZm9yIFBNRHMNCj4gZm9yIHNoYXJlZC1y eHE/DQo+IA0KPiBUaGUgY29kZSBpcyBhbG1vc3QgcmVhZHksIEknbGwgdXBsb2FkIHRoZSBQTUQg cGFydCBzb29uLg0KDQpTZWVtcyBsb3RzIG9mIFBNRCBjb25mbGljdHMgdG8gcmViYXNlLCBoYXZl IHRvIGhvbGQgaXQgZHVlIHRvIG90aGVyIHVyZ2VudCB0YXNrcy4gSGVyZSBpcyB0aGUgb3ZlcmFs bCBkYXRhIHN0cnVjdHVyZToNClN0cnVjdCBtbHg1X3J4cV9jdHJsIHsNCglCb29sIHNoYXJlZDsN CglMSVNUX0hFQUQgb3duZXJzOyAvLyBvd25lciByeHEocykNCgkvLyBkYXRhcGF0aCByZXNvdXJj ZXMNCn0NClN0cnVjdCBtbHg1X3J4cV9wcml2IHsgLy8gcnggcXVldWUgDQoJVTE2IHF1ZXVlX2lu ZGV4Ow0KCUxJU1RfRU5UUlkgb3duZXJfZW50cnk7IC8vIG1lbWJlcnNoaXAgaW4gc2hhcmVkIHJ4 cQ0KCVN0cnVjdCBtbHg1X3J4cV9jdHJsICpjdHJsOyAvLyBzYXZlIHRvIGRldi0+ZGF0YS0+cnhf cXVldWVzW10NCgkvLyBvdGhlciBwZXIgcXVldWUgcmVzb3VyY2VzDQp9DQpSeHFfY3RybCBjb3Vs ZCBiZSAxOjEgbWFwcGluZyB0byByeHFfcHJpdiBpbiBjYXNlIG9mIHN0YW5kYXJkIHJ4cSwgMTpO IGluIGNhc2Ugb2Ygc2hhcmVkDQpTaGFyZWQgcnhxX2N0cmwgd2lsbCBiZSByZWxlYXNlZCB0aWxs IGxhc3Qgb3duZXIgcnhxX3ByaXYgcmVsZWFzZWQuDQoNCkJUVywgdjEgcG9zdGVkLCBwbGVhc2Ug Y2hlY2suDQoNCj4gQnV0IGZpcnN0bHksIEknbGwgdXBsb2FkIHYxIHBhdGNoIGZvciB0aGlzIFJG QywgdGhlIG1ha2UgUE1EIHBhdGNoZXMgZGVwZW5kcyBvbiB0aGlzIHYxIHBhdGNoLg0KPiANCj4g PiBIb3cgYSBxdWV1ZSB3aWxsIGtub3cgaWYgaXQgaXMgc2hhcmVkIG9yIG5vdCwgZHVyaW5nIHJl bGVhc2U/DQo+IA0KPiBUaGF0J3Mgd2h5IHRoaXMgUkZDIHdhbnQgdG8gY2hhbmdlIGNhbGxiYWNr IHBhcmFtZXRlciB0byBkZXZpY2UgYW5kIHF1ZXVlIGlkLg0KPiBUaGVyZSBpcyBhbiBvZmZsb2Fk aW5nIGZsYWcgZHVyaW5nIHJ4cSBzZXR1cCwgZWl0aGVyIGluIGRldmljZSBvciBpbiBxdWV1ZSBj b25maWd1cmF0aW9uLg0KPiBQTUQgZHJpdmVyIHNhdmVzIHRoZSBmbGFnIGFuZCBvcGVyYXRlIGFj Y29yZGluZ2x5Lg0KPiBFdGhkZXYgYXBpIGRvZXNuJ3QgbmVlZCB0byBzYXZlIHRoaXMsIHVubGVz cyBhIHNvbGlkIHJlYXNvbi4NCj4gDQo+ID4NCj4gPiBCdHcsIHNoYXJlZCBSeCBkb2Vzbid0IG1l bnRpb24gZnJvbSB0aGlzIGRlcGVuZGVuY3kgaW4gdGhlIHBhdGNoLg0KPiANCj4gQWdyZWUsIGlu ZGVlZCBhIHN0cm9uZyBkZXBlbmRlbmN5LCB0aGFua3MhDQo+IA0KPiA+DQo+ID4gPj4NCj4gPiA+ Pj4gSSdsbCBkbyBpdCBjYXJlZnVsbHksIGZvcnR1bmF0ZWx5LCB0aGUgY2hhbmdlIGlzIHN0cmFp Z2h0Zm9yd2FyZC4NCj4gPiA+Pj4NCj4gPiA+DQoNCg==