From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2DEDEA04B7; Wed, 14 Oct 2020 13:42:37 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0EA931DC4D; Wed, 14 Oct 2020 13:42:36 +0200 (CEST) Received: from hqnvemgate26.nvidia.com (hqnvemgate26.nvidia.com [216.228.121.65]) by dpdk.org (Postfix) with ESMTP id 079E01DC47 for ; Wed, 14 Oct 2020 13:42:32 +0200 (CEST) Received: from hqmail.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate26.nvidia.com (using TLS: TLSv1.2, AES256-SHA) id ; Wed, 14 Oct 2020 04:42:18 -0700 Received: from HQMAIL101.nvidia.com (172.20.187.10) by HQMAIL109.nvidia.com (172.20.187.15) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 14 Oct 2020 11:42:18 +0000 Received: from NAM02-BL2-obe.outbound.protection.outlook.com (104.47.38.52) by HQMAIL101.nvidia.com (172.20.187.10) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Wed, 14 Oct 2020 11:42:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Zk+9odp6WeCnQ2hbXve0gtAr9zI3ROt+hDtl1e1WOlsXYMHQ4aBQuzZQarXrzhxDYfSObGcoNRxQoDmHZvsyq01WLBONRczVpaOLzvzmlgcUfU9ob0RFKFDvZq9vZNOUTt+mklVWnq7h41rIFwsA0oGpjspRQyI8C2TxTDA8jwAiwDwPoLDpGQ+UQUGVY0ysQZ9JO25v+Nv96hxDzd0gJU214DBmU/i1hlDvW339Jx7E0PVw+JKrBOrB+cwudQtnFmSvZKUK9LJU68ID6YeanQDskgozzO5W4FHyyIiQqS8TUOsNM3PqROBZJMBXxOrquaC8+x9ls2NiuWgO0VB1IQ== 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=uHH2DGQh9U6Y4JeZSlpiiVy8Poeijqe4oCdioLUjV4k=; b=jOkm5ezEkf2EazM/DOlrdwzde7MkgoRYODyNlTOedYVQlK6VmTTYHKEVbCBecfIhgTQl7QpBdeBqTf2CUu+3W6F3ntC3RNR+VUg4MQXwLBxeTimxic/pGhVLmHuCR6W3gWLNYvj23unKEjUFEIuQPlfoCHNz5V89AetmZGv81Fo/kSiiPi6bhluavF1jLVdpi8CZyEXQoKto3Rj4w6UiopUrGWwyMteOLAUF9NkzRi/D0bVEUsiLZ5x8IHn1DaXUSDimIg5wvj9ojWdTm0wySmTUlYPKWnPIv+sVwn/AEl9e0K/9pKbFoS2dd3mwcozq599+JiziHKr0XJaV0ySaow== 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 Received: from MWHPR1201MB2525.namprd12.prod.outlook.com (2603:10b6:300:e0::19) by MWHPR1201MB2476.namprd12.prod.outlook.com (2603:10b6:300:de::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.22; Wed, 14 Oct 2020 11:42:17 +0000 Received: from MWHPR1201MB2525.namprd12.prod.outlook.com ([fe80::3ccb:ec09:9346:54b1]) by MWHPR1201MB2525.namprd12.prod.outlook.com ([fe80::3ccb:ec09:9346:54b1%7]) with mapi id 15.20.3477.021; Wed, 14 Oct 2020 11:42:16 +0000 From: Andrey Vesnovaty To: Andrew Rybchenko , "dev@dpdk.org" CC: "jer@marvell.com" , "jerinjacobk@gmail.com" , NBU-Contact-Thomas Monjalon , "ferruh.yigit@intel.com" , "stephen@networkplumber.org" , "bruce.richardson@intel.com" , Ori Kam , Slava Ovsiienko , "andrey.vesnovaty@gmail.com" , "mdr@ashroe.eu" , "nhorman@tuxdriver.com" , "ajit.khaparde@broadcom.com" , "samik.gupta@broadcom.com" Thread-Topic: [dpdk-dev] [PATCH v7 1/2] ethdev: add flow shared action API Thread-Index: AQHWnWm2rCwoe3NncEu6tcF3cwumgamUCoyAgAGZ+FCAAQ0CAIAAUWdw Date: Wed, 14 Oct 2020 11:42:16 +0000 Message-ID: References: <20200702120511.16315-1-andreyv@mellanox.com> <20201008115143.13208-1-andreyv@nvidia.com> <20201008115143.13208-2-andreyv@nvidia.com> <3d2a7271-3e5b-9527-481b-5086e9a7affd@oktetlabs.ru> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: oktetlabs.ru; dkim=none (message not signed) header.d=none;oktetlabs.ru; dmarc=none action=none header.from=nvidia.com; x-originating-ip: [87.71.167.32] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a8b9680c-fc23-44b4-1b49-08d870363398 x-ms-traffictypediagnostic: MWHPR1201MB2476: 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-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: IMkhAv2bAhf4/nPjv7Bc18Phh9HI4iLI5j2icTbh2Asz2hrHrNYVk4qA0HR2xNy6K8gJk/giRBMTiOWv2AkSrxmldgXZz4LFF0ViyZftvGT9UtSO9sPFfN8XHfDuWz3ZkbtFr3tixcObP/6Chmi+qAzK/ItAKXT3HD6/FtMNvdcXKJqSOFv2BQvOz4nQPHBMOUW/yBmR3lTHn8+QKQ6R8q1sYX3Bdd16cAEtojxHO6/nnno/19YXZH1YauFv/NT7qccCHF6bsw8q9E9SbcfanE3Egrj0kf+Nslq2m0SQoFQ0t11dWYJmxwSZgB6nok5G5bAGGVAMtT2eWR0lmBRfog== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MWHPR1201MB2525.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(136003)(376002)(366004)(396003)(39860400002)(66476007)(478600001)(26005)(316002)(86362001)(9686003)(110136005)(55016002)(6506007)(7696005)(53546011)(2906002)(186003)(54906003)(33656002)(30864003)(5660300002)(7416002)(66556008)(52536014)(66946007)(64756008)(66446008)(76116006)(8676002)(8936002)(4326008)(71200400001)(83380400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: Bc/t1KD6yNW6gCLrYtrNRgItw3IQpahb3ppA7WHhlw/bkOYLYpDGMvvma52K9W+NukpCFDJkitYSr3VcYnG6DM/OSXu2cnJEgJqxJb2sp7DXinpqo0F3tUFX7pSG1GpEJz3WupaUXcG+uShlT8aAu5G9MQKZcw82WiESvbbSZcK6H4Qm/B5vvK3T2e4MkQVb8PxpbiXPpCIwOx+/VAvDplYz+o2Ho1ieYNZryryngIbVYkjS4/6Sd6sxH5oECDoqwDU9nFlONJWbUo79i54TTJcVA7JUwwsj6zlwILmN6yhRx7EB4grd2bkuasRACa/VRycST7oYdy+c5US6nMf+6wR61nonyhB0LDiosYzaVESMtkoCNuQ+Af1k+bW1QcM6rfr5qG0EI12jdjbUKDDbI5aqQyhpeNUEelvfIF6kqFoUWR/UCTLV1ou9ViYvisORIZDStIlvCWSeeiyduATIQvVhdQHjbM2Iubws28l8tqesnVwTiRnOsYhqU09zxs3yWv0jFeho+aaVLEI2aYpuVJfQ4DZs8NOzwSFqpe4lJzE406zzVsaSNmK8VszTR1fz9AxbOZLNCxaMEYyL3iZjynd+KEB+utPSdGrfAXCAaN13PFrEBA0HN3TpR9uyS3blgjYup6eTh7tjAGULfA584w== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR1201MB2525.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a8b9680c-fc23-44b4-1b49-08d870363398 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Oct 2020 11:42:16.6307 (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: 1Mh12LC0yrQ1LQEMiA9RMm5ChJwK3Kyxmr9+7g4LcpgJxsBMBR+Mh1XbdMzJTjmrCCEqNnRvQFnVq5Tsl4fGfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1201MB2476 X-OriginatorOrg: Nvidia.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1602675738; bh=uHH2DGQh9U6Y4JeZSlpiiVy8Poeijqe4oCdioLUjV4k=; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To: CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References: In-Reply-To:Accept-Language:Content-Language:X-MS-Has-Attach: X-MS-TNEF-Correlator:authentication-results:x-originating-ip: x-ms-publictraffictype:x-ms-office365-filtering-correlation-id: x-ms-traffictypediagnostic:x-ld-processed: x-ms-exchange-transport-forked:x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers:x-ms-exchange-senderadcheck: x-microsoft-antispam:x-microsoft-antispam-message-info: x-forefront-antispam-report:x-ms-exchange-antispam-messagedata: Content-Type:Content-Transfer-Encoding:MIME-Version: X-MS-Exchange-CrossTenant-AuthAs: X-MS-Exchange-CrossTenant-AuthSource: X-MS-Exchange-CrossTenant-Network-Message-Id: X-MS-Exchange-CrossTenant-originalarrivaltime: X-MS-Exchange-CrossTenant-fromentityheader: X-MS-Exchange-CrossTenant-id:X-MS-Exchange-CrossTenant-mailboxtype: X-MS-Exchange-CrossTenant-userprincipalname: X-MS-Exchange-Transport-CrossTenantHeadersStamped:X-OriginatorOrg; b=qZdZUQF0+qegCVik9CY0qXPei81b5jEjALfX8GGDxyM4vu1Dv7Z2qNNcTxwysZZ/e PRXgTvHhhhtSY4PVaD19s0xYOIUJa91UaR+HqQ7W0Zk5RG+TDXp0eC5wg7OQS4HCbx ZpivLZnWWIpG1tjcIF73pNKlGYRg0u+5z1sIrGhiu2HuHuoAmKvFcUqjJCQ/Cmc9uC d6G97UaP1sMwAb8rrdn7gE8GlUywaMhQCMLfM6fg+BLIAOH7IaU/XYQ2IzAICbpV8c 8wQpCqn5Y/UYxUKQZ7rmBq72zTYzzfhV4G3IKHvcI9l1MWuHJzBRmpdFUb8j0C6lpx vBZ2ZOCp2wSLA== Subject: Re: [dpdk-dev] [PATCH v7 1/2] ethdev: add flow shared action API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" SGkgQW5kcmV3DQoNCkFsbCB5b3VyIHN1Z2dlc3Rpb25zIGFwcGxpZWQgaW4gdjggc2VyaWVzLg0K DQpUaGFua3MsDQpBbmRyZXkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9t OiBBbmRyZXcgUnliY2hlbmtvIDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT4NCj4gU2Vu dDogV2VkbmVzZGF5LCBPY3RvYmVyIDE0LCAyMDIwIDk6NTAgQU0NCj4gVG86IEFuZHJleSBWZXNu b3ZhdHkgPGFuZHJleXZAbnZpZGlhLmNvbT47IGRldkBkcGRrLm9yZw0KPiBDYzogamVyQG1hcnZl bGwuY29tOyBqZXJpbmphY29ia0BnbWFpbC5jb207IE5CVS1Db250YWN0LVRob21hcyBNb25qYWxv bg0KPiA8dGhvbWFzQG1vbmphbG9uLm5ldD47IGZlcnJ1aC55aWdpdEBpbnRlbC5jb207DQo+IHN0 ZXBoZW5AbmV0d29ya3BsdW1iZXIub3JnOyBicnVjZS5yaWNoYXJkc29uQGludGVsLmNvbTsgT3Jp IEthbQ0KPiA8b3Jpa2FAbnZpZGlhLmNvbT47IFNsYXZhIE92c2lpZW5rbyA8dmlhY2hlc2xhdm9A bnZpZGlhLmNvbT47DQo+IGFuZHJleS52ZXNub3ZhdHlAZ21haWwuY29tOyBtZHJAYXNocm9lLmV1 OyBuaG9ybWFuQHR1eGRyaXZlci5jb207DQo+IGFqaXQua2hhcGFyZGVAYnJvYWRjb20uY29tOyBz YW1pay5ndXB0YUBicm9hZGNvbS5jb20NCj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENI IHY3IDEvMl0gZXRoZGV2OiBhZGQgZmxvdyBzaGFyZWQgYWN0aW9uIEFQSQ0KPiANCj4gSGkgQW5k cmV5LA0KPiANCj4gT24gMTAvMTMvMjAgMTE6MDYgUE0sIEFuZHJleSBWZXNub3ZhdHkgd3JvdGU6 DQo+ID4gSGkgQW5kcmV3Lg0KPiA+DQo+ID4gVGhhbmtzIGZvciB0aGUgaW5wdXQuDQo+ID4gQWxs IHNwZWxsaW5nICYgcmVwaHJhc2VzIHdpbGwgYmUgYXBwbGllZCAgUFNCIGZvciB0aGUgcmVzdC4N Cj4gPiBXaWxsIHB1Ymxpc2ggdjggdmVyeSBzb29uLg0KPiA+DQo+ID4gVGhhbmtzLA0KPiA+IEFu ZHJleQ0KPiA+DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IEFu ZHJldyBSeWJjaGVua28gPEFuZHJldy5SeWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pg0KPiA+PiBTZW50 OiBNb25kYXksIE9jdG9iZXIgMTIsIDIwMjAgNToxOSBQTQ0KPiA+PiBUbzogQW5kcmV5IFZlc25v dmF0eSA8YW5kcmV5dkBudmlkaWEuY29tPjsgZGV2QGRwZGsub3JnDQo+ID4+IENjOiBqZXJAbWFy dmVsbC5jb207IGplcmluamFjb2JrQGdtYWlsLmNvbTsgTkJVLUNvbnRhY3QtVGhvbWFzDQo+IE1v bmphbG9uDQo+ID4+IDx0aG9tYXNAbW9uamFsb24ubmV0PjsgZmVycnVoLnlpZ2l0QGludGVsLmNv bTsNCj4gPj4gc3RlcGhlbkBuZXR3b3JrcGx1bWJlci5vcmc7IGJydWNlLnJpY2hhcmRzb25AaW50 ZWwuY29tOyBPcmkgS2FtDQo+ID4+IDxvcmlrYUBudmlkaWEuY29tPjsgU2xhdmEgT3ZzaWllbmtv IDx2aWFjaGVzbGF2b0BudmlkaWEuY29tPjsNCj4gPj4gYW5kcmV5LnZlc25vdmF0eUBnbWFpbC5j b207IG1kckBhc2hyb2UuZXU7IG5ob3JtYW5AdHV4ZHJpdmVyLmNvbTsNCj4gPj4gYWppdC5raGFw YXJkZUBicm9hZGNvbS5jb207IHNhbWlrLmd1cHRhQGJyb2FkY29tLmNvbQ0KPiA+PiBTdWJqZWN0 OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjcgMS8yXSBldGhkZXY6IGFkZCBmbG93IHNoYXJlZCBh Y3Rpb24gQVBJDQo+ID4+DQo+ID4+ICJhZGQgZmxvdyBzaGFyZWQgYWN0aW9uIEFQSSINCj4gPj4N Cj4gPj4gSXMgZmxvdyBzaGFyZWQ/IE1heSBiZSAiYWRkIHNoYXJlZCBhY3Rpb25zIHRvIGZsb3cg QVBJIi4NCj4gPg0KPiA+IEFjY2VwdGVkLCB3aWxsIHVwZGF0ZSBjb21taXQgbWVzc2FnZS4NCj4g Pj4NCj4gPj4gT24gMTAvOC8yMCAyOjUxIFBNLCBBbmRyZXkgVmVzbm92YXR5IHdyb3RlOg0KPiA+ Pj4gVGhpcyBjb21taXQgaW50cm9kdWNlcyBleHRlbnNpb24gb2YgRFBESyBmbG93IGFjdGlvbiBB UEkgZW5hYmxpbmcNCj4gPj4NCj4gPj4gIlRoaXMgY29tbWl0IiBhbmQgIkRQREsiIGFyZSBub3Qg bmVjZXNzYXJ5IGluIGRlc2NyaXB0aW9uLg0KPiA+PiBJdCBpcyBhIGNvbW1pdCBkZXNjcmlwdGlv biBhbmQgdGhlIHBhdGNoIGlzIHRvIERQREsgdHJlZS4NCj4gPj4gQ29uc2lkZXIganVzdDoNCj4g Pj4gIkludHJvZHVjZSBleHRlbnNpb24gb2YgZmxvdyBhY3Rpb24gQVBJIGVuYWJsaW5nLi4uIg0K PiA+DQo+ID4gQWNjZXB0ZWQsIHdpbGwgdXBkYXRlIGNvbW1pdCBtZXNzYWdlLg0KPiA+Pg0KPiA+ Pj4gc2hhcmluZyBvZiBzaW5nbGUgcnRlX2Zsb3dfYWN0aW9uIGluIG11bHRpcGxlIGZsb3dzLiBU aGUgQVBJIGludGVuZGVkIGZvcg0KPiA+Pj4gUE1Ecywgd2hlcmUgbXVsdGlwbGUgSFcgb2ZmbG9h ZGVkIGZsb3dzIGNhbiByZXVzZSB0aGUgc2FtZSBIVw0KPiA+Pj4gZXNzZW5jZS9vYmplY3QgcmVw cmVzZW50aW5nIGZsb3cgYWN0aW9uIGFuZCBtb2RpZmljYXRpb24gb2Ygc3VjaCBhbg0KPiA+Pj4g ZXNzZW5jZS9vYmplY3QgYWZmZWN0cyBhbGwgdGhlIHJ1bGVzIHVzaW5nIGl0Lg0KPiA+Pj4NCj4g Pj4+IE1vdGl2YXRpb24gYW5kIGV4YW1wbGUNCj4gPj4+ID09PQ0KPiA+Pj4gQWRkaW5nIG9yIHJl bW92aW5nIG9uZSBvciBtb3JlIHF1ZXVlcyB0byBSU1MgdXNlZCBieSBtdWx0aXBsZSBmbG93IHJ1 bGVzDQo+ID4+PiBpbXBvc2VzIHBlciBydWxlIHRvbGwgZm9yIGN1cnJlbnQgRFBESyBmbG93IEFQ STsgdGhlIHNjZW5hcmlvIHJlcXVpcmVzDQo+ID4+PiBmb3IgZWFjaCBmbG93IHNoYXJpbmcgY2xv bmVkIFJTUyBhY3Rpb246DQo+ID4+PiAtIGNhbGwgYHJ0ZV9mbG93X2Rlc3Ryb3koKWANCj4gPj4+ IC0gY2FsbCBgcnRlX2Zsb3dfY3JlYXRlKClgIHdpdGggbW9kaWZpZWQgUlNTIGFjdGlvbg0KPiA+ Pj4NCj4gPj4+IEFQSSBmb3Igc2hhcmluZyBhY3Rpb24gYW5kIGl0cyBpbi1wbGFjZSB1cGRhdGUg YmVuZWZpdHM6DQo+ID4+PiAtIHJlZHVjZSB0aGUgb3ZlcmhlYWQgb2YgbXVsdGlwbGUgUlNTIGZs b3cgcnVsZXMgcmVjb25maWd1cmF0aW9uDQo+ID4+PiAtIG9wdGltaXplIHJlc291cmNlIHV0aWxp emF0aW9uIGJ5IHNoYXJpbmcgYWN0aW9uIGFjcm9zcyBtdWx0aXBsZQ0KPiA+Pj4gICBmbG93cw0K PiA+Pj4NCj4gPj4+IENoYW5nZSBkZXNjcmlwdGlvbg0KPiA+Pj4gPT09DQo+ID4+Pg0KPiA+Pj4g U2hhcmVkIGFjdGlvbg0KPiA+Pj4gPT09DQo+ID4+PiBJbiBvcmRlciB0byByZXByZXNlbnQgZmxv dyBhY3Rpb24gc2hhcmVkIGJ5IG11bHRpcGxlIGZsb3dzIG5ldyBhY3Rpb24NCj4gPj4+IHR5cGUg UlRFX0ZMT1dfQUNUSU9OX1RZUEVfU0hBUkVEIGlzIGludHJvZHVjZWQgKHNlZSBgZW51bQ0KPiA+ Pj4gcnRlX2Zsb3dfYWN0aW9uX3R5cGVgKS4NCj4gPj4+IEFjdHVhbGx5IHRoZSBpbnRyb2R1Y2Vk IEFQSSBkZWNvdXBsZXMgYWN0aW9uIGZyb20gYW55IHNwZWNpZmljIGZsb3cgYW5kDQo+ID4+PiBl bmFibGVzIHNoYXJpbmcgb2Ygc2luZ2xlIGFjdGlvbiBieSBpdHMgaGFuZGxlIGFjcm9zcyBtdWx0 aXBsZSBmbG93cy4NCj4gPj4+DQo+ID4+PiBTaGFyZWQgYWN0aW9uIGNyZWF0ZS91c2UvZGVzdHJv eQ0KPiA+Pj4gPT09DQo+ID4+PiBTaGFyZWQgYWN0aW9uIG1heSBiZSByZXVzZWQgYnkgc29tZSBv ciBub25lIGZsb3cgcnVsZXMgYXQgYW55IGdpdmVuDQo+ID4+PiBtb21lbnQsIGkuZS4gc2hhcmVk IGFjdGlvbiByZXNpZGVzIG91dHNpZGUgb2YgdGhlIGNvbnRleHQgb2YgYW55IGZsb3cuDQo+ID4+ PiBTaGFyZWQgYWN0aW9uIHJlcHJlc2VudCBIVyByZXNvdXJjZXMvb2JqZWN0cyB1c2VkIGZvciBh Y3Rpb24gb2ZmbG9hZGluZw0KPiA+Pj4gaW1wbGVtZW50YXRpb24uDQo+ID4+PiBBUEkgZm9yIHNo YXJlZCBhY3Rpb24gY3JlYXRlIChzZWUgYHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25fY3JlYXRlKClg KToNCj4gPj4+IC0gc2hvdWxkIGFsbG9jYXRlIEhXIHJlc291cmNlcyBhbmQgbWFrZSByZWxhdGVk IGluaXRpYWxpemF0aW9ucyByZXF1aXJlZA0KPiA+Pj4gICBmb3Igc2hhcmVkIGFjdGlvbiBpbXBs ZW1lbnRhdGlvbi4NCj4gPj4+IC0gbWFrZSBuZWNlc3NhcnkgcHJlcGFyYXRpb25zIHRvIG1haW50 YWluIHNoYXJlZCBhY2Nlc3MgdG8NCj4gPj4+ICAgdGhlIGFjdGlvbiByZXNvdXJjZXMsIGNvbmZp Z3VyYXRpb24gYW5kIHN0YXRlLg0KPiA+Pj4gQVBJIGZvciBzaGFyZWQgYWN0aW9uIGRlc3Ryb3kg KHNlZSBgcnRlX2Zsb3dfc2hhcmVkX2FjdGlvbl9kZXN0cm95KClgKQ0KPiA+Pj4gc2hvdWxkIHJl bGVhc2UgSFcgcmVzb3VyY2VzIGFuZCBtYWtlIHJlbGF0ZWQgY2xlYW51cHMgcmVxdWlyZWQgZm9y IHNoYXJlZA0KPiA+Pj4gYWN0aW9uIGltcGxlbWVudGF0aW9uLg0KPiA+Pj4NCj4gPj4+IEluIG9y ZGVyIHRvIHNoYXJlIHNvbWUgZmxvdyBhY3Rpb24gcmV1c2UgdGhlIGhhbmRsZSBvZiB0eXBlDQo+ ID4+PiBgc3RydWN0IHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25gIHJldHVybmVkIGJ5DQo+ID4+PiBy dGVfZmxvd19zaGFyZWRfYWN0aW9uX2NyZWF0ZSgpIGFzIGEgYGNvbmZgIGZpZWxkIG9mDQo+ID4+ PiBgc3RydWN0IHJ0ZV9mbG93X2FjdGlvbmAgKHNlZSAiZXhhbXBsZSIgc2VjdGlvbikuDQo+ID4+ Pg0KPiA+Pj4gSWYgc29tZSBzaGFyZWQgYWN0aW9uIG5vdCB1c2VkIGJ5IGFueSBmbG93IHJ1bGUg YWxsIHJlc291cmNlcyBhbGxvY2F0ZWQNCj4gPj4+IGJ5IHRoZSBzaGFyZWQgYWN0aW9uIGNhbiBi ZSByZWxlYXNlZCBieSBydGVfZmxvd19zaGFyZWRfYWN0aW9uX2Rlc3Ryb3koKQ0KPiA+Pj4gKHNl ZSAiZXhhbXBsZSIgc2VjdGlvbikuIFRoZSBzaGFyZWQgYWN0aW9uIGhhbmRsZSBwYXNzZWQgYXMg YXJndW1lbnQgdG8NCj4gPj4+IGRlc3Ryb3kgQVBJIHNob3VsZCBub3QgYmUgdXNlZCBhbnkgZnVy dGhlciBpLmUuIHJlc3VsdCBvZiB0aGUgdXNhZ2UgaXMNCj4gPj4+IHVuZGVmaW5lZC4NCj4gPj4+ DQo+ID4+PiBTaGFyZWQgYWN0aW9uIHJlLWNvbmZpZ3VyYXRpb24NCj4gPj4+ID09PQ0KPiA+Pj4g U2hhcmVkIGFjdGlvbiBiZWhhdmlvciBkZWZpbmVkIGJ5IGl0cyBjb25maWd1cmF0aW9uIGNhbiBi ZSB1cGRhdGVkIHZpYQ0KPiA+Pj4gcnRlX2Zsb3dfc2hhcmVkX2FjdGlvbl91cGRhdGUoKSAoc2Vl ICJleGFtcGxlIiBzZWN0aW9uKS4gVGhlIHNoYXJlZA0KPiA+Pj4gYWN0aW9uIHVwZGF0ZSBvcGVy YXRpb24gbW9kaWZpZXMgSFcgcmVsYXRlZCByZXNvdXJjZXMvb2JqZWN0cyBhbGxvY2F0ZWQNCj4g Pj4+IG9uIHRoZSBhY3Rpb24gY3JlYXRpb24uIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBwZXJm b3JtZWQgYnkgdGhlIHVwZGF0ZQ0KPiA+Pj4gb3BlcmF0aW9uIHNob3VsZCBub3QgZGVwZW5kIG9u IHRoZSBudW1iZXIgb2YgZmxvd3Mgc2hhcmluZyB0aGUgcmVsYXRlZA0KPiA+Pj4gYWN0aW9uLiBP biByZXR1cm4gb2Ygc2hhcmVkIGFjdGlvbiB1cGRhdGUgQVBJIGFjdGlvbiBiZWhhdmlvciBzaG91 bGQgYmUNCj4gPj4+IGFjY29yZGluZyB0byB1cGRhdGVkIGNvbmZpZ3VyYXRpb24gZm9yIGFsbCBm bG93cyBzaGFyaW5nIHRoZSBhY3Rpb24uDQo+ID4+Pg0KPiA+Pj4gU2hhcmVkIGFjdGlvbiBxdWVy eQ0KPiA+Pj4gPT09DQo+ID4+PiBQcm92aWRlIHNlcGFyYXRlIEFQSSB0byBxdWVyeSBzaGFyZWQg YWN0aW9uIHN0YXRlIChzZWUNCj4gPj4+IHJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25fdXBkYXRlKCkp LiBUYWtpbmcgYSBjb3VudGVyIGFzIGFuIGV4YW1wbGU6IHF1ZXJ5DQo+ID4+PiByZXR1cm5zIHZh bHVlIGFnZ3JlZ2F0aW5nIGFsbCBjb3VudGVyIGluY3JlbWVudHMgYWNyb3NzIGFsbCBmbG93IHJ1 bGVzDQo+ID4+PiBzaGFyaW5nIHRoZSBjb3VudGVyLiBUaGlzIEFQSSBkb2Vzbid0IHF1ZXJ5IHNo YXJlZCBhY3Rpb24gY29uZmlndXJhdGlvbg0KPiA+Pj4gc2luY2UgaXQgaXMgY29udHJvbGxlZCBi eSBydGVfZmxvd19zaGFyZWRfYWN0aW9uX2NyZWF0ZSgpIGFuZA0KPiA+Pj4gcnRlX2Zsb3dfc2hh cmVkX2FjdGlvbl91cGRhdGUoKSBBUElzIGFuZCBubyBzdXBwb3NlZCB0byBjaGFuZ2UgYnkgb3Ro ZXINCj4gPj4+IG1lYW5zLg0KPiA+Pj4NCj4gPj4+IFBNRCBzdXBwb3J0DQo+ID4+PiA9PT0NCj4g Pj4+IFRoZSBzdXBwb3J0IG9mIGludHJvZHVjZWQgQVBJIGlzIHB1cmUgUE1EIHNwZWNpZmljIGRl c2lnbiBhbmQNCj4gPj4+IHJlc3BvbnNpYmlsaXR5IGZvciBlYWNoIGFjdGlvbiB0eXBlIChzZWUg c3RydWN0IHJ0ZV9mbG93X29wcykuDQo+ID4+Pg0KPiA+Pj4gdGVzdHBtZA0KPiA+Pj4gPT09DQo+ ID4+PiBJbiBvcmRlciB0byB1dGlsaXplIGludHJvZHVjZWQgQVBJIHRlc3RwbWQgY2xpIG1heSBp bXBsZW1lbnQgZm9sbG93aW5nDQo+ID4+PiBleHRlbnNpb24NCj4gPj4+IGNyZWF0ZS91cGRhdGUv ZGVzdHJveS9xdWVyeSBzaGFyZWQgYWN0aW9uIGFjY29yZGluZ2x5DQo+ID4+Pg0KPiA+Pj4gZmxv dyBzaGFyZWRfYWN0aW9uIChwb3J0KSBjcmVhdGUge2FjdGlvbl9pZCAoaWQpfSAoYWN0aW9uKSAv IGVuZA0KPiA+Pj4gZmxvdyBzaGFyZWRfYWN0aW9uIChwb3J0KSB1cGRhdGUgKGlkKSAoYWN0aW9u KSAvIGVuZA0KPiA+Pj4gZmxvdyBzaGFyZWRfYWN0aW9uIChwb3J0KSBkZXN0cm95IGFjdGlvbl9p ZCAoaWQpIHthY3Rpb25faWQgKGlkKSBbLi4uXX0NCj4gPj4+IGZsb3cgc2hhcmVkX2FjdGlvbiAo cG9ydCkgcXVlcnkgKGlkKQ0KPiA+Pj4NCj4gPj4+IHRlc3RwbWQgZXhhbXBsZQ0KPiA+Pj4gPT09 DQo+ID4+Pg0KPiA+Pj4gY29uZmlndXJlIHJzcyB0byBxdWV1ZXMgMSAmIDINCj4gPj4+DQo+ID4+ Pj4gZmxvdyBzaGFyZWRfYWN0aW9uIDAgY3JlYXRlIGFjdGlvbl9pZCAxMDAgcnNzIHF1ZXVlcyAx IDIgZW5kIC8gZW5kDQo+ID4+Pg0KPiA+Pj4gY3JlYXRlIGZsb3cgcnVsZSB1dGlsaXppbmcgc2hh cmVkIGFjdGlvbg0KPiA+Pj4NCj4gPj4+PiBmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgXA0KPiA+Pj4g ICAgIHBhdHRlcm4gZXRoIGRzdCBpcyAwYzo0MjphMToxNTpmZDphYyAvIGlwdjYgLyB0Y3AgLyBl bmQgXA0KPiA+Pj4gICBhY3Rpb25zIHNoYXJlZCAxMDAgLyBlbmQNCj4gPj4+DQo+ID4+PiBhZGQg MiBtb3JlIHF1ZXVlcw0KPiA+Pj4NCj4gPj4+PiBmbG93IHNoYXJlZF9hY3Rpb24gMCBtb2RpZnkg MTAwIHJzcyBxdWV1ZXMgMSAyIDMgNCBlbmQgLyBlbmQNCj4gPj4NCj4gPj4gdGVzdHBtZCBpcyBv dXQtb2Ytc2NvcGUgb2YgdGhlIHBhdGNoIGFuZCBpdCBpcyBiZXR0ZXIgdG8NCj4gPj4gcmVtb3Zl IHRoZSBkZXNjcmlwdGlvbiB0byBhdm9pZCB1bnN5bmMgaWYgdGVzdHBtZA0KPiA+PiBjb21tYW5k cyBhcmUgY2hhbmdlZC4NCj4gPg0KPiA+IFRoZXJlIGlzIHN0aWxsIGFkZGVkIHZhbHVlIGlzIHRl c3RwbWQgZXhhbXBsZSBkZW1vbnN0cmF0aW5nIHVzYWdlIG9mDQo+ID4gc2hhcmVkIGFjdGlvbiB3 aXRoIHJ0ZSBmbG93cy4gSSB3aWxsIHVwZGF0ZSB0aGUgZXhhbXBsZSB0byByZWZsZWN0IHRoZSBj dXJyZW50DQo+ID4gdGVzdHBtZCBzeW50YXggZm9yIHNoYXJlZCBhY3Rpb24uDQo+IA0KPiBZZXMg YW5kIG5vLiBJTUhPIEl0IHdvdWxkIGJlIE9LIGZvciBzZXJpZXMgZGVzY3JpcHRpb24gZXRjLA0K PiBidXQgbm90IE9LIGZvciB0aGUgY2hhbmdlc2V0IGRlc2NyaXB0aW9uIHdoaWNoIHdpbGwgYmUN Cj4ga2VwdCBpbiB0aGUgaGlzdG9yeSBhbmQgd2lsbCBiZWNvbWUgbWlzbGVhZGluZyB3aGVuDQo+ IGNvbW1hbmRzIGFyZSBjaGFuZ2VkLiBJIHRoaW5rIHRoYXQgbm8gaW5mb3JtYXRpb24gaXMgYmV0 dGVyDQo+IHRoYW4gcG90ZW50aWFsbHkgd3JvbmcgaW5mb3JtYXRpb24uDQo+IA0KPiBbc25pcF0N Cj4gDQo+ID4+PiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0aGRldl92ZXJz aW9uLm1hcA0KPiA+PiBiL2xpYi9saWJydGVfZXRoZGV2L3J0ZV9ldGhkZXZfdmVyc2lvbi5tYXAN Cj4gPj4+IGluZGV4IGM5NWVmNTE1N2EuLmE4YTQ4MjFkYmIgMTAwNjQ0DQo+ID4+PiAtLS0gYS9s aWIvbGlicnRlX2V0aGRldi9ydGVfZXRoZGV2X3ZlcnNpb24ubWFwDQo+ID4+PiArKysgYi9saWIv bGlicnRlX2V0aGRldi9ydGVfZXRoZGV2X3ZlcnNpb24ubWFwDQo+ID4+PiBAQCAtMjI5LDYgKzIy OSwxMCBAQCBFWFBFUklNRU5UQUwgew0KPiA+Pj4gIAkjIGFkZGVkIGluIDIwLjExDQo+ID4+PiAg CXJ0ZV9ldGhfbGlua19zcGVlZF90b19zdHI7DQo+ID4+PiAgCXJ0ZV9ldGhfbGlua190b19zdHI7 DQo+ID4+PiArCXJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25fY3JlYXRlOw0KPiA+Pj4gKwlydGVfZmxv d19zaGFyZWRfYWN0aW9uX2Rlc3Ryb3k7DQo+ID4+PiArCXJ0ZV9mbG93X3NoYXJlZF9hY3Rpb25f dXBkYXRlOw0KPiA+Pj4gKwlydGVfZmxvd19zaGFyZWRfYWN0aW9uX3F1ZXJ5Ow0KPiA+Pg0KPiA+ PiBTaG91bGRuJ3QgaXQgYmUgYWxwaGFiZXRpY2FsbHkgc29ydGVkPw0KPiA+DQo+ID4gUXVlcnkg YmVmb3JlIHVwZGF0ZT8NCj4gDQo+IHllcw0KPiANCj4gW3NuaXBdDQo+IA0KPiA+Pj4gZGlmZiAt LWdpdCBhL2xpYi9saWJydGVfZXRoZGV2L3J0ZV9mbG93LmggYi9saWIvbGlicnRlX2V0aGRldi9y dGVfZmxvdy5oDQo+ID4+PiBpbmRleCBkYThiZmE1NDg5Li45MDUwYWRlYzIzIDEwMDY0NA0KPiA+ Pj4gLS0tIGEvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2Zsb3cuaA0KPiA+Pj4gKysrIGIvbGliL2xp YnJ0ZV9ldGhkZXYvcnRlX2Zsb3cuaA0KPiANCj4gW3NuaXBdDQo+IA0KPiA+Pj4gQEAgLTMzNTcs NiArMzM4MCwxNTAgQEAgaW50DQo+ID4+PiAgcnRlX2Zsb3dfZ2V0X2FnZWRfZmxvd3ModWludDE2 X3QgcG9ydF9pZCwgdm9pZCAqKmNvbnRleHRzLA0KPiA+Pj4gIAkJCXVpbnQzMl90IG5iX2NvbnRl eHRzLCBzdHJ1Y3QgcnRlX2Zsb3dfZXJyb3IgKmVycm9yKTsNCj4gPj4+DQo+ID4+PiArLyoqDQo+ ID4+PiArICogU3BlY2lmeSBzaGFyZWQgYWN0aW9uIGNvbmZpZ3VyYXRpb24NCj4gPj4+ICsgKi8N Cj4gPj4+ICtzdHJ1Y3QgcnRlX2Zsb3dfc2hhcmVkX2FjdGlvbl9jb25mIHsNCj4gPj4+ICsJLyoq DQo+ID4+PiArCSAqIEZsb3cgZGlyZWN0aW9uIGZvciBzaGFyZWQgYWN0aW9uIGNvbmZpZ3VyYXRp b24uDQo+ID4+PiArCSAqDQo+ID4+PiArCSAqIFNocmVkIGFjdGlvbiBzaG91bGQgYmUgdmFsaWQg YXQgbGVhc3QgZm9yIG9uZSBmbG93IGRpcmVjdGlvbiwNCj4gPj4+ICsJICogb3RoZXJ3aXNlIGl0 IGlzIGludmFsaWQgZm9yIGJvdGggaW5ncmVzcyBhbmQgZWdyZXNzIHJ1bGVzLg0KPiA+Pj4gKwkg Ki8NCj4gPj4+ICsJdWludDMyX3QgaW5ncmVzczoxOw0KPiA+Pj4gKwkvKio8IEFjdGlvbiB2YWxp ZCBmb3IgcnVsZXMgYXBwbGllZCB0byBpbmdyZXNzIHRyYWZmaWMuICovDQo+ID4+PiArCXVpbnQz Ml90IGVncmVzczoxOw0KPiA+Pj4gKwkvKio8IEFjdGlvbiB2YWxpZCBmb3IgcnVsZXMgYXBwbGll ZCB0byBlZ3Jlc3MgdHJhZmZpYy4gKi8NCj4gPj4+ICt9Ow0KPiA+Pj4gKw0KPiA+Pj4gKy8qKg0K PiA+Pj4gKyAqIEB3YXJuaW5nDQo+ID4+PiArICogQGIgRVhQRVJJTUVOVEFMOiB0aGlzIEFQSSBt YXkgY2hhbmdlIHdpdGhvdXQgcHJpb3Igbm90aWNlLg0KPiA+Pj4gKyAqDQo+ID4+PiArICogQ3Jl YXRlIHNoYXJlZCBhY3Rpb24gZm9yIHJldXNlIGluIG11bHRpcGxlIGZsb3cgcnVsZXMuDQo+ID4+ PiArICogVGhlIGNyZWF0ZWQgc2hhcmVkIGFjdGlvbiBoYXMgc2luZ2xlIHN0YXRlIGFuZCBjb25m aWd1cmF0aW9uDQo+ID4+PiArICogYWNyb3NzIGFsbCBmbG93IHJ1bGVzIHVzaW5nIGl0Lg0KPiA+ Pj4gKyAqDQo+ID4+PiArICogQHBhcmFtW2luXSBwb3J0X2lkDQo+ID4+PiArICogICAgVGhlIHBv cnQgaWRlbnRpZmllciBvZiB0aGUgRXRoZXJuZXQgZGV2aWNlLg0KPiA+Pj4gKyAqIEBwYXJhbVtp bl0gY29uZg0KPiA+Pj4gKyAqICAgU2hhcmVkIGFjdGlvbiBjb25maWd1cmF0aW9uLg0KPiA+Pj4g KyAqIEBwYXJhbVtpbl0gYWN0aW9uDQo+ID4+PiArICogICBBY3Rpb24gY29uZmlndXJhdGlvbiBm b3Igc2hhcmVkIGFjdGlvbiBjcmVhdGlvbi4NCj4gPj4+ICsgKiBAcGFyYW1bb3V0XSBlcnJvcg0K PiA+Pj4gKyAqICAgUGVyZm9ybSB2ZXJib3NlIGVycm9yIHJlcG9ydGluZyBpZiBub3QgTlVMTC4g UE1EcyBpbml0aWFsaXplIHRoaXMNCj4gPj4+ICsgKiAgIHN0cnVjdHVyZSBpbiBjYXNlIG9mIGVy cm9yIG9ubHkuDQo+ID4+PiArICogQHJldHVybg0KPiA+Pj4gKyAqICAgQSB2YWxpZCBoYW5kbGUg aW4gY2FzZSBvZiBzdWNjZXNzLCBOVUxMIG90aGVyd2lzZSBhbmQgcnRlX2Vycm5vIGlzIHNldA0K PiA+Pj4gKyAqICAgdG8gb25lIG9mIHRoZSBlcnJvciBjb2RlcyBkZWZpbmVkOg0KPiA+Pj4gKyAq ICAgLSAoRU5PU1lTKSBpZiB1bmRlcmx5aW5nIGRldmljZSBkb2VzIG5vdCBzdXBwb3J0IHRoaXMg ZnVuY3Rpb25hbGl0eS4NCj4gPj4+ICsgKiAgIC0gKEVJTykgaWYgdW5kZXJseWluZyBkZXZpY2Ug aXMgcmVtb3ZlZC4NCj4gPj4+ICsgKiAgIC0gKEVJTlZBTCkgaWYgKmFjdGlvbiogaW52YWxpZC4N Cj4gPj4+ICsgKiAgIC0gKEVOT1RTVVApIGlmICphY3Rpb24qIHZhbGlkIGJ1dCB1bnN1cHBvcnRl ZC4NCj4gPj4NCj4gPj4gRU5PREVWID8NCj4gPg0KPiA+IENhbiB5b3UgZWxhYm9yYXRlPw0KPiAN Cj4gDQo+IEVOT0RFViBpcyByZXR1cm5lZCBpZiBwb3J0X2lkIGlzIGludmFsaWQgYW5kIGl0IHNo b3VsZCBiZQ0KPiBkb2N1bWVudGVkIGhlcmUgaWYgeW91IHRyeSB0byBsaXN0IGFsbCByZXR1cm4g dmFsdWVzLg0K