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 E3E34A0C43; Wed, 28 Jul 2021 16:08:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 692A9410ED; Wed, 28 Jul 2021 16:08:24 +0200 (CEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2049.outbound.protection.outlook.com [40.107.220.49]) by mails.dpdk.org (Postfix) with ESMTP id 468BC40E64 for ; Wed, 28 Jul 2021 16:08:22 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n/CH2m00yqrIN/sl+qa6NHAQIavTl+Z7LFxB4PqSpfydugP041dDNfcXj695oU9fEi4CpjcUsmIKINg7LyI9FocdVr9gV3TUmj3BTeJHS4mFw3P888TwbC6wXwyyEfsfdxpCEEgR+5xe2YnOqsLTvEUAA91aRPCKiP40ep17pkwgNY461yhn0yNyzYwMNkG8/NG6Sz1kv2v1cGwi+o4fvXNb4/ZZxekaeTUcCa0cKE2e58yf4mzfbflseNs+UB8X/FWgsj0KwIbd3V9VlHXbVoFB5ksiP33ih8iptGrPY3inh/l0C7AEexu+2J2Latf17MTPZ9r/MKK7dz1ZkkyveQ== 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=HbcztCm0ENs/buacp2AiT7Cr+qv5AjqYfGdSHZxPz2A=; b=UzFCpMqZp2f9alNM4Q4/OA1DgOH+lIDcj8ze+7YzzQQQ/rQuMFmO1RmOcJyijOpRwC+ocl6Z+YhQ1DmSmxda+Rm3K2l4woCagvui17qRV7tFMNvWFNOaufBe+Mso1tRcl7bJjQyE16hI2sA0zfCJUjkZcWhDVyvv5zA0z5/c5gJj+HpZQydO9ClFWmy6+uksEbU+NOiygMk8QMmUgdLialnSFQwKxZTRmBrydOJsQRhvlTwDGHU52n9pYSWWOvPH+PtlPsUCTldtdjIqd7zLi/OxMXKw+8bv1lsR2kxdlv6w3AZpV/JFFCOBTyoSniiK/qqHwKLJTDbpUASmWUm7lg== 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=HbcztCm0ENs/buacp2AiT7Cr+qv5AjqYfGdSHZxPz2A=; b=GX5rIShC3RX4eoTau9egFFfbwl7Aw7UeVDjeeoyphPo7mrxcFg7IctBTn3EFwGdO4QK4kfiS0TKVXdl+QyX9sQclbj+PWw4HT0MqF5msMXCghK/4MN8A4YwL1aSHAH99eceYkuEUHJ2tT37lt4SexIq32SwQmh2++M+DUW+vuyi1QYGbRkNsSjvn7Y6KbHAaeU3lRpdLv3U+9j3nwfJd+cEc/JzytBLKxI+63z+SPEuiPoU0SAnihEwLIBUE4qXKscggBDb7lzF4CDPxP3+5FfnoDZr9bSsC3POZwXbUoOU77Cx7cZo//ohewoM12juZObLOt8do9I43UJe/BoktdA== Received: from CH0PR12MB5091.namprd12.prod.outlook.com (2603:10b6:610:be::10) by CH0PR12MB5156.namprd12.prod.outlook.com (2603:10b6:610:bb::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18; Wed, 28 Jul 2021 14:08:20 +0000 Received: from CH0PR12MB5091.namprd12.prod.outlook.com ([fe80::c9ec:8409:83e9:6b3c]) by CH0PR12MB5091.namprd12.prod.outlook.com ([fe80::c9ec:8409:83e9:6b3c%7]) with mapi id 15.20.4373.018; Wed, 28 Jul 2021 14:08:20 +0000 From: Dmitry Kozlyuk To: Andrew Rybchenko , "dev@dpdk.org" CC: David Marchand , Ori Kam Thread-Topic: [dpdk-dev] [PATCH 0/4] net/mlx5: keep indirect actions across port restart Thread-Index: AQHXgrl0mUb1L40E3kW0LrEqBTF52atYCTiAgAA1tCCAABNYAIAAAkHA Date: Wed, 28 Jul 2021 14:08:20 +0000 Message-ID: References: <20210727073121.895620-1-dkozlyuk@nvidia.com> <15ebcccf-d317-8ade-22f2-1a1acd24ea96@oktetlabs.ru> In-Reply-To: <15ebcccf-d317-8ade-22f2-1a1acd24ea96@oktetlabs.ru> 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-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 74066766-101f-45a9-76c9-08d951d127c3 x-ms-traffictypediagnostic: CH0PR12MB5156: 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: 4+ORQqbpPp+zoelLupS7A5hJpFu+bRt3cz9GBM8MywRBjVXm+AFZtLc5PNlXME+pqLZB2PRpdXPxw9VJNWm11DdoK3rD6vWQ3Fyb4poEOWc/KjdIerXLJKljESIkjr9BFeqRXvPsmAZ6YGEYkAa7ABL6x9iCSM4V9/DK3Fb8ewL6yRWC57tijU82RbT9kkaWSnz2Nxy6CIVv2V9CU3QL/zMSyoPiR0c8DIuxZ3/rvoEPNyPm1xUzLK7IcICJ+e+BEs5nG1Qn+P4bV3OSXy9UQTv2stGlXHIfiaMISMiNZc4VsSFosRkWZQGt0DMlxfB0nNnvW2PoAnlNf1zWgoZZM8uXIUnspMXyyFYa+eL1s7kLNiIEW+cRMg8o11HQ45XORCrNjns8cCvlvhpvwDtXE5iwxf9djX1/hAKXhJXuof05j1BrfPAFCM+rGJBgQGFEaVNVQhwCoxUWP1fIvdD3sKdlVUIWdjmYD1phADOdgVNhEZ2qdiG/3cV9Xa8YMWfahEpUf+Qwcxaik7IYZ3VoTzxi7SUiiRXqHOSPzANCVBUtbsR5Vg/y9GotUIfGNRr4C8Ys6M8rWgYwJgbs82AncoUh0yIqcGxy8W2kuq9VlqEah+lRN20hOoOrdqtw/yBMjKf+5lQnxb0t/U6Phgf5r3z1hzOtH71YY4GJaarL6ObWe1OhPy0Ax+VDDeSso8AdLkKuNRM/t0PAsFwwbHZbbg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH0PR12MB5091.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(39860400002)(376002)(346002)(396003)(136003)(8936002)(83380400001)(186003)(110136005)(54906003)(66446008)(76116006)(66556008)(66476007)(478600001)(64756008)(2906002)(66946007)(316002)(8676002)(9686003)(26005)(53546011)(122000001)(6506007)(52536014)(7696005)(107886003)(55016002)(71200400001)(38100700002)(33656002)(5660300002)(86362001)(38070700005)(4326008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dTlHcXorZEtERlJ6ZkY3anRSZXBTRUlLamZQZllPdmVITW5BSDJ1UEFpM1hn?= =?utf-8?B?SzVUbjFsUXEzYURmTE96bWh6Sm0yRTM4ZEhRVVJuRXhOaXNhalNHQng5ZlF3?= =?utf-8?B?YzNpVnhQNWtMUGxPRUIwNURzallldDJLM3JWK2NQSFkyVFU1Rk1YSXVMQ0pR?= =?utf-8?B?QU9OVjZ3T01CZkRxZ3pjU0JTN3daRWJGQ0d3ajF5aG9VZnoxN0liZk1PajlB?= =?utf-8?B?eGRoYnRmUkZsU2VhSzZUYXJqbTliUWFWSmdycE1BNXhjUm9XbDNWd1lKa0RP?= =?utf-8?B?aU9rVU5VYjBKMHNXdlNvRlVWa3N5OGx6S3hLc2hvaXVCZXJZaUFKTzBqNmI5?= =?utf-8?B?Vnh0WmMzeXRVL0hIWkVoMjVlejFjWmVXRGxKcVRublJpZ0lpcVlidjh4OUl2?= =?utf-8?B?NkxBUFhueHp3UDhydnNIQUxzYmhvTS91UzhBczBsRTJuaExNd3g1bWlRZGJ0?= =?utf-8?B?L3NnTytGdC9iamt1Mm9Ta2FOUTdNdzJQWkRMNEtUb3QrNGJ3YUJDMjlxSUlF?= =?utf-8?B?VjhVNVRxWm1SajM2UTZ5bnBHdUVMUStiTUtINTNBbUZVTGZXK2NrdHNqb3ly?= =?utf-8?B?M0lHTkp0MlI4WDZwdjNEbkxWOURidmxKTGhkc2VBUjY3c1A4bXZlWDVEaDR4?= =?utf-8?B?WEQ2SzB0dTFTM244L1lLaFcyUGg1S3gxZWxKUHlid0lPUW5CdUk0Q3M0aXpY?= =?utf-8?B?b1cwRDdCazQ3RlY2MlVmUXREbVJibm1ibkhxcUlzSDNFTWZ3RkFUazlPY09u?= =?utf-8?B?Y0t5UmxjS0V2UFVPZnp4OHVjRit3VGNqUVRwbzFPYXNqS1gwbHE3U0pwMllD?= =?utf-8?B?QjFpbVlXWmVVMm1IaVFtUG9HczVVQUlVcVE2c3lsRzBjQWx5RG0zNnRCcHZo?= =?utf-8?B?ekVUcHdBQVJIakhFMVNJcFVCYmFkZGY4NFlEZE5wUDQzd3VpQVNzOWFvcTBS?= =?utf-8?B?ZVphcVFKTU9LMm91cktvWXhZUkFUNDBSWndCby9RYTBhUjZZYi93Tk8vY2Y2?= =?utf-8?B?ZnZrRStuL0pDb1ozRVVXM0Zvem5KQXNMeVo1MUhxNENRd1NST2xZb0NUbHJr?= =?utf-8?B?eWJ5UlhiZEYycWhpTERpd3pTc2p6MU40UnZkRW03bWc4dy9iem5vejlGSnFp?= =?utf-8?B?WVU2T2EyeXdyWkk0OGRXYUxFQk9IWjNCSkFzOTk1UDZrZmxMYzBTMGpWVVBT?= =?utf-8?B?Yys0RWcyMjY5YmhRUDE3MWpWcWtWRzE5cmVQRUlEcVJSMmFqR0lQcC9ka0Y4?= =?utf-8?B?WjRKYUxjRVZiaWhhTGNaRWt4V1FndDZUNXZMQUY1a3A0ZnN4T2ZtK1g1TnpU?= =?utf-8?B?WjZubE9wQmxjVEVvaHllNDVyUll5Vlk0eUJuWXFabGZhUzN4SXc2OWk5Zjh5?= =?utf-8?B?UmkxNWtnWm45OXg2MFREMFF1eEhaY0lvSmNkQ1BRTFZwdEU3VW9mMzRFY3E4?= =?utf-8?B?NVhBUGlSYTV5V1BBVm5FU1YvT1R6NTVSV1JmQ2taVFliSk0vRXVySW9IaFR4?= =?utf-8?B?aVE4ZG9UdjNjdXRyRURXck41MUpKdFB2OW1LbVhJOU9nTEk0aFQ0TlBVZWdy?= =?utf-8?B?dFZqWkQ3ZVlLbTd6OTA4RnhrbmU0M29jQVNaVDFhWVR6QkpBNmhGV1JpM0Qx?= =?utf-8?B?ME9kNkxGUnFsU2M4a2o1TjI2RzZhTW5VbjlzT2w0a3VTc1ZxNUhsOFIxV0xi?= =?utf-8?B?akZQNk1TNXMxUDh0azQwU1FGeEowSUR1NjViRVpWWjYyMFNrVzlKZ3ZFL0RY?= =?utf-8?Q?KswNS3w7I9rMetzyT4=3D?= 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: CH0PR12MB5091.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74066766-101f-45a9-76c9-08d951d127c3 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jul 2021 14:08:20.4900 (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: jVXODffneQ+jc64MLBI4OcGARi6trs3qVsc+kJwBHYHZ2elqcVCSyIiGVqywPB5KJ9WqR11G1POBqIx4smQoww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5156 Subject: Re: [dpdk-dev] [PATCH 0/4] net/mlx5: keep indirect actions across port 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBBbmRyZXcgUnliY2hlbmtvIDxh bmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT4NCj4gU2VudDogMjgg0LjRjtC70Y8gMjAyMSDQ sy4gMTU6MjcNCj4gVG86IERtaXRyeSBLb3pseXVrIDxka296bHl1a0BudmlkaWEuY29tPjsgZGV2 QGRwZGsub3JnDQo+IENjOiBEYXZpZCBNYXJjaGFuZCA8ZGF2aWQubWFyY2hhbmRAcmVkaGF0LmNv bT4NCj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIDAvNF0gbmV0L21seDU6IGtlZXAg aW5kaXJlY3QgYWN0aW9ucyBhY3Jvc3MgcG9ydA0KPiByZXN0YXJ0DQo+IA0KPiBFeHRlcm5hbCBl bWFpbDogVXNlIGNhdXRpb24gb3BlbmluZyBsaW5rcyBvciBhdHRhY2htZW50cw0KPiANCj4gDQo+ IE9uIDcvMjgvMjEgMjoxOCBQTSwgRG1pdHJ5IEtvemx5dWsgd3JvdGU6DQo+ID4gSGkgQW5kcmV3 LA0KPiA+DQo+ID4+IEZyb206IEFuZHJldyBSeWJjaGVua28gPGFuZHJldy5yeWJjaGVua29Ab2t0 ZXRsYWJzLnJ1PiBPbiA3LzI3LzIxDQo+ID4+IDEwOjMxIEFNLCBEbWl0cnkgS296bHl1ayB3cm90 ZToNCj4gPj4+IEl0IHdhcyB1bnNwZWNpZmllZCB3aGF0IGhhcHBlbnMgdG8gaW5kaXJlY3QgYWN0 aW9ucyB3aGVuIGEgcG9ydCBpcw0KPiA+Pj4gc3RvcHBlZCwgcG9zc2libHkgcmVjb25maWd1cmVk LCBhbmQgc3RhcnRlZCBhZ2Fpbi4gTUxYNSBQTUQsIHRoZQ0KPiA+Pj4gZmlyc3Qgb25lIHRvIHVz ZSBpbmRpcmVjdCBhY3Rpb25zLCBpbnRlbmRlZCB0byBrZWVwIHRoZW0gYWNyb3NzIHN1Y2gNCj4g Pj4+IGEgc2VxdWVuY2UsIGJ1dCB0aGUgaW1wbGVtZW50YXRpb24gd2FzIGJ1Z2d5LiBQYXRjaGVz IDEtMyBmaXggdGhlDQo+ID4+PiBQTUQgYmVoYXZpb3IsIHBhdGNoIDQgYWRkcyBjb21tb24gc3Bl Y2lmaWNhdGlvbiB3aXRoIHJhdGlvbmFsZS4NCj4gPj4NCj4gPj4gSSdtIHNvcnJ5LCBidXQgaXQg bG9va3MgdmVyeSBpbmNvbnNpc3RlbnQuIElmIGZsb3cgcnVsZXMgYXJlIG5vdA0KPiA+PiBwcmVz ZXJ2ZWQgYWNyb3NzIHJlc3RhcnQsIGluZGlyZWN0IGFjdGlvbnMgc2hvdWxkIG5vdCBiZSBwcmVz ZXJ2ZWQgYXMNCj4gPj4gd2VsbC4gV2UgbmVlZCB2ZXJ5IHN0cm9uZyByZWFzb25zIHRvIGludHJv ZHVjZSB0aGUgaW5jb25zaXN0ZW5jeS4NCj4gPg0KPiA+IEluZGlyZWN0IGFjdGlvbnMgcmVhbGx5 IGRvbid0IG5lZWQgdG8gYmVoYXZlIGxpa2UgZmxvdyBydWxlcy4gVGhleSBhcmUganVzdA0KPiBv YmplY3RzIG93bmVkIGJ5IHRoZSBwb3J0IGFuZCB0aGV5IGNhbiBleGlzdCB3aGlsZSBpdCBleGlz dHMuIENvbnNpZGVyIGEgY291bnRlcjoNCj4gc3RvcHBpbmcgYW5kIHN0YXJ0aW5nIHRoZSBwb3J0 IGRvZXNuJ3QgbG9naWNhbGx5IGFmZmVjdCBpdHMgc3RhdGUuIE1MWDUgUE1EDQo+IGRlc3Ryb3lz IGZsb3cgcnVsZXMgb24gcG9ydCBzdG9wIGZvciBpbnRlcm5hbCByZWFzb25zIGFuZCBkb2N1bWVu dHMgdGhpcw0KPiBiZWhhdmlvciwgYnV0IGV0aGRldiBBUEkgZG9lc24ndCByZXF1aXJlIGl0IGVp dGhlci4NCj4gDQo+IEl0IGFsbCBzb3VuZHMgYmFkLiBBbGwgdGhlc2UgZ3JheSBhcmVhcyBqdXN0 IG1ha2UgaXQgaGFyZCBmb3IgRFBESyBhcHBsaWNhdGlvbnMgdG8NCj4gc3dpdGNoIGZyb20gb25l IEhXIHRvIGFub3RoZXIuDQo+IEFueSBydWxlcyBtdXN0IG5vdCBiZSBtb3RpdmF0ZWQgYmVjYXVz ZSBvZiBzb21lIFBNRCBpbnRlcm5hbCByZWFzb25zLg0KPiBXZSBzaG91bGQgbm90IGFkanVzdCBl dGhkZXYgcnVsZXMgdG8gZml0IHNvbWUgUE1EIGJlaGF2aW91ci4NCj4gZXRoZGV2IHJ1bGVzIHNo b3VsZCBiZSBtb3RpdmF0ZWQgYnkgY29tbW9uIHNlbnNlIGFuZCBjb252ZW5pZW5jZSBmcm9tDQo+ IGFwcGxpY2F0aW9ucyBwb2ludCBvZiB2aWV3Lg0KDQpUaGF0IGlzIHdoYXQgdGhpcyBwYXRjaHNl dCBpcyB0cnlpbmcgdG8gZG8uDQpDdXJyZW50IHNwZWNpZmljYXRpb24gaXMgdW5jbGVhciwgYXBw bGljYXRpb24gZG9lc24ndCBrbm93DQppZiBpdCBzaG91bGQgZGVzdHJveSBhbmQgcmVjcmVhdGUg aW5kaXJlY3QgYWN0aW9ucyBvciBub3QuDQpNTFg1IFBNRCBpcyBvbmx5IG1lbnRpb25lZCBhYm92 ZSBiZWNhdXNlIGl0J3MgdGhlIG9ubHkgb25lIGltcGxlbWVudGluZw0KaW5kaXJlY3QgYWN0aW9u IEFQSSwgYnV0IGl0J3Mgbm90IGFuIGF0dGVtcHQgdG8gdGFpbG9yIEFQSSB0byBpdCwgcXVpdGUg dGhlIG9wcG9zaXRlLg0KDQo+IEZvciBleGFtcGxlLCBpdCBpcyBzdHJhbmdlIHRvIHByZXNlcnZl IGluZGlyZWN0IFJTUyBhY3Rpb24gd2l0aCBxdWV1ZXMgc3BlY2lmaWVkDQo+IGFjcm9zcyBkZXZp Y2UgcmVjb25maWd1cmF0aW9uIHdoZW4gcXVldWVzIGNvdW50IG1heSBjaGFuZ2UuDQo+IEknZCBz YXkgdGhhdCByZWNvbmZpZ3VyYXRpb24gbXVzdCBkcm9wIGFsbCBpbmRpcmVjdCBhY3Rpb25zLg0K DQpJIGRvbid0IGxpa2UgaXQgYmVjYXVzZSAxKSBpdCBpcyBpbXBsaWNpdCwgMikgaXQgbWF5IGJl IHVubmVjZXNzYXJ5IGV2ZW4gZm9yIFJTUywgYW5kIGl0J3Mgb25seSBvbmUgZXhhbXBsZSBvZiBh biBpbmRpcmVjdCBhY3Rpb24uDQoNCj4gSG93ZXZlciwganVzdCBzdG9wL3N0YXJ0IGNvdWxkIHBy ZXNlcnZlIGJvdGggaW5kaXJlY3QgYWN0aW9ucyBhbmQgZmxvdyBydWVzIHNpbmNlDQo+IGl0IGNv dWxkIGJlIG1vcmUgY29udmVuaWVudCBmcm9tIGFwcGxpY2F0aW9uIHBvaW50IG9mIHZpZXcuDQoN CkZvciBtYW55IGNhc2VzIEkgYWdyZWUsIGJ1dCBub3QgZm9yIGFsbC4NCldoYXQgaWYgYW4gYXBw bGljYXRpb24gY3JlYXRlcyBudW1lcm91cyBmbG93cyBmcm9tIGl0cyBkYXRhIHBhdGg/DQpUaGV5 IGFyZSB0cmFuc2llbnQgYnkgbmF0dXJlLCBidXQgUE1EIHdpbGwgaGF2ZSB0byBzYXZlIHRoZW0g YWxsDQphdCB0aGUgY29zdCBvZiBSQU0gYW5kIENQVSBidXQgd2l0aG91dCBiZW5lZml0IHRvIGFu eW9uZS4NCk9UT0gsIGFwcGxpY2F0aW9uIGFsd2F5cyBjb250cm9scyBpbmRpcmVjdCBhY3Rpb25z IGl0IGNyZWF0ZXMsDQpiZWNhdXNlIGl0IGlzIGdvaW5nIHRvIHJldXNlIG9yIHF1ZXJ5IHRoZW0u DQpUaGVyZWZvcmUsIGl0IGlzIGJvdGggbG9naWNhbCBhbmQgY29udmVuaWVudCB0byBwcmVzZXJ2 ZSB0aGVtLg0KDQo+IElmIGFwcGxpY2F0aW9uIHJlYWxseSB3YW50cyB0byByZW1vdmUgYWxsIGZs b3cgcnVsZXMsIGl0IGNhbiBjYWxsIHJ0ZV9mbG93X2ZsdXNoKCkuDQo+IFRoZSBzdHJvbmcgcmVh c29uIHRvIGZsdXNoIGluZGlyZWN0IGFjdGlvbnMgYW5kIGZsb3cgcnVsZXMgYWNyb3NzIHJlc3Rh cnQgaXMNCj4gcG9zc2libGUgYWN0aW9ucyBvciBydWxlcyByZXN0b3JlIGZhaWx1cmUgb24gc3Rh cnQuDQo+IEhvd2V2ZXIsIG1heSBiZSBpdCBpcyBzdWZmaWNpZW50IHRvIGRvY3VtZW50IHRoYXQg c3RhcnQgc2hvdWxkIHJlYWxseSBmYWlsLCBpZiBpdA0KPiBjYW4ndCByZXN0b3JlIGV2ZXJ5dGhp bmcgYW5kIGFwcGxpY2F0aW9uIHNob3VsZCByZXRyeSBhZnRlciBydGVfZmxvd19mbHVzaCgpDQo+ IHRha2luZyBpdCBpbnRvIGFjY291bnQuDQo+IA0KPiA+PiBJZiB3ZSBmaW5hbGx5IGFjY2VwdCBp dCwgSSB0aGluayBpdCB3b3VsZCBiZSB2ZXJ5IHVzZWZ1bCB0byBjYXJlDQo+ID4+IGFib3V0IFBN RHMgd2hpY2ggY2Fubm90IHByZXNlcnZlIGl0IGluIEhXIGFjcm9zcyByZXN0YXJ0IGZyb20gdGhl DQo+ID4+IHZlcnkgYmVnaW5uaW5nIGFuZCBzYXZlIGl0IGluIGV0aGRldiBsYXllciBhbmQgcmVz dG9yZSBvbiBzdGFydA0KPiA+PiBhdXRvbWF0aWNhbGx5IChpLmUuIGRvIG5vdCBmb3JjZSBhbGwg c3VjaCBQTURzIHRvIGNhcmUgYWJvdXQgdGhlIHJlc3RvcmUNCj4gaW50ZXJuYWxseSBhbmQgYmFz aWNhbGx5IGR1cGxpY2F0ZSB0aGUgY29kZSkuDQo+ID4NCj4gPiBPciBrZWVwaW5nIGluZGlyZWN0 IGFjdGlvbnMgY2FuIGJlIGFuIGFkdmVydGlzZWQgUE1EIGNhcGFiaWxpdHkuDQo+ID4gR2l2ZW4g T3JpJ3MgY29tbWVudHMgdG8gcGF0Y2ggNCwgSSB0aGluayB0aGUgY29tbW9uIHNwZWMgbmVlZHMg bW9yZSB3b3JrLg0KPiA+IEZvciB0aGlzIHBhdGNoc2V0IHRoYXQgZml4ZXMgTUxYNSB3ZSBjYW4g aGF2ZSB0aGUgYmVoYXZpb3IgZG9jdW1lbnRlZCBmb3INCj4gUE1EIGFuZCBub3QgcmVxdWlyZSBp dCBmcm9tIGFsbCB0aGUgZHJpdmVycy4NCj4gDQo+IEFyZSB5b3UgZ29pbmcgdG8gZHJvcCA0dGgg cGF0Y2g/DQoNClllcy4NCg0KPiBJbiBnZW5lcmFsIGRvY3VtZW50aW5nIFBNRCBiZWhhdmlvdXIg c3BlY2lmaWNzIGluIGl0cyBkb2N1bWVudGF0aW9uIGlzIGEgd3JvbmcNCj4gZGlyZWN0aW9uIHNp bmNlIGl0IGRvZXMgbm90IGhlbHAgRFBESyBhcHBsaWNhdGlvbnMgdG8gYmUgcG9ydGFibGUgYWNy b3NzIGRpZmZlcmVudA0KPiBIVy4NCg0KSSBhZ3JlZS4gQnV0IGN1cnJlbnRseSB0aGVyZSBpcyBh IGNsZWFyIHJlc291cmNlIGxlYWsgaW4gTUxYNSBQTUQsIHRoYXQgY2FuIGJlIHNvbHZlZCBlaXRo ZXIgYnkgZGVzdHJveWluZyBpbmRpcmVjdCBhY3Rpb25zIG9uIHBvcnQgc3RvcCBvciBieSBrZWVw aW5nIHRoZW0gKHRoaXMgaXMgd2hhdCBQTUQgbWFpbnRhaW5lcnMgcHJlZmVyKS4gVGhlIGxlYWsg c2hvdWxkIGJlIGZpeGVkIGFuZCB3aGF0IGhhcHBlbnMgdG8gaW5kaXJlY3QgYWN0aW9ucyBtdXN0 IGJlIGNsZWFybHkgZG9jdW1lbnRlZC4gSWRlYWxseSB0aGUgZml4IHNob3VsZCBiZSBhbGlnbmVk IHdpdGggY29tbW9uIGV0aGRldiBBUEksIGJ1dCBpZiB5b3UgYW5kIE9yaSB0aGluayBpdHMgZGVz aWduIGlzIHdyb25nLCB0aGVuIGF0IGxlYXN0IGJlaGF2aW9yIGNhbiBiZSBkZXNjcmliZWQgaW4g UE1EIGRvY3MgYW5kIGxhdGVyIGZpeGVkIG9yIHByb21vdGVkIHRvIEFQSS4NCg==