From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from demumfd001.nsn-inter.net (demumfd001.nsn-inter.net [93.183.12.32]) by dpdk.org (Postfix) with ESMTP id 7D27E234 for ; Thu, 22 Jan 2015 10:06:05 +0100 (CET) Received: from demuprx016.emea.nsn-intra.net ([10.150.129.55]) by demumfd001.nsn-inter.net (8.14.3/8.14.3) with ESMTP id t0M961ju007682 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 22 Jan 2015 09:06:01 GMT Received: from SGSIHTC003.nsn-intra.net ([10.159.225.20]) by demuprx016.emea.nsn-intra.net (8.12.11.20060308/8.12.11) with ESMTP id t0M95cra027971 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Thu, 22 Jan 2015 10:05:59 +0100 Received: from SGSIMBX004.nsn-intra.net ([169.254.4.230]) by SGSIHTC003.nsn-intra.net ([10.159.225.20]) with mapi id 14.03.0195.001; Thu, 22 Jan 2015 17:05:34 +0800 From: "Chi, Xiaobo (NSN - CN/Hangzhou)" To: ext Bruce Richardson Thread-Topic: [dpdk-dev] [PATCH v2] add one option memory-only for secondary processes Thread-Index: AQHQGRej1+jPlGSl/0qCbiXoBwy0EJzMD6jA Date: Thu, 22 Jan 2015 09:05:34 +0000 Message-ID: References: <1417601518-16852-1-git-send-email-xiaobo.chi@nsn.com> <7F861DC0615E0C47A872E6F3C5FCDDBD05DCB1C7@BPXM14GP.gisp.nec.co.jp> <7F861DC0615E0C47A872E6F3C5FCDDBD05DD6E68@BPXM14GP.gisp.nec.co.jp> <20141216100344.GA9152@bricha3-MOBL3> In-Reply-To: <20141216100344.GA9152@bricha3-MOBL3> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.159.225.113] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-purgate-type: clean X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de X-purgate: clean X-purgate: This mail is considered clean (visit http://www.eleven.de for further information) X-purgate-size: 17222 X-purgate-ID: 151667::1421917561-00007286-4D0421D8/0/0 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH v2] add one option memory-only for secondary processes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jan 2015 09:06:05 -0000 SGksIEJydWNlLA0KU2luY2UgdGhlIERQREsyLjAgbWVyZ2Ugd2luZG93IGlzIG9wZW5lZCBub3cs IHNvIGlzIGl0IHBvc3NpYmxlIGZvciB0aGlzIHBhdGNoIHRvIGJlIG9uZSBjYW5kaWRhdGUgZm9y IHYyLjA/DQpJIHNlYXJjaGVkIGluIHRoZSBEUERLIHBhdGNod29yayhodHRwOi8vd3d3LmRwZGsu b3JnL2Rldi9wYXRjaHdvcmsvcHJvamVjdC9kcGRrL2xpc3QvP3N0YXRlPSomcT1tZW1vcnktb25s eSZhcmNoaXZlPWJvdGggKSwgYnV0IGNhbiBub3QgZmluZCB0aGlzIFYyIHBhdGNoLiBDYW4geW91 IHBsZWFzZSBoZWxwIHRvIGNoZWNrIHdoeT8gVGhhbmtzIGEgbG90Lg0KDQpGaWx0ZXJzOiBTZWFy Y2ggPSBtZW1vcnktb25seSAgcmVtb3ZlIGZpbHRlcg0KUGF0Y2gJIERhdGUJU3VibWl0dGVyCURl bGVnYXRlCVN0YXRlDQpbZHBkay1kZXZdIGFkZCBvbmUgb3B0aW9uIG1lbW9yeS1vbmx5IGZvciB0 aG9zZSBzZWNvbmRhcnkgUFJCcwkyMDE0LTEyLTAyCWNoaXhpYW9ibwkJTm90IEFwcGxpY2FibGUN CltkcGRrLWRldl0gYWRkIG9uZSBvcHRpb24gbWVtb3J5LW9ubHkgZm9yIHRob3NlIHNlY29uZGFy eSBQUkJzCTIwMTQtMTItMDIJY2hpeGlhb2JvCQlDaGFuZ2VzIFJlcXVlc3RlZA0KDQpCcmdzLA0K Q2hpIFhpYW9ibw0KIA0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KDQpGcm9tOiBleHQg QnJ1Y2UgUmljaGFyZHNvbiBbbWFpbHRvOmJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tXSANClNl bnQ6IFR1ZXNkYXksIERlY2VtYmVyIDE2LCAyMDE0IDY6MDQgUE0NClRvOiBDaGksIFhpYW9ibyAo TlNOIC0gQ04vSGFuZ3pob3UpDQpDYzogZXh0IEhpcm9zaGkgU2hpbWFtb3RvOyBkZXZAZHBkay5v cmcNClN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSCB2Ml0gYWRkIG9uZSBvcHRpb24gbWVt b3J5LW9ubHkgZm9yIHNlY29uZGFyeSBwcm9jZXNzZXMNCg0KT24gVHVlLCBEZWMgMTYsIDIwMTQg YXQgMDk6MjY6NDhBTSArMDAwMCwgQ2hpLCBYaWFvYm8gKE5TTiAtIENOL0hhbmd6aG91KSB3cm90 ZToNCj4gSGksIEJydWNlLA0KPiBIb3cgYWJvdXQgdGhpcyBwYXRjaCwgY2FuIGl0IGJlIG1lcmdl ZCB0byBtYXN0ZXIgYnJhbmNoPyBUaGFua3MuDQo+IA0KPiBCcmdzLA0KPiBDaGkgWGlhb2JvDQo+ IA0KDQpBdCB0aGlzIHBvaW50LCBJIHRoaW5rIHdlIGFyZSB3ZWxsIHBhc3QgY29kZS1mcmVlemUg Zm9yIG5ldyBmZWF0dXJlcyBmb3IgMS44LA0KYnV0IHRoaXMgbG9va3MgYSBnb29kIGNhbmRpZGF0 ZSBmb3IgMi4wIG9uY2UgdGhlIG1lcmdlIHdpbmRvdyBmb3IgdGhhdCBvcGVucy4NCg0KL0JydWNl DQoNCj4gDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IENoaSwgWGlhb2Jv IChOU04gLSBDTi9IYW5nemhvdSkgDQo+IFNlbnQ6IE1vbmRheSwgRGVjZW1iZXIgMTUsIDIwMTQg NTo1OCBQTQ0KPiBUbzogJ2V4dCBIaXJvc2hpIFNoaW1hbW90byc7IGRldkBkcGRrLm9yZw0KPiBT dWJqZWN0OiBSRTogW2RwZGstZGV2XSBbUEFUQ0ggdjJdIGFkZCBvbmUgb3B0aW9uIG1lbW9yeS1v bmx5IGZvciBzZWNvbmRhcnkgcHJvY2Vzc2VzDQo+IA0KPiBIaSwgSGlyb3NoaSwNCj4gWWVzLCB0 aGUgc2hvdWxkIGJlIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uLCBub3Qgb25seSBkdWUgdG8gdGhl IG1lbXBvb2wgY2FjaGUsIGJ1dCBhbHNvIGR1ZSB0byBwcm9jZXNzIHNjaGVkdWxpbmcgb3Zlcmhl YWQgKGxlYWQgYnkgbm8gQ1BVIHBpbi4pDQo+IEkgaGF2ZSBub3QgZG9uZSB0aGUgcGVyZm9ybWFu Y2UgdGVzdGluZy4gSW4gbXkgcHJvamVjdCBzY2VuYXJpb3MsIHRob3NlIFNFQ09OREFSWSBwcm9j ZXNzZXMgb25seSBzZW5kL3JlY2VpdmUgbWVzc2FnZXMgdG8vZnJvbSB0aGUgUFJJTUFSWSBwcm9j ZXNzIHZpYSBtZW1wb29sL3JpbmcsIHRoZSB0aHJvdWdocHV0IGlzIG5vdCBzbyBoaWdoLCBzbyB0 aGUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gaXMgbm90IGNyaXRpY2FsIHRvIHVzLiBidXQgdGhl cmUgYXJlIGRvemVucyBvZiBTRUNPTkRBUlkgcHJvY2Vzc2VzIGluIG91ciBzeXN0ZW0sIGl0IHdp bGwgYmUgaGFyZCB0byBtYW51YWxseSBwcm9wZXJseSBwaW4gdGhlbSB0byBkaWZmZXJlbnQgQ1BV IGNvcmVzLCB3aGF0IHdlIHdhbnQgaXMgdG8gYXBwbHkgbGludXggc3RhbmRhcmQgc2NoZWR1bGlu ZyBtZWNoYW5pc20gdG8gZG8gbG9hZCBiYWxhbmNlIGJldHdlZW4gQ1BVIGNvcmVzLg0KPiANCj4g QnJncywNCj4gQ2hpIFhpYW9ibw0KPiANCj4gDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IGV4dCBIaXJvc2hpIFNoaW1hbW90byBbbWFpbHRvOmgtc2hpbWFtb3RvQGN0Lmpw Lm5lYy5jb21dIA0KPiBTZW50OiBUaHVyc2RheSwgRGVjZW1iZXIgMTEsIDIwMTQgMTE6MDMgQU0N Cj4gVG86IENoaSwgWGlhb2JvIChOU04gLSBDTi9IYW5nemhvdSk7IGRldkBkcGRrLm9yZw0KPiBT dWJqZWN0OiBSRTogW2RwZGstZGV2XSBbUEFUQ0ggdjJdIGFkZCBvbmUgb3B0aW9uIG1lbW9yeS1v bmx5IGZvciBzZWNvbmRhcnkgcHJvY2Vzc2VzDQo+IA0KPiBIaSwNCj4gDQo+IHNvcnJ5IGZvciB0 aGUgZGVsYXkuDQo+IA0KPiA+IFN1YmplY3Q6IFJFOiBbZHBkay1kZXZdIFtQQVRDSCB2Ml0gYWRk IG9uZSBvcHRpb24gbWVtb3J5LW9ubHkgZm9yIHNlY29uZGFyeSBwcm9jZXNzZXMNCj4gPiANCj4g PiBIaSwgSGlyb3NoaSwNCj4gPiBZZXMsIHlvdSBhcmUgcmlnaHQsIGluIG9yZGVyIHRvIGF2b2lk IHN1Y2ggcHJvYmxlbSwgd2hpbGUgY3JlYXRlIHRoZSBtZW1wb29sLCB3aGljaCBzaGFsbCBiZSBz aGFyZWQgYmV0d2VlbiB0aGUgcHJpbWFyeQ0KPiA+IHByb2Nlc3MgYW5kIHRob3NlIHNlY29uZGFy eSBQcm9jZXNzZXMsIHdlIG5lZWQgdG8gYXNzaWduIHRoZSBjYWNoZV9zaXplIHBhcmFtIHZhbHVl IHRvIGJlIHplcm8uIEFuZCBpbiBvcmRlciB0byBtYWtlIHRoZQ0KPiA+IHN5c3RlbSBtb3JlIHN0 YWJsZSwgaXQncyBiZXR0ZXIgdG8gZGVmaW5lIHRoZSBSVEVfTUVNUE9PTF9DQUNIRV9NQVhfU0la RSB0byBiZSAwIGluIHJ0ZV9jb25maWcuaC4NCj4gDQo+IFllcywgaXQgcHJldmVudHMgdGhlIGRh dGEgY29ycnVwdGlvbiwgYnV0IGl0IGFsc28gaHVydHMgdGhlIHBlcmZvcm1hbmNlLg0KPiBJIHRo aW5rLCBpZiB3ZSB1c2UgdGhlIG1idWYgdy9vIGNhY2hlIGZvciBQTUQsIHdlIHdpbGwgc2VlIHRo ZSBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbi4NCj4gDQo+IERvbid0IHlvdSBoYXZlIGFueSBudW1i ZXI/DQo+IA0KPiB0aGFua3MsDQo+IEhpcm9zaGkNCj4gDQo+ID4gDQo+ID4gLyogY3JlYXRlIHRo ZSBtZW1wb29sICovDQo+ID4gc3RydWN0IHJ0ZV9tZW1wb29sICoNCj4gPiBydGVfbWVtcG9vbF9j cmVhdGUoY29uc3QgY2hhciAqbmFtZSwgdW5zaWduZWQgbiwgdW5zaWduZWQgZWx0X3NpemUsDQo+ ID4gCQkgICB1bnNpZ25lZCBjYWNoZV9zaXplLCB1bnNpZ25lZCBwcml2YXRlX2RhdGFfc2l6ZSwN Cj4gPiAJCSAgIHJ0ZV9tZW1wb29sX2N0b3JfdCAqbXBfaW5pdCwgdm9pZCAqbXBfaW5pdF9hcmcs DQo+ID4gCQkgICBydGVfbWVtcG9vbF9vYmpfY3Rvcl90ICpvYmpfaW5pdCwgdm9pZCAqb2JqX2lu aXRfYXJnLA0KPiA+IAkJICAgaW50IHNvY2tldF9pZCwgdW5zaWduZWQgZmxhZ3MpOw0KPiA+IA0K PiA+IA0KPiA+IEJyZ3MsDQo+ID4gQ2hpIHhpYW9ibw0KPiA+IA0KPiA+IA0KPiA+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogZXh0IEhpcm9zaGkgU2hpbWFtb3RvIFttYWls dG86aC1zaGltYW1vdG9AY3QuanAubmVjLmNvbV0NCj4gPiBTZW50OiBXZWRuZXNkYXksIERlY2Vt YmVyIDAzLCAyMDE0IDY6NTQgUE0NCj4gPiBUbzogQ2hpLCBYaWFvYm8gKE5TTiAtIENOL0hhbmd6 aG91KTsgZGV2QGRwZGsub3JnDQo+ID4gU3ViamVjdDogUkU6IFtkcGRrLWRldl0gW1BBVENIIHYy XSBhZGQgb25lIG9wdGlvbiBtZW1vcnktb25seSBmb3Igc2Vjb25kYXJ5IHByb2Nlc3Nlcw0KPiA+ IA0KPiA+IEhpLA0KPiA+IA0KPiA+ID4gU3ViamVjdDogW2RwZGstZGV2XSBbUEFUQ0ggdjJdIGFk ZCBvbmUgb3B0aW9uIG1lbW9yeS1vbmx5IGZvciBzZWNvbmRhcnkgcHJvY2Vzc2VzDQo+ID4gPg0K PiA+ID4gRnJvbTogQ2hpIFhpYW9ibyA8eGlhb2JvLmNoaUBuc24uY29tPg0KPiA+ID4NCj4gPiA+ IFByb2JsZW06IFRoZXJlIGlzIG9uZSBub3JtYWwgRFBESyBwcm9jZXNzZXMgZGVwbG95bWVudCBz Y2VuYXJpb3M6IG9uZSBwcmltYXJ5IHByb2Nlc3MgYW5kIHNldmVyYWwgKGV2ZW4gaHVuZHJlZHMp IHNlY29uZGFyeQ0KPiA+ID4gcHJvY2Vzc2VzOyBhbGwgb3V0c2lkZSBwYWNrZXRzL21lc3NhZ2Vz IGFyZSBzZW50L3JlY2VpdmVkIGJ5IHByaW1hcnkgcHJvY2VzcyBhbmQgdGhlbiBkaXN0cmlidXRl IHRoZW0gdG8gdGhvc2Ugc2Vjb25kYXJ5DQo+ID4gPiBwcm9jZXNzZXMgYnkgRFBESydzIHJpbmcv c2hhcmVkbWVtb3J5IG1lY2hhbmlzbS4gSW4gc3VjaCBzY2VuYXJpb3MsIHRob3NlIFNFQ09OREFS WSBwcm9jZXNzZXMgbmVlZCBvbmx5IGh1Z2VwYWdlIGJhc2VkDQo+ID4gPiBzaGFyZW1lbW9yeSBt ZWNoYW5pc20gYW5kIGl0P++/ve+/vXMgdXBwZXIgbGlicyAoc3VjaCBhcyByaW5nLCBtZW1wb29s LCBldGMuKSwgdGhleSBuZWVkIG5vdCBjcHUgY29yZSBwaW5uaW5nLCBpb3BsIHByaXZpbGVnZQ0K PiA+ID4gY2hhbmdpbmcgLCBwY2kgZGV2aWNlLCB0aW1lciwgYWxhcm0sIGludGVycnVwdCwgc2hh cmVkX2RyaXZlcl9saXN0LCAgY29yZV9pbmZvLCB0aHJlYWRzIGZvciBlYWNoIGNvcmUsIGV0Yy4g VGhlbiwgZm9yDQo+ID4gPiBzdWNoIGtpbmQgb2YgU0VDT05EQVJZIHByb2Nlc3NlcywgdGhlIGN1 cnJlbnQgcnRlX2VhbF9pbml0KCkgaXMgdG9vIGhlYXZ5Lg0KPiA+ID4NCj4gPiA+IFNvbHV0aW9u Ok9uZSBuZXcgRUFMIGluaXRpYWxpemluZyBhcmd1bWVudCwgLS1tZW1vcnktb25seSwgaXMgYWRk ZWQuIEl0IGlzIG9ubHkgZm9yIHRob3NlIFNFQ09OREFSWSBwcm9jZXNzZXMgd2hpY2gNCj4gPiBv bmx5DQo+ID4gPiB3YW50IHRvIHNoYXJlIG1lbW9yeSB3aXRoIG90aGVyIHByb2Nlc3Nlcy4gaWYg dGhpcyBhcmd1bWVudCBpcyBkZWZpbmVkLCB1c2VycyBuZWVkIG5vdCBkZWZpbmUgdGhvc2UgbWFu ZGF0b3J5IGFyZ3VtZW50cywNCj4gPiA+IHN1Y2ggYXMgLWMgYW5kIC1uLCBkdWUgdG8gd2UgZG9u J3Qgd2FudCB0byBwaW4gc3VjaCBraW5kIG9mIHByb2Nlc3NlcyB0byBhbnkgQ1BVcy4NCj4gPiAN Cj4gPiBob3dldmVyLCB3ZSBuZWVkIHRoZSBsY29yZV9pZCBwZXIgdGhyZWFkIHRvIHVzZSBtZW1w b29sLg0KPiA+IElmIHRoZSBsY29yZV9pZCBpcyBub3QgaW5pdGlhbGl6ZWQsIGl0IG11c3QgYmUg MCwgYW5kIG11bHRpcGxlIHRocmVhZHMgd2lsbCBicmVhaw0KPiA+IG1lbXBvb2wgY2FjaGVzIHBl ciB0aHJlYWQsIGJlY2F1c2Ugb2YgcmFjZSBjb25kaXRpb24uDQo+ID4gV2UgaGF2ZSB0byBhc3Np Z24gbGNvcmVfaWQgcGVyIHRocmVhZCwgdGhlc2UgaWRzIG11c3Qgbm90IGJlIG92ZXJsYXBwZWQs IG9yIGRpc2FibGUNCj4gPiBtZW1wb29sIGhhbmRsaW5nIGluIFNFQ09OREFSWSBwcm9jZXNzLg0K PiA+IA0KPiA+IHRoYW5rcywNCj4gPiBIaXJvc2hpDQo+ID4gDQo+ID4gPiBTaWduZWQtb2ZmLWJ5 OiBDaGkgWGlhb2JvIDx4aWFvYm8uY2hpQG5zbi5jb20+DQo+ID4gPiAtLS0NCj4gPiA+ICBsaWIv bGlicnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9vcHRpb25zLmMgfCAxNyArKysrKysrKysrKyst LS0NCj4gPiA+ICBsaWIvbGlicnRlX2VhbC9jb21tb24vZWFsX2ludGVybmFsX2NmZy5oICAgfCAg MSArDQo+ID4gPiAgbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9vcHRpb25zLmggICAgICAgIHwg IDIgKysNCj4gPiA+ICBsaWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsLmMgICAgICAgICAg fCAzNCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0NCj4gPiA+ICA0IGZpbGVzIGNoYW5n ZWQsIDM2IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiA+IGRpZmYg LS1naXQgYS9saWIvbGlicnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9vcHRpb25zLmMgYi9saWIv bGlicnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9vcHRpb25zLmMNCj4gPiA+IGluZGV4IGUyODEw YWIuLjdiMTg0OTggMTAwNjQ0DQo+ID4gPiAtLS0gYS9saWIvbGlicnRlX2VhbC9jb21tb24vZWFs X2NvbW1vbl9vcHRpb25zLmMNCj4gPiA+ICsrKyBiL2xpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxf Y29tbW9uX29wdGlvbnMuYw0KPiA+ID4gQEAgLTg1LDYgKzg1LDcgQEAgZWFsX2xvbmdfb3B0aW9u c1tdID0gew0KPiA+ID4gIAl7T1BUX1hFTl9ET00wLCAwLCAwLCBPUFRfWEVOX0RPTTBfTlVNfSwN Cj4gPiA+ICAJe09QVF9DUkVBVEVfVUlPX0RFViwgMSwgTlVMTCwgT1BUX0NSRUFURV9VSU9fREVW X05VTX0sDQo+ID4gPiAgCXtPUFRfVkZJT19JTlRSLCAxLCBOVUxMLCBPUFRfVkZJT19JTlRSX05V TX0sDQo+ID4gPiArCXtPUFRfTUVNT1JZX09OTFksIDAsIE5VTEwsIE9QVF9NRU1PUllfT05MWV9O VU19LA0KPiA+ID4gIAl7MCwgMCwgMCwgMH0NCj4gPiA+ICB9Ow0KPiA+ID4NCj4gPiA+IEBAIC0x MjYsNiArMTI3LDcgQEAgZWFsX3Jlc2V0X2ludGVybmFsX2NvbmZpZyhzdHJ1Y3QgaW50ZXJuYWxf Y29uZmlnICppbnRlcm5hbF9jZmcpDQo+ID4gPiAgCWludGVybmFsX2NmZy0+bm9faHBldCA9IDE7 DQo+ID4gPiAgI2VuZGlmDQo+ID4gPiAgCWludGVybmFsX2NmZy0+dm13YXJlX3RzY19tYXAgPSAw Ow0KPiA+ID4gKwlpbnRlcm5hbF9jZmctPm1lbW9yeV9vbmx5PSAwOw0KPiA+ID4gIH0NCj4gPiA+ DQo+ID4gPiAgLyoNCj4gPiA+IEBAIC00NTQsNiArNDU2LDEwIEBAIGVhbF9wYXJzZV9jb21tb25f b3B0aW9uKGludCBvcHQsIGNvbnN0IGNoYXIgKm9wdGFyZywNCj4gPiA+ICAJCWNvbmYtPnByb2Nl c3NfdHlwZSA9IGVhbF9wYXJzZV9wcm9jX3R5cGUob3B0YXJnKTsNCj4gPiA+ICAJCWJyZWFrOw0K PiA+ID4NCj4gPiA+ICsJY2FzZSBPUFRfTUVNT1JZX09OTFlfTlVNOg0KPiA+ID4gKwkJY29uZi0+ bWVtb3J5X29ubHk9IDE7DQo+ID4gPiArCQlicmVhazsNCj4gPiA+ICsNCj4gPiA+ICAJY2FzZSBP UFRfTUFTVEVSX0xDT1JFX05VTToNCj4gPiA+ICAJCWlmIChlYWxfcGFyc2VfbWFzdGVyX2xjb3Jl KG9wdGFyZykgPCAwKSB7DQo+ID4gPiAgCQkJUlRFX0xPRyhFUlIsIEVBTCwgImludmFsaWQgcGFy YW1ldGVyIGZvciAtLSINCj4gPiA+IEBAIC01MjUsOSArNTMxLDkgQEAgZWFsX2NoZWNrX2NvbW1v bl9vcHRpb25zKHN0cnVjdCBpbnRlcm5hbF9jb25maWcgKmludGVybmFsX2NmZykNCj4gPiA+ICB7 DQo+ID4gPiAgCXN0cnVjdCBydGVfY29uZmlnICpjZmcgPSBydGVfZWFsX2dldF9jb25maWd1cmF0 aW9uKCk7DQo+ID4gPg0KPiA+ID4gLQlpZiAoIWxjb3Jlc19wYXJzZWQpIHsNCj4gPiA+IC0JCVJU RV9MT0coRVJSLCBFQUwsICJDUFUgY29yZXMgbXVzdCBiZSBlbmFibGVkIHdpdGggb3B0aW9ucyAi DQo+ID4gPiAtCQkJIi1jIG9yIC1sXG4iKTsNCj4gPiA+ICsJaWYgKCFsY29yZXNfcGFyc2VkICYm ICEoaW50ZXJuYWxfY2ZnLT5wcm9jZXNzX3R5cGUgPT0gUlRFX1BST0NfU0VDT05EQVJZJiYgaW50 ZXJuYWxfY2ZnLT5tZW1vcnlfb25seSkgKSB7DQo+ID4gPiArCQlSVEVfTE9HKEVSUiwgRUFMLCAi Rm9yIHRob3NlIHByb2Nlc3NlcyB3aXRob3V0IG1lbW9yeS1vbmx5IG9wdGlvbiwgQ1BVIGNvcmVz ICINCj4gPiA+ICsJCQkJCQkJIm11c3QgYmUgZW5hYmxlZCB3aXRoIG9wdGlvbnMgLWMgb3IgLWxc biIpOw0KPiA+ID4gIAkJcmV0dXJuIC0xOw0KPiA+ID4gIAl9DQo+ID4gPiAgCWlmIChjZmctPmxj b3JlX3JvbGVbY2ZnLT5tYXN0ZXJfbGNvcmVdICE9IFJPTEVfUlRFKSB7DQo+ID4gPiBAQCAtNTQ1 LDYgKzU1MSwxMCBAQCBlYWxfY2hlY2tfY29tbW9uX29wdGlvbnMoc3RydWN0IGludGVybmFsX2Nv bmZpZyAqaW50ZXJuYWxfY2ZnKQ0KPiA+ID4gIAkJCSJzcGVjaWZpZWRcbiIpOw0KPiA+ID4gIAkJ cmV0dXJuIC0xOw0KPiA+ID4gIAl9DQo+ID4gPiArCWlmICggaW50ZXJuYWxfY2ZnLT5wcm9jZXNz X3R5cGUgIT0gUlRFX1BST0NfU0VDT05EQVJZICYmIGludGVybmFsX2NmZy0+bWVtb3J5X29ubHkg KSB7DQo+ID4gPiArCQlSVEVfTE9HKEVSUiwgRUFMLCAib25seSBzZWNvbmRhcnkgcHJvY2Vzc2Vz IGNhbiBzcGVjaWZ5IG1lbW9yeS1vbmx5IG9wdGlvbi5cbiIpOw0KPiA+ID4gKwkJcmV0dXJuIC0x Ow0KPiA+ID4gKwl9DQo+ID4gPiAgCWlmIChpbmRleChpbnRlcm5hbF9jZmctPmh1Z2VmaWxlX3By ZWZpeCwgJyUnKSAhPSBOVUxMKSB7DQo+ID4gPiAgCQlSVEVfTE9HKEVSUiwgRUFMLCAiSW52YWxp ZCBjaGFyLCAnJSUnLCBpbiAtLSJPUFRfRklMRV9QUkVGSVgiICINCj4gPiA+ICAJCQkib3B0aW9u XG4iKTsNCj4gPiA+IEBAIC01OTAsNiArNjAwLDcgQEAgZWFsX2NvbW1vbl91c2FnZSh2b2lkKQ0K PiA+ID4gIAkgICAgICAgIiAgLS0iT1BUX1NZU0xPRyIgICAgIDogc2V0IHN5c2xvZyBmYWNpbGl0 eVxuIg0KPiA+ID4gIAkgICAgICAgIiAgLS0iT1BUX0xPR19MRVZFTCIgIDogc2V0IGRlZmF1bHQg bG9nIGxldmVsXG4iDQo+ID4gPiAgCSAgICAgICAiICAtLSJPUFRfUFJPQ19UWVBFIiAgOiB0eXBl IG9mIHRoaXMgcHJvY2Vzc1xuIg0KPiA+ID4gKwkgICAgICAgIiAgLS0iT1BUX01FTU9SWV9PTkxZ Ijogb25seSB1c2Ugc2hhcmVkIG1lbW9yeSwgdmFsaWQgb25seSBmb3Igc2Vjb25kYXJ5IHByb2Nl c3MuXG4iDQo+ID4gPiAgCSAgICAgICAiICAtLSJPUFRfUENJX0JMQUNLTElTVCIsIC1iOiBhZGQg YSBQQ0kgZGV2aWNlIGluIGJsYWNrIGxpc3QuXG4iDQo+ID4gPiAgCSAgICAgICAiICAgICAgICAg ICAgICAgUHJldmVudCBFQUwgZnJvbSB1c2luZyB0aGlzIFBDSSBkZXZpY2UuIFRoZSBhcmd1bWVu dFxuIg0KPiA+ID4gIAkgICAgICAgIiAgICAgICAgICAgICAgIGZvcm1hdCBpcyA8ZG9tYWluOmJ1 czpkZXZpZC5mdW5jPi5cbiINCj4gPiA+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX2VhbC9jb21t b24vZWFsX2ludGVybmFsX2NmZy5oIGIvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9pbnRlcm5h bF9jZmcuaA0KPiA+ID4gaW5kZXggYWFjNmFiZi4uZjUxZjBhMiAxMDA2NDQNCj4gPiA+IC0tLSBh L2xpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxfaW50ZXJuYWxfY2ZnLmgNCj4gPiA+ICsrKyBiL2xp Yi9saWJydGVfZWFsL2NvbW1vbi9lYWxfaW50ZXJuYWxfY2ZnLmgNCj4gPiA+IEBAIC04NSw2ICs4 NSw3IEBAIHN0cnVjdCBpbnRlcm5hbF9jb25maWcgew0KPiA+ID4NCj4gPiA+ICAJdW5zaWduZWQg bnVtX2h1Z2VwYWdlX3NpemVzOyAgICAgIC8qKjwgaG93IG1hbnkgc2l6ZXMgb24gdGhpcyBzeXN0 ZW0gKi8NCj4gPiA+ICAJc3RydWN0IGh1Z2VwYWdlX2luZm8gaHVnZXBhZ2VfaW5mb1tNQVhfSFVH RVBBR0VfU0laRVNdOw0KPiA+ID4gKwl2b2xhdGlsZSB1bnNpZ25lZCBtZW1vcnlfb25seTsgICAg LyoqPHdoZXRlciB0aGUgc2Vjb25kYXkgcHJvY2VzcyBvbmx5IG5lZWQgc2hhcmVkIG1vbW9yeSBv bmx5IG9yIG5vdCAqLw0KPiA+ID4gIH07DQo+ID4gPiAgZXh0ZXJuIHN0cnVjdCBpbnRlcm5hbF9j b25maWcgaW50ZXJuYWxfY29uZmlnOyAvKio8IEdsb2JhbCBFQUwgY29uZmlndXJhdGlvbi4gKi8N Cj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9vcHRp b25zLmggYi9saWIvbGlicnRlX2VhbC9jb21tb24vZWFsX29wdGlvbnMuaA0KPiA+ID4gaW5kZXgg ZTQ3NmY4ZC4uODdjYzVkYiAxMDA2NDQNCj4gPiA+IC0tLSBhL2xpYi9saWJydGVfZWFsL2NvbW1v bi9lYWxfb3B0aW9ucy5oDQo+ID4gPiArKysgYi9saWIvbGlicnRlX2VhbC9jb21tb24vZWFsX29w dGlvbnMuaA0KPiA+ID4gQEAgLTc3LDYgKzc3LDggQEAgZW51bSB7DQo+ID4gPiAgCU9QVF9DUkVB VEVfVUlPX0RFVl9OVU0sDQo+ID4gPiAgI2RlZmluZSBPUFRfVkZJT19JTlRSICAgICJ2ZmlvLWlu dHIiDQo+ID4gPiAgCU9QVF9WRklPX0lOVFJfTlVNLA0KPiA+ID4gKyNkZWZpbmUgT1BUX01FTU9S WV9PTkxZICAibWVtb3J5LW9ubHkiDQo+ID4gPiArCU9QVF9NRU1PUllfT05MWV9OVU0sDQo+ID4g PiAgCU9QVF9MT05HX01BWF9OVU0NCj4gPiA+ICB9Ow0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQg YS9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsLmMgYi9saWIvbGlicnRlX2VhbC9saW51 eGFwcC9lYWwvZWFsLmMNCj4gPiA+IGluZGV4IDg5ZjNiNWUuLmMxNjA3NzEgMTAwNjQ0DQo+ID4g PiAtLS0gYS9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsLmMNCj4gPiA+ICsrKyBiL2xp Yi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWwuYw0KPiA+ID4gQEAgLTc1MiwxNCArNzUyLDYg QEAgcnRlX2VhbF9pbml0KGludCBhcmdjLCBjaGFyICoqYXJndikNCj4gPiA+DQo+ID4gPiAgCXJ0 ZV9jb25maWdfaW5pdCgpOw0KPiA+ID4NCj4gPiA+IC0JaWYgKHJ0ZV9lYWxfcGNpX2luaXQoKSA8 IDApDQo+ID4gPiAtCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IFBDSVxuIik7DQo+ID4gPiAtDQo+ ID4gPiAtI2lmZGVmIFJURV9MSUJSVEVfSVZTSE1FTQ0KPiA+ID4gLQlpZiAocnRlX2VhbF9pdnNo bWVtX2luaXQoKSA8IDApDQo+ID4gPiAtCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IElWU0hNRU1c biIpOw0KPiA+ID4gLSNlbmRpZg0KPiA+ID4gLQ0KPiA+ID4gIAlpZiAocnRlX2VhbF9tZW1vcnlf aW5pdCgpIDwgMCkNCj4gPiA+ICAJCXJ0ZV9wYW5pYygiQ2Fubm90IGluaXQgbWVtb3J5XG4iKTsN Cj4gPiA+DQo+ID4gPiBAQCAtNzcyLDE0ICs3NjQsMzAgQEAgcnRlX2VhbF9pbml0KGludCBhcmdj LCBjaGFyICoqYXJndikNCj4gPiA+ICAJaWYgKHJ0ZV9lYWxfdGFpbHFzX2luaXQoKSA8IDApDQo+ ID4gPiAgCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IHRhaWwgcXVldWVzIGZvciBvYmplY3RzXG4i KTsNCj4gPiA+DQo+ID4gPiArCWlmIChydGVfZWFsX2xvZ19pbml0KGxvZ2lkLCBpbnRlcm5hbF9j b25maWcuc3lzbG9nX2ZhY2lsaXR5KSA8IDApDQo+ID4gPiArCQlydGVfcGFuaWMoIkNhbm5vdCBp bml0IGxvZ3NcbiIpOw0KPiA+ID4gKw0KPiA+ID4gKwllYWxfY2hlY2tfbWVtX29uX2xvY2FsX3Nv Y2tldCgpOw0KPiA+ID4gKw0KPiA+ID4gKwlydGVfZWFsX21jZmdfY29tcGxldGUoKTsNCj4gPiA+ ICsNCj4gPiA+ICsgICAgLyp3aXRoIG1lbW9yeS1vbmx5IG9wdGlvbiwgd2UgbmVlZCBub3QgY3B1 IGFmZmluaXR5LCBwY2kgZGV2aWNlLCBhbGFybSwgZXh0ZXJuYWwgZGV2aWNlcywgaW50ZXJydXB0 LCBldGMuICovDQo+ID4gPiArCWlmKCBpbnRlcm5hbF9jb25maWcubWVtb3J5X29ubHkgKXsNCj4g PiA+ICsJCVJURV9MT0cgKERFQlVHLCBFQUwsICJtZW1vcnktb25seSBkZWZpbmVkLCBzbyBvbmx5 IG1lbW9yeSBiZWluZyBpbml0aWFsaXplZC5cbiIpOw0KPiA+ID4gKwkJcmV0dXJuIDA7DQo+ID4g PiArCX0NCj4gPiA+ICsNCj4gPiA+ICsJaWYgKHJ0ZV9lYWxfcGNpX2luaXQoKSA8IDApDQo+ID4g PiArCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IFBDSVxuIik7DQo+ID4gPiArDQo+ID4gPiAgI2lm ZGVmIFJURV9MSUJSVEVfSVZTSE1FTQ0KPiA+ID4gKwlpZiAocnRlX2VhbF9pdnNobWVtX2luaXQo KSA8IDApDQo+ID4gPiArCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IElWU0hNRU1cbiIpOw0KPiA+ ID4gKw0KPiA+ID4gIAlpZiAocnRlX2VhbF9pdnNobWVtX29ial9pbml0KCkgPCAwKQ0KPiA+ID4g IAkJcnRlX3BhbmljKCJDYW5ub3QgaW5pdCBJVlNITUVNIG9iamVjdHNcbiIpOw0KPiA+ID4gICNl bmRpZg0KPiA+ID4NCj4gPiA+IC0JaWYgKHJ0ZV9lYWxfbG9nX2luaXQobG9naWQsIGludGVybmFs X2NvbmZpZy5zeXNsb2dfZmFjaWxpdHkpIDwgMCkNCj4gPiA+IC0JCXJ0ZV9wYW5pYygiQ2Fubm90 IGluaXQgbG9nc1xuIik7DQo+ID4gPiAtDQo+ID4gPiAgCWlmIChydGVfZWFsX2FsYXJtX2luaXQo KSA8IDApDQo+ID4gPiAgCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IGludGVycnVwdC1oYW5kbGlu ZyB0aHJlYWRcbiIpOw0KPiA+ID4NCj4gPiA+IEBAIC03ODksMTAgKzc5Nyw2IEBAIHJ0ZV9lYWxf aW5pdChpbnQgYXJnYywgY2hhciAqKmFyZ3YpDQo+ID4gPiAgCWlmIChydGVfZWFsX3RpbWVyX2lu aXQoKSA8IDApDQo+ID4gPiAgCQlydGVfcGFuaWMoIkNhbm5vdCBpbml0IEhQRVQgb3IgVFNDIHRp bWVyc1xuIik7DQo+ID4gPg0KPiA+ID4gLQllYWxfY2hlY2tfbWVtX29uX2xvY2FsX3NvY2tldCgp Ow0KPiA+ID4gLQ0KPiA+ID4gLQlydGVfZWFsX21jZmdfY29tcGxldGUoKTsNCj4gPiA+IC0NCj4g PiA+ICAJVEFJTFFfRk9SRUFDSChzb2xpYiwgJnNvbGliX2xpc3QsIG5leHQpIHsNCj4gPiA+ICAJ CVJURV9MT0coSU5GTywgRUFMLCAib3BlbiBzaGFyZWQgbGliICVzXG4iLCBzb2xpYi0+bmFtZSk7 DQo+ID4gPiAgCQlzb2xpYi0+bGliX2hhbmRsZSA9IGRsb3Blbihzb2xpYi0+bmFtZSwgUlRMRF9O T1cpOw0KPiA+ID4gLS0NCj4gPiA+IDEuOS40Lm1zeXNnaXQuMg0KPiANCg==