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 3512DA0C43; Thu, 14 Oct 2021 23:46:04 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AE12840041; Thu, 14 Oct 2021 23:46:03 +0200 (CEST) Received: from AZHDRRW-EX01.nvidia.com (azhdrrw-ex01.nvidia.com [20.51.104.162]) by mails.dpdk.org (Postfix) with ESMTP id 503944003C for ; Thu, 14 Oct 2021 23:46:02 +0200 (CEST) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.176) by mxs.oss.nvidia.com (10.13.234.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.858.15; Thu, 14 Oct 2021 14:46:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZuIa87TzFLkpTpm5uPnRdyyg+aK25du+OZMLAuc4RNhA8SrpibOB/to4mnok4A//+rFU3nakQe1I8NRSBY/Cew5DQWb6zzDkvdgdI/yFKD2YZjApy9Cru/Azl3/GhGdUGNhfQfMix11SexJjlJzrtzU95ey4nZaA7OKrEoC6MAB0A6f/WCGGF2g8hryMn7hc9W9Y+mBpMv1FxdVXOg1yqDdET/5rr5vPvs3YFb2xHyLu7ghfnHtJfLClxQld/aM536ey4cpkI5hnrSce/AtE4wmsEvaOWSzQsCARzMGiiWr1gZvoXUKVB5fE/beb5DeW/NIasaQTuL6DCK4l1Sh+gw== 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=84YLtCweu6BaneQh3fypmHn4ihkIzyPcfVFrVETifTA=; b=Cq/Xs6xdm3FfNY94Ny7C8EIvIqDUZ2yBmGYZ7Y1jzEgUsGSjFld00J95g0EqP1sR2vzeDmD+mFEH3FutJjXv/0WZza2xQlFr7L+OxCUCQypJMNi9NkpJVJNwYrO8aWB9sON0LpwdNiSaOfCNuXo7w+6SJ20LuwbOfccZ0LWQcY0eOYHiqmFV0lvOAeLH23LF0XLSW9+v6f5rgkObaFLbqNKyvWlHJrvIr1qWiXK88jmippEu8L4gvXyAYvFlpJvoym+wL7SCYbSgfbbEzjh37ytaC9LTij5XCvbK18S0HGZMOwYoVLhKYeXO/TAAzSpqX+pog6Veq6WrZi5LK/7PFA== 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=84YLtCweu6BaneQh3fypmHn4ihkIzyPcfVFrVETifTA=; b=em7cqvRpQ46azw5xmkDK/WdXK0UHio3JEoStdfz8g8Vcj9rUSNMfyIfyRtyVdIxryQqPk9mU6J7+KIToVPZDodPVl/hiJoNWRSp6I/TZisFYCQOvTTYx/axVWDe0SpkBrj7rPjMNvOXC8llk8/7CuG7dvzy4JpOWs/Ox7UShXr/FqxAtiexq/6lsBpe3UnmIA+LL3MrRGlIPF8Iart7MtRoSBuuUG2y0hj+gN04qnxQHWU6+b45gdXqu68otO7OPBxKHZHcf0fIfaZOKWRjixzFSBBWGpUggiVIM4ePtbM1OlmnERBrxf/bjZBHxIa3cSP0am8qcZLUEuqZZk/u7sg== Received: from CH0PR12MB5091.namprd12.prod.outlook.com (2603:10b6:610:be::10) by CH0PR12MB5386.namprd12.prod.outlook.com (2603:10b6:610:d5::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4608.16; Thu, 14 Oct 2021 21:45:57 +0000 Received: from CH0PR12MB5091.namprd12.prod.outlook.com ([fe80::59bf:640f:7140:ab97]) by CH0PR12MB5091.namprd12.prod.outlook.com ([fe80::59bf:640f:7140:ab97%9]) with mapi id 15.20.4587.030; Thu, 14 Oct 2021 21:45:57 +0000 From: Dmitry Kozlyuk To: Ferruh Yigit , "dev@dpdk.org" , Andrew Rybchenko , Ori Kam , Raslan Darawsheh CC: NBU-Contact-Thomas Monjalon , Qi Zhang , "jerinj@marvell.com" , "Maxime Coquelin" Thread-Topic: [PATCH 2/5] ethdev: add capability to keep shared objects on restart Thread-Index: AQHXuYNQK50xrto6MEmDHPXWdlMdYavQnioAgAHytgCAABHRMA== Date: Thu, 14 Oct 2021 21:45:57 +0000 Message-ID: References: <20211005005216.2427489-1-dkozlyuk@nvidia.com> <20211005005216.2427489-3-dkozlyuk@nvidia.com> <9a9ab2b5-89d1-1653-9022-ebf1b8a86902@intel.com> In-Reply-To: <9a9ab2b5-89d1-1653-9022-ebf1b8a86902@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a50167c7-7f7e-4fb2-21db-08d98f5c0149 x-ms-traffictypediagnostic: CH0PR12MB5386: 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: 57ulxKb+sRL91OiFeJJr9TpShNkk0K/jzCDk7ifTYMlU1Ar0SIY7r8x4CU4ozULCwkEzzXseqH/5ZfGsnAb7Uat76fgzZ66FfReOsG66tqhvNyGqkk7qziYrYE559Tmtvm+vosl0AcZX/G+gBfiy+7UB4Y+SW6skoQJnkxyXt6ltcgr6Y72afd5gCX3k1n5khHlr379Af2/TwqamQeawtEazW+bXCriuK/zGm8xJYwtBgSzqUF0bBRLY6jnBbvJqv3CX19SITc7Uru7Jeeq5Q/A1lNJcy3ttYTGATLPzX9UT6sEk57DlNkC4zFd2PYkl6SLZ+isz4VLSpBog5q5QZftSKIM5zkXAykUQmK9uNH5lvee7d3/UfmjFrsMRHl/1m5UeepKqICniB08mYb23qzqlyaxFzMuOx29oDmvQnG0VjzAK3FLwvPyRwRb6uFJwBob7wJ62UtMo4kXrZk+ZiRZRCC7t29uV6xJypw7GSicHp5deHFOBo9jI63etB5rx/q6RgH34yBtUi/ulgi/ftcRExNeNgUbGhPxEiMHtQwsogckWns2ej7B8AN75+SyPAvTpe6Nfh+Z1erTsmOyBAyXZghNshtjk1kAVRGl58r087g51pvm/oqpAmz3nkUzyVCsoeC31ughK4Q9jmUA5EX9x90r2Thx4+nV2zL3XurIF8ItrOu1Z6l5n+pNjUuBQkvdrpP1aiPTRFdi1vvdvoZ/4H3s0V9dRCFjdKsFk9VR6pf8AllSMRLAv4EqDVqEqSa/M9hlTOLct0NfGbcp4iopeS7OyuOB57lbXOaeVkU4= 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)(38100700002)(122000001)(186003)(38070700005)(26005)(7696005)(53546011)(9686003)(966005)(83380400001)(71200400001)(55016002)(6506007)(107886003)(64756008)(508600001)(76116006)(6636002)(316002)(4326008)(66476007)(66446008)(8936002)(8676002)(54906003)(66556008)(110136005)(45080400002)(2906002)(86362001)(33656002)(52536014)(66946007)(5660300002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZExnWUZnQXFOZ3JocU4vTGFFbFk2UlViOTg0Ums0Q3o2YWY3SVpkeDFVWWZY?= =?utf-8?B?UTFOQXRPR09FS0N5aXFRc2htb2VkWEFMaE5HMXhINUw0ZmVSSTREVlo1STh3?= =?utf-8?B?eFhuSHBLSi9Qd2Y5MlZWNU9EQ1FDdXV4MnpNN3MwSHE5Zk1IbmM0K2FpSnhS?= =?utf-8?B?WWFoQTZYY3VEM2k0MXFWdE5wcnVad1VRbnZiSmJFdzVab2JFWTh1UGd0dFVK?= =?utf-8?B?UTRSUzk0VmFxdkd5cXMwYWxTdFBQbUV0S1NpcVhPMjF1Vlkydi9FZkxRWDBi?= =?utf-8?B?cWNubzhDZTdKNHpPSVNZVXhDOHcwWXNwd2l6QjYrbk9RUURBOXMyeDFWaFg4?= =?utf-8?B?YnkyUUFuRkR4Yk02bEVaZmVxZXM2OG8ySEdvcDJiQ0tHM2JCTlJSOWdUVFBY?= =?utf-8?B?dGI0Y2QyT0tidnd2U3lvMFdsOWJsaGZKNElVTHFVQ29EZE9EYU5IUmpYWUdX?= =?utf-8?B?ZlJmT2EwbTltVTVVUjYrZ1YrbkI4SE9vdG1PSUJ1Y3dNUWdxcFNHTFRFZzN0?= =?utf-8?B?SXNrdkdGZnlTS2Y2NHdrbDd2RmUrMjNmWHlUekpzZzRNTEs4R2ZNSVJ5T3Nz?= =?utf-8?B?cnRUVHZCVk9rdFY5T1A2dCt0UjJMWnVMbWlaZllWc01hUWZHMDhrZUJVSkdM?= =?utf-8?B?azVBeFVTcDVFZkJ3OVo1bzJMSHN0TTVFemg2ZlNFTisvSVF0cUg1QXpZSGR0?= =?utf-8?B?R0I2Z29EeHFpWi9jWXV2MjFVU0daMkVTNUE1VnBnUDJDTHNPR0dJZXNpVHg0?= =?utf-8?B?V3V6WWwvZXl3UTNlSjMwb1ZLdjNEWG9qUlU3U29LdXExVGFwVWJicjVYSGRa?= =?utf-8?B?dm9UK2RQaHpVdklvZGtjUGxIYm5EYVBnaVpKYnhVaTV4bEtWdys5OVlvRmN2?= =?utf-8?B?YnhoZnpwRUUrbVpOeU1DbGZtMTVrYkFqUVV5QXVVVnVjTVUxRStOQmpqMm9u?= =?utf-8?B?OUh4ZVBhOHExbVZPMXN4TDJpWkszNEZ3L3YrWkFOZXdFbUVYWUZjL05jUlNh?= =?utf-8?B?dFhFZmlvMmptU3NFZGVxRUhPeG1odGIydGtJWmF1QzQwM21uSk1Pa1JEOWlZ?= =?utf-8?B?K0Z1Y0R0TTQvbEtqMzFqdmduUjlVdWR1d05QcUJWb2lGUjkzdUR2ZmZJZXQ0?= =?utf-8?B?NE5UVDVsSDlKQzlpOUxSQkM1M3ZHeFMzM0pjUjNaaHVnN3NOcTV1QlVUY0xs?= =?utf-8?B?dmpUM2hMWFIrN1o5NnFPeldmcFRtUVhuU0F0RFNvSHYyNTF6YW1ISUZoQzNx?= =?utf-8?B?all6SUZyQURyek9MendoK080YlUyTElxdC9BTy9Cd1JrdSszdTZ5ckllOWZG?= =?utf-8?B?OE52Z1pyTk5rdmN5aUxEV2IrdmEyYTc1RkE3c0ZQK1l4V3hwNVVlQnpSSW9O?= =?utf-8?B?ODRrNXdwdzhnZkdDSnJad2g1OU55SkJzSGtGWHRqM2dQN2EyN2Q1Uk9Hc2cr?= =?utf-8?B?UllJU1NZVEwxdkl6akFRc0NPdG14QlA5RmFPaFpDYXpoN3plZi9HNGlZQXRZ?= =?utf-8?B?NXNuQStwbmRVVW90TXlCQTYxdXdZYzZwTVBuajdTZGlQeTIyZ001cEhTWE9h?= =?utf-8?B?VmY1OEdKYVh1NVFGcmFFT09FZUgxTjVDTlNRQjhBMk8vSEJLTXVCTEpWdFpP?= =?utf-8?B?bnZTSk9CLzJmSTRGWmZJYzJob0dGUk5xL3pESXo2TE85eVF1SW0yTG5uK0xH?= =?utf-8?B?bEdPSEFNWXdxK2dLQ3lwa3ROMFRuaFJJSnVEOEczdzlnRVRaak9ERmwwcG4w?= =?utf-8?Q?Ufh54GR6uiYKM5nW2A=3D?= 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: CH0PR12MB5091.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a50167c7-7f7e-4fb2-21db-08d98f5c0149 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Oct 2021 21:45:57.0481 (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: iWatgTOBqpP66wyWK2g3xIcdAj94WKvb8plUMU8IHbohI/tF647mHgTMdtzyo09Q8oyzuRA1DEy1Qy5lBqOiYw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5386 Subject: Re: [dpdk-dev] [PATCH 2/5] ethdev: add capability to keep shared objects 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBGZXJydWggWWlnaXQgPGZlcnJ1 aC55aWdpdEBpbnRlbC5jb20+DQo+IFNlbnQ6IDE0INC+0LrRgtGP0LHRgNGPIDIwMjEg0LMuIDE2 OjQ3DQo+IFRvOiBEbWl0cnkgS296bHl1ayA8ZGtvemx5dWtAbnZpZGlhLmNvbT47IGRldkBkcGRr Lm9yZzsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+ OyBPcmkgS2FtIDxvcmlrYUBudmlkaWEuY29tPjsgUmFzbGFuDQo+IERhcmF3c2hlaCA8cmFzbGFu ZEBudmlkaWEuY29tPg0KPiBDYzogTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNA bW9uamFsb24ubmV0PjsgUWkgWmhhbmcNCj4gPHFpLnouemhhbmdAaW50ZWwuY29tPjsgamVyaW5q QG1hcnZlbGwuY29tOyBNYXhpbWUgQ29xdWVsaW4NCj4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQu Y29tPg0KPiBTdWJqZWN0OiBSZTogW1BBVENIIDIvNV0gZXRoZGV2OiBhZGQgY2FwYWJpbGl0eSB0 byBrZWVwIHNoYXJlZCBvYmplY3RzIG9uDQo+IHJlc3RhcnQNCj4gDQo+IEV4dGVybmFsIGVtYWls OiBVc2UgY2F1dGlvbiBvcGVuaW5nIGxpbmtzIG9yIGF0dGFjaG1lbnRzDQo+IA0KPiANCj4gT24g MTAvMTMvMjAyMSA5OjMyIEFNLCBEbWl0cnkgS296bHl1ayB3cm90ZToNCj4gPiBUaGlzIHRocmVh ZCBjb250aW51ZXMgZGlzY3Vzc2lvbnMgb24gcHJldmlvdXMgdmVyc2lvbnMgdG8ga2VlcA0KPiA+ IGV2ZXJ5dGhpbmcgaW4gdGhlIHRocmVhZCB3aXRoIGZpbmFsIHBhdGNoZXM6DQo+ID4NCj4gPiBb MV06DQo+ID4gaHR0cDovL2luYm94LmRwZGsub3JnL2Rldi9kNTY3M2I1OC01YWE2LWNhMzUtNWI2 MC1kOTM4ZTU2Y2ZlZTFAb2t0ZXRsYQ0KPiA+IGJzLnJ1Lw0KPiA+IFsyXToNCj4gPiBodHRwOi8v aW5ib3guZHBkay5vcmcvZGV2L0RNOFBSMTJNQjU0MDA5OTdDQ0VDOTE2OUFDNUFFMEM4OUQ2RUE5 QERNOFBSDQo+ID4gMTJNQjU0MDAubmFtcHJkMTIucHJvZC5vdXRsb29rLmNvbS8NCj4gPg0KPiA+ IFBsZWFzZSBzZWUgYmVsb3cuDQo+ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPj4gRnJvbTogRG1pdHJ5IEtvemx5dWsgPGRrb3pseXVrQG52aWRpYS5jb20+DQo+ID4+IFNl bnQ6IDUg0L7QutGC0Y/QsdGA0Y8gMjAyMSDQsy4gMzo1Mg0KPiA+PiBUbzogZGV2QGRwZGsub3Jn DQo+ID4+IENjOiBEbWl0cnkgS296bHl1ayA8ZGtvemx5dWtAbnZpZGlhLmNvbT47IE9yaSBLYW0g PG9yaWthQG52aWRpYS5jb20+Ow0KPiA+PiBOQlUtIENvbnRhY3QtVGhvbWFzIE1vbmphbG9uIDx0 aG9tYXNAbW9uamFsb24ubmV0PjsgRmVycnVoIFlpZ2l0DQo+ID4+IDxmZXJydWgueWlnaXRAaW50 ZWwuY29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA+PiA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxh YnMucnU+DQo+ID4+IFN1YmplY3Q6IFtQQVRDSCAyLzVdIGV0aGRldjogYWRkIGNhcGFiaWxpdHkg dG8ga2VlcCBzaGFyZWQgb2JqZWN0cyBvbg0KPiA+PiByZXN0YXJ0DQo+ID4+DQo+ID4+IEZyb206 IERtaXRyeSBLb3pseXVrIDxka296bHl1a0BudmlkaWEuY29tPg0KPiA+Pg0KPiA+PiBydGVfZmxv d19hY3Rpb25faGFuZGxlX2NyZWF0ZSgpIGRpZCBub3QgbWVudGlvbiB3aGF0IGhhcHBlbnMgd2l0 aCBhbg0KPiA+PiBpbmRpcmVjdCBhY3Rpb24gd2hlbiBhIGRldmljZSBpcyBzdG9wcGVkLCBwb3Nz aWJseSByZWNvbmZpZ3VyZWQsIGFuZA0KPiA+PiBzdGFydGVkIGFnYWluLiBJdCBpcyBuYXR1cmFs IGZvciBzb21lIGluZGlyZWN0IGFjdGlvbnMgdG8gYmUNCj4gPj4gcGVyc2lzdGVudCwgbGlrZSBj b3VudGVycyBhbmQgbWV0ZXJzOyBrZWVwaW5nIG90aGVycyBqdXN0IHNhdmVzDQo+ID4+IGFwcGxp Y2F0aW9uIHRpbWUgYW5kIGNvbXBsZXhpdHkuIEhvd2V2ZXIsIG5vdCBhbGwgUE1EcyBjYW4gc3Vw cG9ydCBpdC4NCj4gPj4gSXQgaXMgcHJvcG9zZWQgdG8gYWRkIGEgZGV2aWNlIGNhcGFiaWxpdHkg dG8gaW5kaWNhdGUgaWYgaW5kaXJlY3QNCj4gPj4gYWN0aW9ucyBhcmUga2VwdCBhY3Jvc3MgdGhl IGFib3ZlIHNlcXVlbmNlIG9yIGltcGxpY2l0bHkgZGVzdHJveWVkLg0KPiA+Pg0KPiA+PiBJbiB0 aGUgZnV0dXJlLCBpbmRpcmVjdCBhY3Rpb25zIG1heSBub3QgYmUgdGhlIG9ubHkgdHlwZSBvZiBv YmplY3RzDQo+ID4+IHNoYXJlZCBiZXR3ZWVuIGZsb3cgcnVsZXMuIFRoZSBjYXBhYmlsaXR5IGJp dCBpbnRlbmRzIHRvIGNvdmVyIGFsbA0KPiA+PiBwb3NzaWJsZSB0eXBlcyBvZiBzdWNoIG9iamVj dHMsIGhlbmNlIGl0cyBuYW1lLg0KPiA+Pg0KPiA+PiBJdCBtYXkgaGFwcGVuIHRoYXQgaW4gdGhl IGZ1dHVyZSBhIFBNRCBhY3F1aXJlcyBzdXBwb3J0IGZvciBhIHR5cGUgb2YNCj4gPj4gc2hhcmVk IG9iamVjdHMgdGhhdCBpdCBjYW5ub3Qga2VlcCBhY3Jvc3MgYSByZXN0YXJ0LiBJdCBpcw0KPiA+ PiB1bmRlc2lyYWJsZSB0byBzdG9wIGFkdmVydGlzaW5nIHRoZSBjYXBhYmlsaXR5IHNvIHRoYXQg YXBwbGljYXRpb25zDQo+ID4+IHRoYXQgZG9uJ3QgdXNlIG9iamVjdHMgb2YgdGhlIHByb2JsZW1h dGljIHR5cGUgY2FuIHN0aWxsIHRha2UgYWR2YW50YWdlDQo+IG9mIGl0Lg0KPiA+PiBUaGlzIGlz IHdoeSBQTURzIGFyZSBhbGxvd2VkIHRvIGtlZXAgb25seSBhIHN1YnNldCBvZiBzaGFyZWQgb2Jq ZWN0cw0KPiA+PiBwcm92aWRlZCB0aGF0IHRoZSB2ZW5kb3IgbWFuZGF0b3JpbHkgZG9jdW1lbnRz IGl0Lg0KPiA+Pg0KPiA+PiBJZiB0aGUgZGV2aWNlIGlzIGJlaW5nIHJlY29uZmlndXJlZCBpbiBh IHdheSB0aGF0IGlzIGluY29tcGF0aWJsZQ0KPiA+PiB3aXRoIGFuIGV4aXN0aW5nIHNoYXJlZCBv YmplY3RzLCBQTUQgaXMgcmVxdWlyZWQgdG8gcmVwb3J0IGFuIGVycm9yLg0KPiA+PiBUaGlzIGlz IG1hbmRhdG9yeSwgYmVjYXVzZSBmbG93IEFQSSBkb2VzIG5vdCBzdXBwbHkgdXNlcnMgd2l0aA0K PiA+PiBjYXBhYmlsaXRpZXMsIHNvIHRoaXMgaXMgdGhlIG9ubHkgd2F5IGZvciBhIHVzZXIgdG8g bGVhcm4gdGhhdA0KPiA+PiBjb25maWd1cmF0aW9uIGlzIGludmFsaWQuIEZvciBleGFtcGxlLCBp ZiBxdWV1ZSBjb3VudCBjaGFuZ2VzIGFuZCBSU1MNCj4gPj4gaW5kaXJlY3QgYWN0aW9uIHNwZWNp ZmllcyBxdWV1ZXMgdGhhdCBhcmUgZ29pbmcgYXdheSwgdGhlIHVzZXIgbXVzdA0KPiA+PiB1cGRh dGUgdGhlIGFjdGlvbiBiZWZvcmUgcmVtb3ZpbmcgdGhlIHF1ZXVlcyBvciByZW1vdmUgdGhlIGFj dGlvbiBhbmQNCj4gPj4gYWxsIGZsb3cgcnVsZXMgdGhhdCB3ZXJlIHVzaW5nIGl0Lg0KPiA+Pg0K PiA+PiBTaWduZWQtb2ZmLWJ5OiBEbWl0cnkgS296bHl1ayA8ZGtvemx5dWtAbnZpZGlhLmNvbT4N Cj4gPj4gLS0tDQo+ID4+IFsuLi5dDQo+ID4NCj4gPiBDdXJyZW50IHBhaW4gcG9pbnQgaXMgdGhh dCBjYXBhYmlsaXR5IGJpdHMgbWF5IGJlIGluc3VmZmljaWVudCBhbmQgYQ0KPiA+IHByb2dyYW1t YXRpYyB3YXkgaXMgZGVzaXJlZCB0byBjaGVjayB3aGljaCB0eXBlcyBvZiBvYmplY3RzIGNhbiBi ZQ0KPiA+IGtlcHQgYWNyb3NzIHJlc3RhcnQsIGluc3RlYWQgb2YgZG9jdW1lbnRpbmcgdGhlIGxp bWl0YXRpb25zLg0KPiA+DQo+ID4gSSBzdXBwb3J0IG9uZSBvZiBwcmV2aW91cyBPcmkncyBzdWdn ZXN0aW9ucyBhbmQgd2FudCB0byBjbGFyaWZ5IGl0IFsxXToNCj4gPg0KPiA+IE9yaTogIkFub3Ro ZXIgd2F5IGlzIHRvIGFzc3VtZSB0aGF0IGlmIHRoZSBhY3Rpb24gd2FzIGNyZWF0ZWQgYmVmb3Jl DQo+IHBvcnQgc3RhcnQgaXQgd2lsbCBiZSBrZXB0IGFmdGVyIHBvcnQgc3RvcC4iDQo+ID4gQW5k cmV3OiAiSXQgZG9lcyBub3Qgc291bmQgbGlrZSBhIHNvbHV0aW9uLiBNYXkgYmUgSSBzaW1wbHkg ZG9uJ3Qga25vdw0KPiA+IHRhcmdldCB1c2VjYXNlLiINCj4gPg0KPiA+IFdoYXQgT3JpIHN1Z2dl c3RzIChvZmZsaW5lIGRpc2N1c3Npb24gc3VtbWFyeSk6IFN1cHBvc2UgYW4gYXBwbGljYXRpb24N Cj4gd2FudHMgdG8gY2hlY2sgd2hldGhlciBhIHNoYXJlZCBvYmplY3QgKGluZGlyZWN0IGFjdGlv bikgb3IgYSBmbG93IHJ1bGUgb2YNCj4gYSBwYXJ0aWN1bGFyIGtpbmQuIEl0IGNhbGxzIHJ0ZV9m bG93X2FjdGlvbl9oYW5kbGVfY3JlYXRlKCkgb3INCj4gcnRlX2Zsb3dfY3JlYXRlKCkgYmVmb3Jl IHJ0ZV9ldGhfZGV2X3N0YXJ0KCkuIElmIGl0IHN1Y2NlZWRzLCAxKSBpdCBtZWFucw0KPiBvYmpl Y3RzIG9mIHRoaXMgdHlwZSBjYW4gYmUga2VwdCBhY3Jvc3MgcmVzdGFydCwgMikgaXQncyBhIG5v cm1hbCBvYmplY3QNCj4gY3JlYXRlZCB0aGF0IHdpbGwgd29yayBhZnRlciB0aGUgcG9ydCBpcyBz dGFydGVkLiBUaGlzIGlzIGxvZ2ljYWwsIGJlY2F1c2UNCj4gaWYgdGhlIFBNRCBjYW4ga2VlcCBz b21lIGtpbmQgb2Ygb2JqZWN0cyB3aGVuIHRoZSBwb3J0IGlzIHN0b3BwZWQsIGl0IGlzDQo+IGxp a2VseSB0byBiZSBhYmxlIHRvIGNyZWF0ZSB0aGVtIHdoZW4gdGhlIHBvcnQgaXMgbm90IHN0YXJ0 ZWQuIEl0IGlzDQo+IHN1YmplY3QgdG8gZGlzY3Vzc2lvbiBpZiAib2JqZWN0IGtpbmQiIG1lYW5z IG9ubHkgInR5cGUiIG9yICJ0eXBlICsNCj4gdHJhbnNmZXIgYml0IiBjb21iaW5hdGlvbjsgZm9y IG1seDUgUE1EIGl0IGRvZXNuJ3QgbWF0dGVyLiBPbmUgbWlub3INCj4gZHJhd2JhY2sgaXMgdGhh dCBhcHBsaWNhdGlvbnMgY2FuIG9ubHkgZG8gdGhlIHRlc3Qgd2hlbiB0aGUgcG9ydCBpcw0KPiBz dG9wcGVkLCBidXQgaXQgc2VlbXMgbGlrZWx5IHRoYXQgdGhlIHRlc3QgcmVhbGx5IG5lZWRzIHRv IGJlIGRvbmUgYXQNCj4gc3RhcnR1cCBhbnl3YXkuDQo+ID4NCj4gPiBJZiB0aGlzIGlzIGFjY2Vw dGFibGU6DQo+ID4gMS4gQ2FwYWJpbGl0eSBiaXRzIGFyZSBub3QgbmVlZGVkIGFueW1vcmUuDQo+ ID4gMi4gZXRoZGV2IHBhdGNoZXMgY2FuIGJlIGFjY2VwdGVkIGluIFJDMSwgcHJlc2VudCBiZWhh dmlvciBpcyB1bmRlZmluZWQNCj4gYW55d2F5Lg0KPiA+IDMuIFBNRCBwYXRjaGVzIHdpbGwgbmVl ZCB1cGRhdGUgdGhhdCBjYW4gYmUgZG9uZSBieSBSQzIuDQo+ID4NCj4gDQo+IEhpIERtaXRyeSwN Cj4gDQo+IEFyZSB5b3UgcGxhbm5pbmcgdG8gdXBkYXRlIGRyaXZlcnMgeW91cnNlbGYgb24gLXJj Mj8NCj4gT3IgZG8geW91IG1lYW4gUE1EIG1haW50YWluZXJzIHNob3VsZCB1cGRhdGUgdGhlbXNl bHZlcywgaWYgc28gZG8gdGhleQ0KPiBrbm93IGFib3V0IGl0Pw0KPiANCj4gSWYgdGhlIGV0aGRl diBsYXllciBpcyB1cGRhdGVkIGluIGEgd2F5IHRvIGltcGFjdCB0aGUgZHJpdmVycywgaXQgc2hv dWxkDQo+IGJlIGVpdGhlcjoNCj4gLSBhbGwgZHJpdmVycyB1cGRhdGVkIHdpdGggYSBjaGFuZ2UN Cj4gb3INCj4gLSBnaXZlIFBNRHMgdGltZSB0byBpbXBsZW1lbnQgaXQgb24gdGhlaXIgb3duIHRp bWUsIG1lYW53aGlsZSB0aGV5IGNhbg0KPiByZXBvcnQgdGhlaXIgc3VwcG9ydCBzdGF0dXMgYnkg YSBmbGFnDQo+IA0KPiBXZSBoYWQgbXVsdGlwbGUgc2FtcGxlIG9mIHNlY29uZCBjYXNlIGluIHRo ZSBwYXN0IGJ1dCBpdCBpcyBoYXJkZXIgZm9yDQo+IHRoaXMgY2FzZS4NCj4gDQo+IEZvciB0aGlz IGNhc2Ugd2hhdCBhYm91dCBoYXZpbmcgdGhyZWUgc3RhdGVzOg0KPiAtIEZMT1dfUlVMRV9LRUVQ DQo+IC0gRkxPV19SVUxFX0RFU1RST1kNCj4gLSBGTE9XX1JVTEVfVU5LTk9XTg0KPiANCj4gQW5k IHNldCAnRkxPV19SVUxFX1VOS05PV04nIGZvciBhbGwgZHJpdmVycywgdG8gc2ltdWxhdGUgY3Vy cmVudCBzdGF0dXMsDQo+IHVudGlsIGRyaXZlciBpcyB1cGRhdGVkLg0KDQpIaSBGZXJydWgsDQoN CkluZGlyZWN0IGFjdGlvbnMgYXJlIG9ubHkgaW1wbGVtZW50ZWQgYnkgbWx4NSBQTUQsDQp0aGUg cGF0Y2hlcyB3aWxsIGJlIGluIFJDMi4NCklmIHdlIGRvbid0IHVzZSB0aGUgZmxhZyBhcyBwZXIg dGhlIGxhdGVzdCBzdWdnZXN0aW9uLA0Kbm90aGluZyBuZWVkcyB0byBiZSBkb25lIGZvciBvdGhl ciBQTURzLg0KRmxhZyBjYW4gYXMgd2VsbCBiZSBrZXB0IHdpdGggdGhlIGZvbGxvd2luZyBzZW1h bnRpY3M6DQowID0+IGluZGlyZWN0IGFjdGlvbnMgYXJlIGZsdXNoZWQgb24gZGV2aWNlIHN0b3AN CjEgPT4gYXQgbGVhc3Qgc29tZSBpbmRpcmVjdCBhY3Rpb25zIGFyZSBrZXB0LA0KICAgICBhcHBs aWNhdGlvbiBzaG91bGQgY2hlY2sgdHlwZXMgaXQncyBpbnRlcmVzdGVkIGluDQoNCkludHJvZHVj aW5nIFVOS05PV04gc3RhdGUgc2VlbXMgd3JvbmcgdG8gbWUuDQpXaGF0IHNob3VsZCBhbiBhcHBs aWNhdGlvbiBkbyB3aGVuIGl0IGlzIHJlcG9ydGVkPw0KTm93IHRoZXJlJ3MganVzdCBubyB3YXkg dG8gbGVhcm4gaG93IHRoZSBQTUQgYmVoYXZlcywNCmJ1dCBpZiBpdCBwcm92aWRlcyBhIHJlc3Bv bnNlLCBpdCBjYW4ndCBiZSAiSSBkb24ndCBrbm93IHdoYXQgSSBkbyIuDQoNCkhlcmUncyB3aGF0 IEkgdW5kZXJzdG9vZCBmcm9tIHRoZSBjb2RlLCBhc3N1bWluZyB0aGVyZSBhcmUgbm8gYnVncw0K TGlrZSBhbGxvd2luZyB0byBzdG9wIHRoZSBwb3J0IGFuZCBrZWVwIGRhbmdsaW5nIGZsb3cgaGFu ZGxlczoNCg0KYm54dCAgICAgICAgZmx1c2gNCmJvbmRpbmcgICAgIGRlcGVuZHMNCmNueGsgICAg ICAgIGNhbid0IGZpZ3VyZSBvdXQNCmN4Z2JlICAgICAgIGtlZXANCmRwYWEyICAgICAgIGtlZXAN CmUxMDAwICAgICAgIGtlZXANCmVuaWMgICAgICAgIGZsdXNoDQpmYWlsc2FmZSAgICBkZXBlbmRz DQpoaW5pYyAgICAgICBmbHVzaA0KaG5zMyAgICAgICAga2VlcA0KaTQwZSAgICAgICAga2VlcA0K aWF2ZiAgICAgICAga2VlcA0KaWNlICAgICAgICAga2VlcA0KaWdjICAgICAgICAga2VlcA0KaXBu M2tlICAgICAga2VlcA0KaXhnYmUgICAgICAga2VlcA0KbWx4NCAgICAgICAga2VlcA0KbWx4NSAg ICAgICAgZmx1c2gNCm12cHAyICAgICAgIGtlZXANCm9jdGVvbnR4MiAgIGNhbid0IGZpZ3VyZSBv dXQNCnFlZGUgICAgICAgIGtlZXANCnNmYyAgICAgICAgIGZsdXNoDQpzb2Z0bmljICAgICBmbHVz aA0KdGFwICAgICAgICAga2VlcA0KdHhnYmUgICAgICAga2VlcA0KDQpDdXJyZW50bHkgb25lIGZs YWcgd291bGQgYmUgc3VmZmljaWVudCB0byBkZXNjcmliZSBQTUQgYmVoYXZpb3I6DQp0aGV5IGVp dGhlciBrZWVwIG9yIGZsdXNoIHRoZSBmbG93IHJ1bGVzLg0KSWYgdGhlcmUgYXJlIGluZGVlZCBu byBleGNlcHRpb25zLCB3aGljaCBtYWludGFpbmVycyBzaG91bGQgY29uZmlybSwNCkkgY2FuIGFk ZCBmbGFnIHJlcG9ydGluZyBteXNlbGYuDQo=