From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 287C21B547 for ; Fri, 30 Nov 2018 17:01:16 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Nov 2018 08:01:16 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,299,1539673200"; d="scan'208";a="99682580" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by fmsmga007.fm.intel.com with ESMTP; 30 Nov 2018 08:01:16 -0800 Received: from fmsmsx102.amr.corp.intel.com (10.18.124.200) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.408.0; Fri, 30 Nov 2018 08:01:16 -0800 Received: from fmsmsx117.amr.corp.intel.com ([169.254.3.100]) by FMSMSX102.amr.corp.intel.com ([169.254.10.111]) with mapi id 14.03.0415.000; Fri, 30 Nov 2018 08:01:15 -0800 From: "Wiles, Keith" To: "Zhang, Qi Z" CC: dpdk-dev , "Richardson, Bruce" , "Yigit, Ferruh" , Thomas Monjalon , "Ananyev, Konstantin" Thread-Topic: [dpdk-dev] [RFC] DFS (DPDK Filesystem) Thread-Index: AQHUX1g+rIvd8hoH1Eq/csPHM63tj6Vkiy8AgASZHYCAAC71gA== Date: Fri, 30 Nov 2018 16:01:14 +0000 Message-ID: <0A3DA11B-6998-4343-8C2C-D4D7E91943B6@intel.com> References: <897126DE-FC79-48FF-9B35-3E262EBDF093@intel.com> <039ED4275CED7440929022BC67E70611532F7D53@SHSMSX103.ccr.corp.intel.com> In-Reply-To: <039ED4275CED7440929022BC67E70611532F7D53@SHSMSX103.ccr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.254.9.178] Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [RFC] DFS (DPDK Filesystem) 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: , X-List-Received-Date: Fri, 30 Nov 2018 16:01:18 -0000 UGxhaW4gdGV4dCBmb3JtYXQgaXMgYSByZWFsIHBhaW4gdW5sZXNzIEkgdGltZSB0cmF2ZWwgdG8g dGhlIDE5OTDigJlzIDotKA0KDQo+IE9uIE5vdiAzMCwgMjAxOCwgYXQgNzoxMyBBTSwgWmhhbmcs IFFpIFogPHFpLnouemhhbmdAaW50ZWwuY29tPiB3cm90ZToNCj4gDQo+IEhpIEtlaXRoOg0KPiAN Cj4gDQo+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPj4gRnJvbTogZGV2IFttYWlsdG86 ZGV2LWJvdW5jZXNAZHBkay5vcmddIE9uIEJlaGFsZiBPZiBXaWxlcywgS2VpdGgNCj4+IFNlbnQ6 IFR1ZXNkYXksIE5vdmVtYmVyIDI3LCAyMDE4IDExOjAwIFBNDQo+PiBUbzogZHBkay1kZXYgPGRl dkBkcGRrLm9yZz4NCj4+IENjOiBSaWNoYXJkc29uLCBCcnVjZSA8YnJ1Y2UucmljaGFyZHNvbkBp bnRlbC5jb20+OyBZaWdpdCwgRmVycnVoDQo+PiA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IFRo b21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5ldD47DQo+PiBBbmFueWV2LCBLb25zdGFu dGluIDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29tPg0KPj4gU3ViamVjdDogUmU6IFtkcGRr LWRldl0gW1JGQ10gREZTIChEUERLIEZpbGVzeXN0ZW0pDQo+PiANCj4+IA0KPj4gDQo+Pj4gT24g T2N0IDgsIDIwMTgsIGF0IDU6NDIgUE0sIFdpbGVzLCBLZWl0aCA8a2VpdGgud2lsZXNAaW50ZWwu Y29tPiB3cm90ZToNCj4+PiANCj4+PiBIaSBFdmVyeW9uZSwNCj4+PiANCj4+PiBJIHdvdWxkIGxp a2UgdG8gcmVxdWVzdCBjb21tZW50cyBvbiBERlMgYXMgSSBwcmVzZW50ZWQgYXQgdGhlIERQREsg c3VtbWl0DQo+PiBpbiBJcmVsYW5kLg0KPj4+IA0KPj4+IEFzIHdlIGtub3cgRFBESyBjYW4gYmUg ZGlmZmljdWx0IHRvIG1hbmFnZSBhdCBydW4gdGltZSBhbmQgYXMgRFBESw0KPj4gYmVjb21lcyBt b3JlIGR5bmFtaWMgd2UgbmVlZCB0byBhZGRyZXNzIGhvdyB0byBjb25maWd1cmUgYW5kIG1vbml0 b3INCj4+IERQREsgYW5kIERQREstYmFzZWQgYXBwbGljYXRpb25zLiBBIHBvc3NpYmxlIHNvbHV0 aW9uIGlzIHRvIHVzZSBGVVNFIGZpbGUNCj4+IHN5c3RlbSBzdXBwb3J0IGFscmVhZHkgaW4gdGhl IExpbnV4IGtlcm5lbCB0aHJvdWdoIGEgRFBESyBsaWJyYXJ5IHRvIGV4cG9zZSBhDQo+PiBkaXJl Y3Rvcnkgc3RydWN0dXJlIGZvciBhbnlvbmUgdG8gYmUgYWJsZSB0byBtb25pdG9yIGFuZCBjb250 cm9sIHRoZSBhcHAgYnkNCj4+IHJlYWRpbmcvd3JpdGluZyBmaWxlcy4NCj4+PiANCj4+PiBQcmlt YXJpbHkgRFBESyBydW5zIG9uIExpbnV4IGJhc2VkIHN5c3RlbXMsIHdoZXJlIEZVU0UgaXMgd2Vs bCBzdXBwb3J0ZWQuDQo+PiBGVVNFIHdhcyBhZGRlZCB0byBGcmVlQlNEIDEwIHdoaWNoIGFwcGVh cnMgdG8gYmUgdGhlIHNhbWUgZGVzaWduIGFzIExpbnV4Lg0KPj4gV2luZG93cyBkb2VzIG5vdCBz dXBwb3J0IEZVU0UgZGlyZWN0bHkgZnJvbSBNUywgYnV0IGEgb3BlbiBzb3VyY2UgZGVzaWduDQo+ PiBoYXMgYSBGVVNFIGJhc2VkIHNldCBvZiB3cmFwcGVyIEFQSXMgdG8gaGVscCBwb3J0IEZVU0Ug YmFzZWQgZmlsZSBzeXN0ZW1zLg0KPj4+IA0KPj4+IFRvZGF5IHRoZSBvbmx5IHdheSB0byBnZXQg aW5mb3JtYXRpb24gb3V0IG9mIERQREsgaXMgdG8gdXNlIGxvZyBmaWxlcyBvciBhDQo+PiBjb21t YW5kIGxpbmUgd2l0aGluIERQREsgdG8gZGlzcGxheSB0aGUgaW5mb3JtYXRpb24uIFRoZSBpbmZv cm1hdGlvbiBpcyBub3QNCj4+IGVhc3kgZm9yIGFuIGV4dGVybmFsIGFwcGxpY2F0aW9uIHRvIGNv bGxlY3Qgb3IgbW9uaXRvci4gVXNpbmcgREZTIGFueSBhcHBsaWNhdGlvbg0KPj4gY2FuIHJlYWQg YW5kIHdyaXRlIGludG8gdGhpcyB2aXJ0dWFsIGZpbGUgc3lzdGVtIChGVVNFKSBhbmQgcmV0cmll dmUgaW5mb3JtYXRpb24NCj4+IGZyb20gRFBESy9BcHBsaWNhdGlvbiB2aWEgYSByYXcgQVNDSUkg dGV4dCBmaWxlIGFuZC9vciBKU09OIGZvcm1hdHRlZCB0ZXh0Lg0KPj4+IA0KPj4+IERhdGEgcmVh ZCBmcm9tIERGUyBjYW4gYmUgc3RhdGljIG9yIGR5bmFtaWMgZS5nLiB2ZXJzaW9uL2NvcHlyaWdo dCB0ZXh0DQo+PiB3b3VsZCBiZSBzdGF0aWMsIGJ1dCBwb3J0IHN0YXRzIHdvdWxkIGJlIGR5bmFt aWMgYW5kIGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyDQo+PiByZXF1ZXN0cyB0aGUgaW5mb3JtYXRp b24uIFdyaXRpbmcgbmV3IGNvbmZpZ3VyYXRpb24gZGF0YSBpbnRvIERQREsgY2FuIGJlIGENCj4+ IHNpbXBsZSBudW1iZXIgb3IgdGV4dCBvciBhIEpTT04gZGF0YSBzdHJ1Y3R1cmUuIFdyaXRpbmcg c2ltcGxlIEFTQ0lJIHRleHQgZGF0YQ0KPj4gaXMgc2ltcGxlLCBidXQgd3JpdGluZyBhIGxvbmcg SlNPTiBvciBjb25maWd1cmF0aW9uIGZpbGUgbWF5IHNvbWUgY2FyZSwgaS5lLiB3cml0ZQ0KPj4g YSBwYXRoIHRvIGEgZmlsZSBpbiBERlMgdG8gdGhlIGxvY2F0aW9uIG9mIHRoZSBjb25maWd1cmF0 aW9uIGFuZCB1c2UgdGhhdCBmaWxlIHBhdGgNCj4+IGZvciB0aGUgY29uZmlndXJhdGlvbi4NCj4+ PiANCj4+PiBEUERLIGNvbW1hbmQgbGluZSBpcyBnZXR0aW5nIHRvIGJlIHZlcnkgY29tcGxleCBh bmQgbG9uZywgYnV0IHdlIGNhbg0KPj4gZWxpbWluYXRlIG9yIGdyZWF0bHkgcmVkdWNlIHRoZSBj b21tYW5kIGxpbmUgYnkgdXNpbmcgREZTIHRvIGNvbmZpZ3VyZSBEUERLDQo+PiBhdCBzdGFydHVw IGFsb25nIHdpdGggdGhlIGFwcGxpY2F0aW9uIGNvbmZpZ3VyYXRpb24uIEhhdmluZyBEUERLIHN0 YXJ0IHVwIHdpdGgNCj4+IG1pbmltdW0gcmVzb3VyY2VzIGFuZCBhbGxvdyB1cGRhdGluZy9jcmVh dGluZyBhIGZpbGUgaW4gdGhlIERQREsgZmlsZSBzeXN0ZW0NCj4+IHRvIGNvbmZpZ3VyZSBEUERL IHdvdWxkIGJlIGVhc2llci4NCj4+PiANCj4+PiBUaGUgREZTIGlzIGEgRlVTRSBmaWxlc3lzdGVt IGFuY2hvcmVkIGF0IC9kcGRrIGluIHRoZSBob3N0IGZpbGUgc3lzdGVtLCB0aGVuIGENCj4+IGRp cmVjdG9yeSBpcyBjcmVhdGVkIHVuZGVyIC9kcGRrIGZvciBlYWNoIERQREsgaW5zdGFuY2Ugb3Ig YXBwbGljYXRpb24gdXNpbmcNCj4+IDxuYW1lPi08UElEPiBhcyBhIGRpcmVjdG9yeSBuYW1lIGZv cm1hdC4gVGhlbiBpdCBpcyB1cCB0byBEUERLL0FwcGxpY2F0aW9uIHRvDQo+PiBjcmVhdGUgdGhl IGRpcmVjdG9yeSBzdHJ1Y3R1cmVzLCBwZXJtaXNzaW9ucyBhbmQgZmlsZXMgd2l0aGluIHRoZSBk aXJlY3RvcnkNCj4+IG1vdW50IHBvaW50Lg0KPj4+IA0KPj4+IEN1cnJlbnRseSBJIGhhdmUgYSBk aXJlY3RvcnkgYW5kIGZpbGVzIGxheW91dCBmb3IgRFBESywgdGhhdCBuZWVkcyBtb3JlDQo+PiBh dHRlbnRpb24gYXMgSSB3YXMgZm9jdXNpbmcgb24gRlVTRSB0aGVuIHRoZSBsYXlvdXQgYXMgaXQg Y2FuIGJlIGNoYW5nZWQgZmFpcmx5DQo+PiBlYXNpbHkuIEkgY2FuIGVtYWlsIHRoZSB3b3JraW5n IGRvY3VtZW50YXRpb24gZm9yIERGUyBpZiBuZWVkZWQgcGxlYXNlIHNlbmQgbWUNCj4+IGEgc2hv cnQgZW1haWwgb3IgSSBjYW4gcG9zdCB0byB0aGUgZGV2IGxpc3QuIFRoZSBkb2NzIGFsc28gdHJ5 IHRvIGV4cGxhaW4gdGhlIGRlc2lnbg0KPj4gYW5kIEFQSXMgdXNlZCBieSB0aGUgZGV2ZWxvcGVy IGZvciBjcmVhdGluZyBmaWxlcy9kaXJlY3Rvcmllcy4gVGhlIGRvY3MgYXJlIHN0aWxsIGENCj4+ IHdvcmsgaW4gcHJvZ3Jlc3MgYW5kIG1vcmUgYXR0ZW50aW9uIG5lZWRzIHRvIGJlIGRvbmUgYXMg d2UgcHJvZ3Jlc3MuDQo+Pj4gDQo+Pj4gREZTIGlzIGp1c3QgYSBsaWJyYXJ5IGFuZCBub3QgcmVx dWlyZWQgdG8gYmUgdXNlZCBwbHVzIGl0IGRvZXMgbm90IG1vZGlmeSBEUERLDQo+PiBBUElzIG9y IHN0cnVjdHVyZXMgZXhjZXB0IGZvciBhZGRpbmcgYSBmZXcgbmV3IGR1bXAgcm91dGluZXMgZm9y IGZlYXR1cmVzIHRoYXQNCj4+IGRvIG5vdCBoYXZlIG9uZSB0b2RheS4gVGhlIGZpbGUgc3lzdGVt IG9yIEZVU0UgYmFja2VuZCBpbiBEUERLIGlzIGEgZnJlZQ0KPj4gZmxvYXRpbmcgdGhyZWFkIGF0 IHRoaXMgdGltZSwgYnV0IGNvdWxkIGJlIGFmZmluaXRpemVkIHRvIGEgY29yZSBpZiByZXF1aXJl ZC4NCj4+PiANCj4+PiBUaGUgRlVTRSBwcm90b2NvbCB0byB0aGUgYmFja2VuZCBjb2RlIChpbiBE UERLKSBoYXMgYSBsYXJnZSBudW1iZXIgb2YNCj4+IG9wZXJhdGlvbnMsIGJ1dCB3ZSBoYXZlIHNp bXBsaWZpZWQgdGhlIGludGVyZmFjZSBmb3IgZGV2ZWxvcGVycyB0byA1LTYuIFRoZQ0KPj4gaW50 ZXJmYWNlIG9uIHRvcCBvZiBsaWJmdXNlMyBpcyB2ZXJ5IHNpbXBsZSBhbmQgY3VycmVudGx5IHBy b3ZpZGVzIG1vc3Qgb2YgdGhlDQo+PiBuZWVkZWQgQVBJcyBmb3IgbWFuYWdpbmcgdGhlIGZpbGVz IGFuZCBkaXJlY3Rvcmllcy4gVGhlIEZVU0UgZmlsZSBzeXN0ZW0gd2l0aA0KPj4gdGhlIGFkZGVk IHNpbXBsZXIgQVBJIGlzIGR5bmFtaWMgYW5kIGNhbiBiZSBjaGFuZ2VkIGF0IHJ1bnRpbWUuIFRo ZQ0KPj4gZGlyZWN0b3J5L2ZpbGVzIGNhbiBiZSBjb25zdHJ1Y3RlZCB2aWEgQVBJcyBhdCBzdGFy dHVwIG9yIGFueXRpbWUgYWZ0ZXIgc3RhcnR1cC4NCj4+PiANCj4+PiBJIHdvdWxkIGxpa2UgdG8g cHV0IGEgcmVwbyBzb21lcGxhY2Ugd2l0aCBEUERLL0RGUyBzYXkgb24gR2l0SHViIHRvIGFsbG93 DQo+PiBvdGhlcnMgdG8gcGxheSB3aXRoIHRoZSBkZXNpZ24gaW4gdGhlIHNob3J0IHRlcm0uIEkg YWxzbyBoYXZlIGEgZG9jIGZpbGUgZm9yIERGUyBpZg0KPj4gYW55b25lIHdhbnRzIHRvIGxlYXJu IG1vcmUgaW5mb3JtYXRpb24gYW5kIHdpbGwgYmUgaW4gdGhlIHJlcG8gYXMgd2VsbC4gSWYgd2UN Cj4+IGFncmVlIEkgY2FuIHRoZW4gY3JlYXRlIGEgc2V0IG9mIHBhdGNoZXMgZm9yIERQREsuDQo+ PiANCj4+IFdlbGwgdGhlIDE4LjExIHJlbGVhc2UgaXMgb3V0IHRoZSBkb29yLCB0aGlzIG9uZSBz ZWVtZWQgcHJldHR5IGJpZyBhbmQgSSBsb3Qgb2YNCj4+IGhhcmQgd29yayB3YXMgcHV0IGludG8g dGhpcyBvbmUsIHRoYW5rcyB0byBldmVyeW9uZS4NCj4+IA0KPj4gDQo+PiBJdCBpcyB0aW1lIHRv IHRyeSBhbmQgZ2V0IHNvbWUgZmVlZGJhY2sgb24gdGhpcyBSRkMuIEkga25vdyB0aGUgY29kZSBp biB0aGUgcmVwbw0KPj4gaXMgbm90IGZpbmlzaGVkLCBidXQgSSB3b3VsZCBsaWtlIHRvIGdldCBz b21lIGZvbGtzIHRvIGdpdmUgaXQgYSB0cnkgYW5kIGdpdmUNCj4+IGZlZWRiYWNrLiBJIHdvdWxk IGxpa2UgdG8gc3VibWl0IHRoZSBiYXNpYyBERlMgY29kZSB3aXRoIHNvbWUgbG93IGhhbmdpbmcN Cj4+IGl0ZW1zIG1vc3RseSByZWFkb25seSBpbmZvcm1hdGlvbiBmb3IgdGhlIDE5LjAyIHJlbGVh c2UuDQo+PiANCj4+IEhlcmUgaXMgdGhlIHJlcG8gYWdhaW4geW91IGNhbiBsb29rIGF0IGFuZCBw bGF5IHdpdGguIFRoZSBjb2RlIGlzIG1vc3RseSByZWFkeQ0KPj4gZm9yIHVwc3RyZWFtIGJ1dCBz dGlsbCBtb3JlIHdvcmsgbmVlZHMgdG8gYmUgZG9uZS4gSSB3aWxsIHRyeSB0byB1cGRhdGUgdGhl IHJlcG8NCj4+IHRvIHRoZSAxOC4xMSByZWxlYXNlIGNvZGUgYmFzZWQgc29vbi4NCj4+IA0KPj4g aHR0cHM6Ly9naXRodWIuY29tL3BrdGdlbi9kZnMtZHBkaw0KPj4gDQo+PiBUaGFua3MgZm9yIGdp dmluZyB0aGlzIGEgcmV2aWV3Lg0KPiANCj4gU29tZSB0aG91Z2h0cyBiYXNlIG9uIGEgcXVpY2sg dGVzdCBhbmQgcmV2aWV3Lg0KPiANCj4gT3ZlcmFsbCwgSSB0aGluayB0aGlzIGlzIGEgdmVyeSBo YW5keSBmZWF0dXJlLiBJIHJlYWxseSBob3BlIGl0IGNhbiBiZSBtZXJnZWQgcXVpY2tseSA6KQ0K PiANCj4gQmVsb3cgYXJlIHNvbWUgY2FwdHVyZXM6DQo+IA0KPiAxKSB3aGVuIEkgdHJ5IHRvIHRl c3QgZGZzIHdpdGggZXhpc3QgYXBwbGljYXRpb24gKHNheSB0ZXN0cG1kKSwgSSBuZWVkIHRvIHJl cGxhY2UgcnRlX2VhbF9pbml0IHdpdGggZGZzX2VhbF9pbml0LCANCj4gSSB0aGluayBhIGJldHRl ciB3YXkgaXMgYnkgdXNpbmcgYXJncyBsaWtlIC0tZGZzIHdoaWNoIGNhbiBhdm9pZCB0aGUgY29k ZSBjaGFuZ2UsIGJ1dCBwbGVhc2UgbGV0IG1lIGtub3cgaWYgSSBtaXNzZWQgdGhlIHBvaW50Lg0K DQpUaGlzIGlzIGEgZ29vZCBpZGVhLCBsZXQgbWUgbG9vayBpbnRvIHdoYXQgdGhhdCB3b3VsZCB0 YWtlLiBJIGRvIG5vdCB3YW50IHRvIHJlcXVpcmUgREZTIHRvIGJlIGxpbmtlZCBpbnRvIHRoZSBp bWFnZSBpbiB0aGlzIGNhc2Ugc28g4oCUZGZzIG5lZWQgdG8gYmUgYSBub29wIGlmIG5vdCBwcmVz ZW50Lg0KPiANCj4gMikgSXMgUE1EIGFsbG93ZWQgdG8gdXNlIGRmcyB0byBleHBvc2UgZGV2aWNl IHNwZWNpZmljIGluZm9ybWF0aW9uIChwcml2YXRlIEFQSSBhY2Nlc3MsIHV0aWxpdGllcyBmb3Ig ZGlhZ25vc2UgcHVycG9zZSAuLi4pID8gaWYgaXQgaXMgDQo+ICBJIHRoaW5rIGRmcyBjb3VsZCBw cm92aWRlIG1vcmUgc3RhbmRhcmQgd2F5IGZvciBQTUQgdG8gYWRkIGNvbnRlbnQgdG8gYSBzdWIg ZGlyZWN0b3J5ICwgSXQgY291bGQgYmUgDQo+IAlzdHJ1Y3QgZGZzX29wcyB7DQo+IAkJbW91bnQo ZGZzX25vZGUgcGFyZW50Li4uKTsgICAvKiBjcmVhdGUgY29udGVudCBvZiBpbiB0aGUgc3ViIGRp cmVjdG9yeSAqLw0KPiAJCXVubW91bnQoZGZzX25vZGUgcGFyZW50Li4uKTsgLyogZGVzdHJveSB0 aGUgY29udGVudC4gKi8NCj4gCX0gICAgDQo+IA0KPiAgUE1EIGlzIHJlc3BvbnNpYmxlIGZvciBj cmVhdGluZyBhIGRmc19vcHMgaW5zdGFuY2UgYW5kIHNldHVwIHRoZSBjYWxsYmFjayBmdW5jdGlv bnMgZHVyaW5nIGluaXRpYWxpemF0aW9uLihwcm9iZSkNCj4gIEFuIEFQSSBydGVfZXRoX2Rldl9n ZXRfZGZzX2N0eChwb3J0X2lkKSBjYW4gYmUgdXNlZCB0byBnZXQgdGhlIGNvbnRleHQgdGhhdCB3 cmFwcGVkIGRmc19vcHMgYW5kIHJlbGF0ZWQgZXRoZGV2IGluc3RhbmNlLiAoc2ltaWxhciBmb3Ig Y3J5cHRvZGV2IGFuZCBvdGhlcnMgKQ0KPiAgU28gZHVyaW5nIGRmcyBpbml0LCBhZnRlciB3ZSBj cmVhdGUgZm9sZGVyIGZvciBhIHBvcnQsIHdlIGNhbiBkbyBhZGRpdGlvbmFsIHN0ZXAgdG8gY3Jl YXRlIGEgcGFyZW50IG5vZGUgZm9yIFBNRCB0aGVuIGNhbGwgaXRzJ3MgZGV2X29wcy0+bW91bnQs IHRoZW4gYWxsIHRoZSBkZXZpY2Ugc3BlY2lmaWMgaW5mb3JtYXRpb24gd2lsbCBiZSBwb3BwZWQg aW4gdGhhdCBmb2xkZXINCj4gDQoNClRoaXMgc2VlbXMgbGlrZSBhIHJlYXNvbmFibGUgb3B0aW9u LCBpdCBzb3VuZHMgbGlrZSBhIGNhbGxiYWNrIGZyb20gdGhlIERGUyBpbml0IG9yIHBvc3NpYmxl IGEgY29uc3RydWN0b3IgbWV0aG9kLg0KDQpQTUQgaXMgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5n IGEgZGZzX29wcyBpbnN0YW5jZSBhbmQgc2V0dXAgdGhlIGNhbGxiYWNrIGZ1bmN0aW9ucyBkdXJp bmcgaW5pdGlhbGl6YXRpb24uKHByb2JlKQ0KQW4gQVBJIHJ0ZV9ldGhfZGV2X2dldF9kZnNfY3R4 KHBvcnRfaWQpIGNhbiBiZSB1c2VkIHRvIGdldCB0aGUgY29udGV4dCB0aGF0IHdyYXBwZWQgZGZz X29wcyBhbmQgcmVsYXRlZCBldGhkZXYgaW5zdGFuY2UuIChzaW1pbGFyIGZvciBjcnlwdG9kZXYg YW5kIG90aGVycyApDQpTbyBkdXJpbmcgZGZzIGluaXQsIGFmdGVyIHdlIGNyZWF0ZSBmb2xkZXIg Zm9yIGEgcG9ydCwgd2UgY2FuIGRvIGFkZGl0aW9uYWwgc3RlcCB0byBjcmVhdGUgYSBwYXJlbnQg bm9kZSBmb3IgUE1EIHRoZW4gY2FsbCBpdHMncyBkZXZfb3BzLT5tb3VudCwgdGhlbiBhbGwgdGhl IGRldmljZSBzcGVjaWZpYyBpbmZvcm1hdGlvbiB3aWxsIGJlIHBvcHBlZCBpbiB0aGF0IGZvbGRl cg0KPiAzKSBGb3IgcHJpbWFyeS1zZWNvbmRhcnkgbW9kZWwsIGRmcyBzaG91bGQgd29ya3Mgd2Vs bCwgYnV0IHRoZSBtaXNzaW5nIHBhcnQgaXMgdGhlcmUgaXMgbm8gbGluayBiZXR3ZWVuIHByaW1h cnkgYW5kIHNlY29uZGFyeSBwcm9jZXNzLCANCj4gIGl0IHdpbGwgYmUgbmF0dXJlIGlmIHdlIGNh biBsaXN0IGFsbCBzZWNvbmRhcnkgcHJvY2VzcyBpbiBhIHByaW1hcnkgZm9sZGVyIG9yIGV2ZW4g YmV0dGVyIGlmIHdlIGNhbiBqdW1wIHRvIHNlY29uZGFyeSBmb2xkZXIgYnkgc29tZSBzb2Z0IGxp bmsgYW5kIHNhbWUgdGhpbmcgaW4gdGhlIHJldmVyc2UgZGlyZWN0aW9uLiANCg0KSSB0aGluayB0 aGlzIGNhbiBiZSBkb25lLCBidXQgZWFjaCBzZWNvbmRhcnkgd291bGQgaGF2ZSBpdHMgb3duIGRm cyBmaWxlIHN5c3RlbS4gQWRkaW5nIHRoZSBsaW5rcyBjb3VsZCBiZSByZWFzb25hYmxlIGlmIHdl IGNvdWxkIGFzc3VtZSB0aGUgc2Vjb25kYXJ5IHByb2Nlc3NlcyBhcmUgYWx3YXlzIHVwLg0KDQo+ IA0KPiBUaGFua3MNCj4gUWkNCj4gDQo+PiANCj4+PiANCj4+PiBSZWdhcmRzLA0KPj4+IEtlaXRo DQo+Pj4gDQo+PiANCj4+IFJlZ2FyZHMsDQo+PiBLZWl0aA0KDQpSZWdhcmRzLA0KS2VpdGgNCg0K