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 6ADD1A0C43; Wed, 20 Oct 2021 15:40:49 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 59147411BB; Wed, 20 Oct 2021 15:40:49 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2082.outbound.protection.outlook.com [40.107.237.82]) by mails.dpdk.org (Postfix) with ESMTP id B3F134118F for ; Wed, 20 Oct 2021 15:40:48 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A87Q088Dw+F6KakRfQ92v3/rfgPmJjFl99rq4mIrIAIgshJkrHQRBscW4GAVHvW+IlTdGCgZ25jgS1maldbcem+6qRB5F9mhAilD00MILzDHGGIPN0PJONq9tJsYTb4ijzHuQLY56gY4bZn4t56ce1QxjoJD3WssR2C3HuatfjkDZ4tgLA3lias6N6+UzLkpXAYQIwjUcOfhg0YzujOGrckpcoFqGyy2i77kFCfLoUlBfkOqazVN3ApECWQU4I7umTGuhKRDiMuyPN7pw3Asr6WkrivEALEsVfjhH5E8oNFpD5wL0kGUYLFbaBawi8uw3T4N6JAuSQU8CMmMShZJEQ== 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=aloQf62oacXne2+1OvssV5kPUK/38dgMS0VzFNDUUro=; b=dZXqzBUr1kvozDIk4XVKYaM1asxEg89vz4ddpy3RGE8omJIqIW39PbKFRaSZ8f166HtITqdo4a9WOYYMkNMsCN1oT0FEaCzOP3fg9ElSRP/u9LELYunwy9wYVlo427zQ2e5mA5g2zD/ZOgliIpa5NuxBtuYr1hj9Lb7kWHLMbODdeTMncuCulFFKZyFQJzgXol3sH/rRPHsht6moKhiIt3/w9XsCelQLm6MxCumKMDIJNcYFXCrh1hFtKxx0lns8GGgwYHHCiSOZHQzmgVtPzf1TRiZaGpev6PJiymJ0EkEw1s4l6DJEfzaUhgi2xnzrjYWCSHmcNUWMHTt7eLcy4w== 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=aloQf62oacXne2+1OvssV5kPUK/38dgMS0VzFNDUUro=; b=XUNz4NDS0tM4AUTGSlJah6HpIhO0sD//c6HwS9qbwpfw517stVn1iuSyLwSag8gts84KSqPPz56xkm3KBSCZ1QudYPA5a0NtPpkRnuU8u4DxKuSljMR4FZ3EtMeLeeloX5b3ArzbEMyyDdTaLHJauT8k8r/XdcBKFfYi2jOHpivUic61y53aU1IGPu4v+1BGL5uBHMltj/LYsU7bIS7RWzXP60J3PY+IKt+LCV/gEKrvDlvwdsSTGX8yz+7uPYodZupRc/yIiCvD6JmpCZPckix1bAsZ7nBpBudKRUHbwm5w8pQoYGKpabypPE6tnKQcK5Y98f8fBvd+ylB4eBebng== Received: from DM8PR12MB5400.namprd12.prod.outlook.com (2603:10b6:8:3b::12) by DM4PR12MB5344.namprd12.prod.outlook.com (2603:10b6:5:39f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4608.18; Wed, 20 Oct 2021 13:40:47 +0000 Received: from DM8PR12MB5400.namprd12.prod.outlook.com ([fe80::d03d:1f75:ca20:6a32]) by DM8PR12MB5400.namprd12.prod.outlook.com ([fe80::d03d:1f75:ca20:6a32%6]) with mapi id 15.20.4628.016; Wed, 20 Oct 2021 13:40:47 +0000 From: Ori Kam To: Dmitry Kozlyuk , Andrew Rybchenko , "dev@dpdk.org" CC: Qi Zhang , NBU-Contact-Thomas Monjalon , Ferruh Yigit Thread-Topic: [PATCH v3 1/6] ethdev: add capability to keep flow rules on restart Thread-Index: AQHXxZ7NuyMQD+M6R06eQplGNo+S1qvbw0AAgAAfR+A= Date: Wed, 20 Oct 2021 13:40:47 +0000 Message-ID: References: <20211015161822.3099818-1-dkozlyuk@nvidia.com> <20211019123722.3414694-1-dkozlyuk@nvidia.com> <20211019123722.3414694-2-dkozlyuk@nvidia.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: e92f46d9-3b9d-4001-9d09-08d993cf38f0 x-ms-traffictypediagnostic: DM4PR12MB5344: 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:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XqkI1R5IFaB7JdMVz+/Sc3Gwvs/tEwF395ZT6dAp8Rec5/0xIpeZPk5Xp7PUIqcdaJvUulE8OHga3ZHyGBsvdPlD35o28ZGtjiFgP+MsZ6kFSiPk3p+I2bLI4tot6m3ltzsY9KUuNpcYumeAW7yd8LPgcFjqEHyE0LlhAI7iFHnj1+vLarqnhQN/k+1UShl0HuY44YBSS/lzdqpiq8yve/IlvISskMEWf7yrinNCyKbk8wU9NCNx50TU1ST6pBwLs9XQYVQJs4SJCAl1XdMS2RbdBYPcXKCCeUZh+GuE+OpeaCWoXVolbVezJ84EIMuiZgaylNT9HjB7Esj68Uip2xV8B0xY18DRjus8dY11nETqiWb+VslJK4qPkUFJBxYgy1u57bzHgRTMFdollBpek3xI9E1mzVhfJLweEll7aVZTjB5PBfZu+o93/LCoc9giAHbwb+mzslWp23p0WM2Jytg5vZpNlji554ycVrv1VVlCMurZl0CdVIKvLKqRLiHisZrE66q8+BOvf8lFG8b1rtFvXpkC2tkuW4JrRpRdv8uZJDXBYAHqxsAHyMA0QRQPCxSOWXKib8RVFynBxrtmCgg5tzuo90FH61eiIwe0EDSDZVcTJyLqGFdFogT7CJkqnfLTsg97mGPYOIIkkqmETDTRyofxl1Lj5NQk5fBU4pfZ3Q0+DEYNWOZQERrpCtWi/5BgWa9tYz4hpDCFSV9FAQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM8PR12MB5400.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(186003)(7696005)(316002)(52536014)(53546011)(2906002)(6506007)(38100700002)(508600001)(110136005)(33656002)(64756008)(76116006)(38070700005)(66446008)(66556008)(71200400001)(4326008)(66946007)(66476007)(54906003)(122000001)(8936002)(86362001)(55016002)(9686003)(5660300002)(83380400001)(8676002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: wdO0OQ9WmU4R0au2SyYLWKORCPTRYI7hPY0yS+T1cK4hVpPlvnCEe9/dT7Ol9n/zFeMzp0fHLuRG/20ee4M4F1+a5ZPke2tOJi+Nn3tZ3BiFa3xxGHPRvOLbA7FMsfGzG1O2PqYvqBNi6en8j77ytuNxqeqS0lLCuHGZx0m/J3gl+bSf6AkHYNPIztoCySqLFSpSAv8KiMu01QU1KlzME0Bp7VjSXcftrxe/+j2O6ysLPJRF+jtzdswdfgEWtHF3VDGh4nIn1E26vtHo4qmx38RAPd8BtMNW4PUbcX7hq/fn/Cr+8tACZn5b+rZXVL9hk95/itv8apQxY94SNoAjD3CMLIZip6i0ipwU0iwbfKI= 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: DM8PR12MB5400.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e92f46d9-3b9d-4001-9d09-08d993cf38f0 X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Oct 2021 13:40:47.0689 (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: orika@nvidia.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5344 Subject: Re: [dpdk-dev] [PATCH v3 1/6] ethdev: add capability to keep flow rules on restart 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" SGkgRG1pdHJ5LA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IERtaXRy eSBLb3pseXVrIDxka296bHl1a0BudmlkaWEuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIE9jdG9i ZXIgMjAsIDIwMjEgMjo0MCBQTQ0KPiBTdWJqZWN0OiBSRTogW1BBVENIIHYzIDEvNl0gZXRoZGV2 OiBhZGQgY2FwYWJpbGl0eSB0byBrZWVwIGZsb3cgcnVsZXMgb24gcmVzdGFydA0KPiANCj4gDQo+ IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogQW5kcmV3IFJ5YmNo ZW5rbyA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+DQo+ID4gU2VudDogMjAg0L7QutGC 0Y/QsdGA0Y8gMjAyMSDQsy4gMTM6NDANCj4gPiBUbzogRG1pdHJ5IEtvemx5dWsgPGRrb3pseXVr QG52aWRpYS5jb20+OyBkZXZAZHBkay5vcmcNCj4gPiBDYzogUWkgWmhhbmcgPHFpLnouemhhbmdA aW50ZWwuY29tPjsgT3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47IE5CVS0NCj4gPiBDb250YWN0 LVRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5ldD47IEZlcnJ1aCBZaWdpdA0KPiA+ IDxmZXJydWgueWlnaXRAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjMgMS82 XSBldGhkZXY6IGFkZCBjYXBhYmlsaXR5IHRvIGtlZXAgZmxvdyBydWxlcyBvbg0KPiA+IHJlc3Rh cnQNCj4gPg0KPiA+IEV4dGVybmFsIGVtYWlsOiBVc2UgY2F1dGlvbiBvcGVuaW5nIGxpbmtzIG9y IGF0dGFjaG1lbnRzDQo+ID4NCj4gPg0KPiA+IE9uIDEwLzE5LzIxIDM6MzcgUE0sIERtaXRyeSBL b3pseXVrIHdyb3RlOg0KPiA+ID4gUHJldmlvdXNseSwgaXQgd2FzIG5vdCBzcGVjaWZpZWQgd2hh dCBoYXBwZW5zIHRvIHRoZSBmbG93IHJ1bGVzDQo+ID4gPiB3aGVuIHRoZSBkZXZpY2UgaXMgc3Rv cHBlZCwgcG9zc2libHkgcmVjb25maWd1cmVkLCB0aGVuIHN0YXJ0ZWQuDQo+ID4gPiBJZiBmbG93 IHJ1bGVzIHdlcmUga2VwdCwgaXQgY291bGQgYmUgY29udmVuaWVudCBmb3IgYXBwbGljYXRpb24N Cj4gPiA+IGRldmVsb3BlcnMsIGJlY2F1c2UgdGhleSB3b3VsZG4ndCBuZWVkIHRvIHNhdmUgYW5k IHJlc3RvcmUgdGhlbS4NCj4gPiA+IEhvd2V2ZXIsIGR1ZSB0byB0aGUgbnVtYmVyIG9mIGZsb3dz IGFuZCBwb3NzaWJsZSBjcmVhdGlvbiByYXRlIGl0IGlzDQo+ID4gPiBpbXByYWN0aWNhbCB0byBz YXZlIGFsbCBmbG93IHJ1bGVzIGluIERQREsgbGF5ZXIuIFRoaXMgbWVhbnMgdGhhdCBmbG93DQo+ ID4gPiBydWxlcyBwZXJzaXN0ZW5jZSByZWFsbHkgZGVwZW5kcyBvbiB3aGV0aGVyIFBNRCBhbmQg SFcgY2FuIGltcGxlbWVudCBpdA0KPiA+ID4gZWZmaWNpZW50bHkuIEl0IGNhbiBhbHNvIGJlIGxp bWl0ZWQgYnkgdGhlIHJ1bGUgaXRlbSBhbmQgYWN0aW9uIHR5cGVzLA0KPiA+ID4gYW5kIGl0cyBh dHRyaWJ1dGVzIHRyYW5zZmVyIGJpdCAoYSBjb21iaW5hdGlvbiBvZiBhbiBpdGVtL2FjdGlvbiB0 eXBlDQo+ID4gPiBhbmQgYSB2YWx1ZSBvZiB0aGUgdHJhbnNmZXIgYml0IGlzIGNhbGxlZCBhIHJ1 ZWwgZmVhdHVyZSkuDQo+ID4gPg0KPiA+ID4gQWRkIGEgZGV2aWNlIGNhcGFiaWxpdHkgYml0IGZv ciBQTURzIHRoYXQgY2FuIGtlZXAgYXQgbGVhc3Qgc29tZQ0KPiA+ID4gb2YgdGhlIGZsb3cgcnVs ZXMgYWNyb3NzIHJlc3RhcnQuIFdpdGhvdXQgdGhpcyBjYXBhYmlsaXR5IGJlaGF2aW9yDQo+ID4g PiBpcyBzdGlsbCB1bnNwZWNpZmllZCBhbmQgaXQgaXMgZGVjbGFyZWQgdGhhdCB0aGUgYXBwbGlj YXRpb24gbXVzdA0KPiA+ID4gZmx1c2ggdGhlIHJ1bGVzIGJlZm9yZSBzdG9wcGluZyB0aGUgZGV2 aWNlLg0KPiA+ID4gQWxsb3cgdGhlIGFwcGxpY2F0aW9uIHRvIHRlc3QgZm9yIHBlcnNpdGVuY2Ug b2YgcnVsZXMgdXNpbmcNCj4gPg0KPiA+IHBlcnNpdGVuY2UgLT4gcGVyc2lzdGVuY2UNCj4gPg0K PiA+ID4gYSBwYXJ0aWN1bGFyIGZlYXR1cmUgYnkgYXR0ZW1wdGluZyB0byBjcmVhdGUgYSBmbG93 IHJ1bGUNCj4gPiA+IHVzaW5nIHRoYXQgZmVhdHVyZSB3aGVuIHRoZSBkZXZpY2UgaXMgc3RvcHBl ZA0KPiA+ID4gYW5kIGNoZWNraW5nIGZvciB0aGUgc3BlY2lmaWMgZXJyb3IuDQo+ID4gPiBUaGlz IGlzIGxvZ2ljYWwgYmVjYXVzZSBpZiB0aGUgUE1EIGNhbiB0byBjcmVhdGUgdGhlIGZsb3cgcnVs ZQ0KPiA+ID4gd2hlbiB0aGUgZGV2aWNlIGlzIG5vdCBzdGFydGVkIGFuZCB1c2UgaXQgYWZ0ZXIg dGhlIHN0YXJ0IGhhcHBlbnMsDQo+ID4gPiBpdCBpcyBuYXR1cmFsIHRoYXQgaXQgY2FuIG1vdmUg aXRzIGludGVybmFsIGZsb3cgcnVsZSBvYmplY3QNCj4gPiA+IHRvIHRoZSBzYW1lIHN0YXRlIHdo ZW4gdGhlIGRldmljZSBpcyBzdG9wcGVkIGFuZCByZXN0b3JlIHRoZSBzdGF0ZQ0KPiA+ID4gd2hl biB0aGUgZGV2aWNlIGlzIHN0YXJ0ZWQuDQo+ID4gPg0KPiA+ID4gUnVsZSBwZXJzaXN0ZW5jZSBh Y3Jvc3MgYSByZWNvbmZpZ3VyYXRpb25zIGlzIG5vdCByZXF1aXJlZCwNCj4gPiA+IGJlY2F1c2Ug dHJhY2tpbmcgYWxsIHRoZSBydWxlcyBhbmQgY29uZmlndXJhdGlvbi1kZXBlbmRlbnQgcmVzb3Vy Y2VzDQo+ID4gPiB0aGV5IHVzZSBtYXkgYmUgaW5mZWFzaWJsZS4gSW4gY2FzZSBhIFBNRCBjYW5u b3Qga2VlcCB0aGUgcnVsZXMNCj4gPiA+IGFjcm9zcyByZWNvbmZpZ3VyYXRpb24sIGl0IGlzIGFs bG93ZWQganVzdCB0byByZXBvcnQgYW4gZXJyb3IuDQo+ID4gPiBBcHBsaWNhdGlvbiBtdXN0IHRo ZW4gZmx1c2ggdGhlIHJ1bGVzIGJlZm9yZSBhdHRlbXB0aW5nIGl0Lg0KPiA+ID4NCj4gPiA+IFNp Z25lZC1vZmYtYnk6IERtaXRyeSBLb3pseXVrIDxka296bHl1a0BudmlkaWEuY29tPg0KPiA+ID4g LS0tDQo+ID4gPiAgZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93LnJzdCB8IDI1ICsrKysr KysrKysrKysrKysrKysrKysrKysNCj4gPiA+ICBsaWIvZXRoZGV2L3J0ZV9ldGhkZXYuaCAgICAg ICAgICAgIHwgIDcgKysrKysrKw0KPiA+ID4gIGxpYi9ldGhkZXYvcnRlX2Zsb3cuaCAgICAgICAg ICAgICAgfCAgMSArDQo+ID4gPiAgMyBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspDQo+ ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5y c3QNCj4gPiBiL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3QNCj4gPiA+IGluZGV4 IDJiNDJkNWVjOGMuLmZmNjdiMjExZTMgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kb2MvZ3VpZGVzL3By b2dfZ3VpZGUvcnRlX2Zsb3cucnN0DQo+ID4gPiArKysgYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUv cnRlX2Zsb3cucnN0DQo+ID4gPiBAQCAtODcsNiArODcsMzEgQEAgVG8gYXZvaWQgcmVzb3VyY2Ug bGVha3Mgb24gdGhlIFBNRCBzaWRlLCBoYW5kbGVzIG11c3QNCj4gPiBiZSBleHBsaWNpdGx5DQo+ ID4gPiAgZGVzdHJveWVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBiZWZvcmUgcmVsZWFzaW5nIGFzc29j aWF0ZWQgcmVzb3VyY2VzIHN1Y2gNCj4gPiBhcw0KPiA+ID4gIHF1ZXVlcyBhbmQgcG9ydHMuDQo+ ID4gPg0KPiA+ID4gK0lmIGBgUlRFX0VUSF9ERVZfQ0FQQV9GTE9XX1JVTEVfS0VFUGBgIGlzIG5v dCBhZHZlcnRpc2VkLA0KPiA+ID4gK3J1bGVzIGNhbm5vdCBiZSBjcmVhdGVkIHVudGlsIHRoZSBk ZXZpY2UgaXMgc3RhcnRlZCBmb3IgdGhlIGZpcnN0IHRpbWUNCj4gPiA+ICthbmQgY2Fubm90IGJl IGtlcHQgd2hlbiB0aGUgZGV2aWNlIGlzIHN0b3BwZWQuDQo+ID4gPiArSG93ZXZlciwgUE1EIGFs c28gZG9lcyBub3QgZmx1c2ggdGhlbSBhdXRvbWF0aWNhbGx5IG9uIHN0b3AsDQo+ID4gPiArc28g dGhlIGFwcGxpY2F0aW9uIG11c3QgY2FsbCBgYHJ0ZV9mbG93X2ZsdXNoKClgYCBvcg0KPiA+IGBg cnRlX2Zsb3dfZGVzdHJveSgpYGANCj4gPiA+ICtiZWZvcmUgc3RvcHBpbmcgdGhlIGRldmljZSB0 byBlbnN1cmUgbm8gcnVsZXMgcmVtYWluLg0KPiA+ID4gKw0KPiA+ID4gK0lmIGBgUlRFX0VUSF9E RVZfQ0FQQV9GTE9XX1JVTEVfS0VFUGBgIGlzIGFkdmVydGlzZWQsIHRoaXMgbWVhbnMNCj4gPiA+ ICt0aGUgUE1EIGNhbiBrZWVwIGF0IGxlYXN0IHNvbWUgcnVsZXMgYWNyb3NzIHRoZSBkZXZpY2Ug c3RvcCBhbmQgc3RhcnQuDQo+ID4gPiArSG93ZXZlciwgYGBydGVfZXRoX2Rldl9jb25maWd1cmUo KWBgIG1heSBmYWlsIGlmIGFueSBydWxlcyByZW1haW4sDQo+ID4gPiArc28gdGhlIGFwcGxpY2F0 aW9uIG11c3QgZmx1c2ggdGhlbSBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlY29uZmlndXJhdGlvbi4N Cj4gPiA+ICtLZWVwaW5nIG1heSBiZSB1bnN1cHBvcnRlZCBmb3Igc29tZSB0eXBlcyBvZiBydWxl IGl0ZW1zIGFuZCBhY3Rpb25zLA0KPiA+ID4gK2FzIHdlbGwgYXMgZGVwZW5kaW5nIG9uIHRoZSB2 YWx1ZSBvZiBmbG93IGF0dHJpYnV0ZXMgdHJhbnNmZXIgYml0Lg0KPiA+ID4gK0EgY29tYmluYXRp b24gb2YgYW4gaXRlbSBvciBhY3Rpb24gdHlwZSBhbmQgYSB2YWx1ZSBvZiB0aGUgdHJhbnNmZXIg Yml0DQo+ID4gPiAraXMgY2FsbGVkIGEgcnVsZSBmZWF0dXJlLg0KPiA+DQo+ID4gQXMgSSBzYWlk IGJlZm9yZSBhIGNvbWJpbmF0aW9uIGlzIHZlcnkgaGFyZCB0byB0ZXN0IGFuZA0KPiA+IHVuZnJp ZW5kbHkgdG8gYXBwbGljYXRpb25zLiBEbyB3ZSByZWFsbHkgbmVlZCB0byBtYWtlIGl0DQo+ID4g dGhhdCBjb21wbGV4Pw0KPiANCj4gTWF5YmUgdGhlIHdvcmRpbmcgaXMgbm90IGV4cGxpY2l0IGVu b3VnaCwNCj4gYnV0IGl0IGV4YWN0bHkgYXR0ZW1wdHMgdG8gYWRkcmVzcyB5b3VyIHByZXZpb3Vz IGNvbW1lbnQuDQo+IEluIHYzLCBhcHBsaWNhdGlvbnMgZG9uJ3QgbmVlZCB0byBjaGVjayBmb3Ig YSBmdWxsIGNvbWJpbmF0aW9uDQo+IG9mIGl0ZW0gdHlwZXMsIGFjdGlvbnMgdHlwZXMsIGFuZCBh IHRyYW5zZmVyIGJpdCB2YWx1ZS4NCj4gSW5zdGVhZCwgdGhleSBvbmx5IG5lZWQgdG8gY2hlY2sg Zm9yIGEgY29tYmluYXRpb24NCj4gb2Ygb25lIHR5cGUgKG9mIGFuIGl0ZW0gb3IgYW4gYWN0aW9u KSB3aXRoIGEgdHJhbnNmZXIgYml0IHZhbHVlLg0KPiBUaGVyZSBpcyBhbiBleGFtcGxlIGJlbG93 IGluIHRoZSB0ZXh0Lg0KPiANCj4gPiBXaGljaCBQTURzIGFyZSBnb2luZyB0byBzdXBwb3J0IGl0 PyBXaGljaCBjYXNlcyB3aWxsIHJlYWxseQ0KPiA+IGJlIGRpc3Rpbmd1aXNoZWQgYW5kIHdpbGwg aGF2ZSBkaWZmZXJlbnQgc3VwcG9ydCAoa2VlcCBvciBub3QpPw0KPiA+DQo+ID4gPiArVG8gdGVz dCBpZiBydWxlcyB3aXRoIGEgcGFydGljdWxhciBmZWF0dXJlIGFyZSBrZXB0LCB0aGUgYXBwbGlj YXRpb24NCj4gPiBtdXN0IHRyeQ0KPiA+ID4gK3RvIGNyZWF0ZSBhIHZhbGlkIHJ1bGUgdXNpbmcg dGhpcyBmZWF0dXJlIHdoZW4gdGhlIGRldmljZSBpcyBzdG9wcGVkDQo+ID4gPiArKGFmdGVyIGl0 IGhhcyBiZWVuIGNvbmZpZ3VyZWQgb3Igc3RhcnRlZCBwcmV2aW91c2x5KS4NCj4gPg0KPiA+IFNv cnJ5LCBpdCBoYXJkbHkgbWFrZXMgc2Vuc2UuIERvZXMgaXQgc3VnZ2VzdCBhbiBhcHBsaWNhdGlv bg0KPiA+IHRvOg0KPiA+ICAxLiBjb25maWd1cmUNCj4gPiAgMi4gc3RhcnQNCj4gPiAgMy4gc3Rv cA0KPiA+ICA0LiBjaGVjay9jcmVhdGUgZmxvdyBydWxlcw0KPiA+ICA1LiBzdGFydCBhZ2Fpbg0K PiA+IGFzIGEgcmVndWxhciBzdGFydCBzZXF1ZW5jZSBpbnN0ZWFkIG9mIGp1c3QgY29uZmlndXJl K3N0YXJ0Lg0KPiA+IElNSE8sIGl0IG11c3QgYmUgcG9zc2libGUgdG8gY2hlY2sganVzdCBhZnRl ciBjb25maWd1cmUgd2l0aG91dA0KPiA+IHN0YXJ0LiBPdGhlcndpc2UgaXQgbG9va3MgcmVhbGx5 IGJhZC4NCj4gDQo+IE9mIGNvdXJzZSwgdGhlIGZvbGxvd2luZyBzZXF1ZW5jZSBpcyBtZWFudDoN Cj4gMS4gQ29uZmlndXJlDQo+IDIuIFRyeSB0byBjcmVhdGUgZmxvdyBydWxlcyB3aXRoIG5lZWRl ZCBmZWF0dXJlcywNCj4gICAgY2hlY2sgZm9yIFJURV9GTE9XX0VSUk9SX1RZUEVfU1RBVEUuDQo+ ICAgIElmIGFuZCBvbmx5IGlmIHRoZSB0ZXN0IHJ1bGVzIGFyZSBub3QgbmVlZGVkLCBkZXN0cm95 IHRoZW0uDQo+IDMuIFN0YXJ0DQo+IA0KPiBUaGUgc2VxdWVuY2UgeW91IG91dGxpbmVkIGlzIGFs c28gcG9zc2libGUsIGJ1dCBpdCBpcyBub3QgbmVjZXNzYXJ5Lg0KPiBJdCBtYXkgZXZlbiBiZSB1 c2VmdWwsIGZvciBleGFtcGxlLCBpZiBhbiBhcHBsaWNhdGlvbiBpcyBzd2l0Y2hpbmcgdGhlIHdv cmtsb2FkDQo+IGFuZCBoYXMgYSBuZXcgc2V0IG9mIHJ1bGUgZmVhdHVyZXMgdG8gY2hlY2suDQo+ IA0KPiA+DQo+ID4gPiArSWYgaXQgZmFpbHMgd2l0aCBhbiBlcnJvciBvZiB0eXBlIGBgUlRFX0ZM T1dfRVJST1JfVFlQRV9TVEFURWBgLA0KPiA+ID4gK3J1bGVzIHVzaW5nIHRoaXMgZmVhdHVyZSBh cmUgZmx1c2hlZCB3aGVuIHRoZSBkZXZpY2UgaXMgc3RvcHBlZC4NCj4gPg0KPiA+IFdoaWNoIGVu dGl0eSBkb2VzIGZsdXNoIGl0Pw0KPiANCj4gUE1EIGRvZXMuDQo+IE92ZXJhbGwgYXBwcm9hY2gg aXMgYXMgZm9sbG93czoNCj4gbm8gY2FwYWJpbGl0eSA9PiBubyBndWFyYW50ZWVzLCB0aGUgYXBw bGljYXRpb24gbXVzdCBtYW5hZ2UgdGhlIGVudGl0aWVzIGl0c2VsZjsNCj4gaGF2ZSBjYXBhYmls aXR5ID0+IFBNRCBtYW5hZ2VzIHRoZSBlbnRpdGllcywgb25seSBpdCBtYXkgYmUgdW5hYmxlIHRv IGtlZXAgc29tZS4NCj4gDQoNCkkgZG9uJ3QgdGhpbmsgaXQgc2hvdWxkIGJlIHRoZSBQTUQgcmVz cG9uc2liaWxpdHkuDQppdCBpcyBhbHdheXMgdGhlIGFwcGxpY2F0aW9uLA0KaWYgUE1EIHJldHVy bnMgYGBSVEVfRkxPV19FUlJPUl9UWVBFX1NUQVRFYGAgaXQgbWVhbnMgdGhhdCB0aGUgYXBwbGlj YXRpb24NCm11c3QgZGVzdHJveSB0aGUgcnVsZXMgYmVmb3JlIHN0b3AuDQpTaW5jZSB0aGUgUE1E IHNhaWQgaXQgY2FuJ3Qga2VlcCB0aGUgZmxvd3MgaXQgbWF5IG1lYW4gdGhhdCBoZSBjYW4ndCB0 cmFjayB0aGVtDQpzbyBpdCBjYW4ndCByZW1vdmUgdGhlbS4NCg0KDQo+ID4gPiArSWYgaXQgc3Vj ZWVkcywgc3VjaCBydWxlcyB3aWxsIGJlIGtlcHQgd2hlbiB0aGUgZGV2aWNlIGlzIHN0b3BwZWQs DQo+ID4NCj4gPiBzdWNlZWRzIC0+IHN1Y2NlZWRzDQo+ID4NCj4gPiBrZXB0IGFuZCBmdW5jdGlv bmFsPyBJLmUuIHRyYW5zZmVyIHJ1bGVzIHN0aWxsIHJvdXRlIHRyYWZmaWMgdG8NCj4gPiBvdGhl ciBwb3J0cyB3aGljaCBjb3VsZCBiZSB1cCBhbmQgcnVubmluZy4NCj4gDQo+IFVubGVzcyB5b3Ug b3IgYW55b25lIG9iamVjdCwgaXQncyBrZXB0LCBidXQgbm9uLWZ1bmN0aW9uYWwsDQo+IGJlY2F1 c2UgdGhlIHNlbWFudGljIG9mIHBvcnQgc3RvcCBpcyB0byBzdG9wIHRyYWZmaWMgcHJvY2Vzc2lu Zy4NCj4gQSB0cmFuc2ZlciBydWxlIGNhbiBtZW50aW9uIGFueSBwb3J0LCBidXQgSSB0aGluayBp dCBzaG91bGQgYmUgY29udHJvbGxlZA0KPiB2aWEgdGhlIG9uZSB0aGF0IGNyZWF0ZWQgaXQuDQo+ IEluIGFueSBjYXNlLCB0aGlzIG11c3QgYmUgc3RhdGVkIGV4cGxpY2l0bHkgaW4gdjQuDQoNCkJl c3QsDQpPcmkNCg==