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 45155A00BE; Wed, 30 Oct 2019 05:43:30 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 96B351BEAF; Wed, 30 Oct 2019 05:43:29 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id A1F851BEA8 for ; Wed, 30 Oct 2019 05:43:27 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 Oct 2019 21:43:26 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,246,1569308400"; d="scan'208";a="230315795" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga002.fm.intel.com with ESMTP; 29 Oct 2019 21:43:26 -0700 Received: from fmsmsx117.amr.corp.intel.com (10.18.116.17) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 29 Oct 2019 21:43:26 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx117.amr.corp.intel.com (10.18.116.17) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 29 Oct 2019 21:43:26 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.108]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.60]) with mapi id 14.03.0439.000; Wed, 30 Oct 2019 12:43:24 +0800 From: "Wang, Haiyue" To: Jerin Jacob , "Yigit, Ferruh" CC: Thomas Monjalon , dpdk-dev , "Ye, Xiaolong" , "Kinsella, Ray" , "Iremonger, Bernard" , "Sun, Chenmin" , Andrew Rybchenko , "Slava Ovsiienko" , Stephen Hemminger , David Marchand , Jerin Jacob Thread-Topic: [dpdk-dev] [PATCH v4 1/4] ethdev: add the API for getting burst mode information Thread-Index: AQHVgy4vnIA7MA5UA0Sl3pLNFwDOY6dqovQAgABMCACAABr4gIAABOkAgABrZQCAAI7MAIAFXuaAgADDMQCAAIb4oA== Date: Wed, 30 Oct 2019 04:43:23 +0000 Message-ID: References: <20191015075133.38560-1-haiyue.wang@intel.com> <1811898.7XjjD7ZjLQ@xps> <12001140.UMXFOKstgs@xps> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYmMzZjIyNGUtZDI5YS00ZDYzLWEzZWQtYjFiMTVkYTEwYjlmIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiVFg4V25QRkxFZnFFOWtOVUZzYmJvQmxHcTVYcGFOT1wvaFRxaXl0Q1wvb3pyMHg3c0hKZFVhdkNOS1VWem9PQnBFIn0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v4 1/4] ethdev: add the API for getting burst mode information 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBKZXJpbiBKYWNvYiA8amVyaW5q YWNvYmtAZ21haWwuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIE9jdG9iZXIgMzAsIDIwMTkgMTI6 MzgNCj4gVG86IFlpZ2l0LCBGZXJydWggPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQo+IENjOiBU aG9tYXMgTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+OyBXYW5nLCBIYWl5dWUgPGhhaXl1 ZS53YW5nQGludGVsLmNvbT47IGRwZGstZGV2DQo+IDxkZXZAZHBkay5vcmc+OyBZZSwgWGlhb2xv bmcgPHhpYW9sb25nLnllQGludGVsLmNvbT47IEtpbnNlbGxhLCBSYXkgPHJheS5raW5zZWxsYUBp bnRlbC5jb20+Ow0KPiBJcmVtb25nZXIsIEJlcm5hcmQgPGJlcm5hcmQuaXJlbW9uZ2VyQGludGVs LmNvbT47IFN1biwgQ2hlbm1pbiA8Y2hlbm1pbi5zdW5AaW50ZWwuY29tPjsgQW5kcmV3DQo+IFJ5 YmNoZW5rbyA8YXJ5YmNoZW5rb0Bzb2xhcmZsYXJlLmNvbT47IFNsYXZhIE92c2lpZW5rbyA8dmlh Y2hlc2xhdm9AbWVsbGFub3guY29tPjsgU3RlcGhlbiBIZW1taW5nZXINCj4gPHN0ZXBoZW5AbmV0 d29ya3BsdW1iZXIub3JnPjsgRGF2aWQgTWFyY2hhbmQgPGRhdmlkLm1hcmNoYW5kQHJlZGhhdC5j b20+OyBKZXJpbiBKYWNvYg0KPiA8amVyaW5qQG1hcnZlbGwuY29tPg0KPiBTdWJqZWN0OiBSZTog W2RwZGstZGV2XSBbUEFUQ0ggdjQgMS80XSBldGhkZXY6IGFkZCB0aGUgQVBJIGZvciBnZXR0aW5n IGJ1cnN0IG1vZGUgaW5mb3JtYXRpb24NCj4gDQo+IE9uIFR1ZSwgT2N0IDI5LCAyMDE5IGF0IDEw OjI5IFBNIEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4gd3JvdGU6DQo+ID4N Cj4gPiBPbiAxMC8yNi8yMDE5IDc6NTggQU0sIEplcmluIEphY29iIHdyb3RlOg0KPiA+ID4gT24g U2F0LCBPY3QgMjYsIDIwMTkgYXQgMzo1NyBBTSBUaG9tYXMgTW9uamFsb24gPHRob21hc0Btb25q YWxvbi5uZXQ+IHdyb3RlOg0KPiA+ID4+DQo+ID4gPj4gMjUvMTAvMjAxOSAxODowMiwgSmVyaW4g SmFjb2I6DQo+ID4gPj4+IE9uIEZyaSwgT2N0IDI1LCAyMDE5IGF0IDk6MTUgUE0gVGhvbWFzIE1v bmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PiB3cm90ZToNCj4gPiA+Pj4+IDI1LzEwLzIwMTkg MTY6MDgsIEZlcnJ1aCBZaWdpdDoNCj4gPiA+Pj4+PiBPbiAxMC8yNS8yMDE5IDEwOjM2IEFNLCBU aG9tYXMgTW9uamFsb24gd3JvdGU6DQo+ID4gPj4+Pj4+IDE1LzEwLzIwMTkgMDk6NTEsIEhhaXl1 ZSBXYW5nOg0KPiA+ID4+Pj4+Pj4gU29tZSBQTURzIGhhdmUgbW9yZSB0aGFuIG9uZSBSWC9UWCBi dXJzdCBwYXRocywgYWRkIHRoZSBldGhkZXYgQVBJDQo+ID4gPj4+Pj4+PiB0aGF0IGFsbG93cyBh biBhcHBsaWNhdGlvbiB0byByZXRyaWV2ZSB0aGUgbW9kZSBpbmZvcm1hdGlvbiBhYm91dA0KPiA+ ID4+Pj4+Pj4gUngvVHggcGFja2V0IGJ1cnN0IHN1Y2ggYXMgU2NhbGFyIG9yIFZlY3RvciwgYW5k IFZlY3RvciB0ZWNobm9sb2d5DQo+ID4gPj4+Pj4+PiBsaWtlIEFWWDIuDQo+ID4gPj4+Pj4+DQo+ ID4gPj4+Pj4+IEkgbWlzc2VkIHRoaXMgcGF0Y2guIEkgYW5kIEFuZHJldywgbWFpbnRhaW5lcnMg b2YgZXRoZGV2LCB3ZXJlIG5vdCBDQydlZC4NCj4gPiA+Pj4+Pj4gRmVycnVoLCBJIHdvdWxkIGV4 cGVjdCB0byBiZSBDYydlZCBhbmQvb3IgZ2V0IGEgbm90aWZpY2F0aW9uIGJlZm9yZSBtZXJnaW5n Lg0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gSXQgaGFzIGJlZW4gZGlzY3Vzc2VkIGluIHRoZSBtYWls IGxpc3QgYW5kIHdlbnQgdGhyb3VnaCBtdWx0aXBsZSBkaXNjdXNzaW9ucywNCj4gPiA+Pj4+PiBw YXRjaCBpcyBvdXQgc2luY2UgdGhlIEF1Z3VzdCwgKzEgdG8gY2MgYWxsIG1haW50YWluZXJzIEkg bWlzc2VkIHRoYXQgcGFydCwNCj4gPiA+Pj4+PiBidXQgd2hlbiB0aGUgcGF0Y2ggaXMgcmV2aWV3 ZWQgYW5kIHRoZXJlIGlzIG5vIG9iamVjdGlvbiwgd2h5IGJsb2NrIHRoZSBtZXJnZT8NCj4gPiA+ Pj4+DQo+ID4gPj4+PiBJJ20gbm90IHNheWluZyBibG9ja2luZyB0aGUgbWVyZ2UuDQo+ID4gPj4+ PiBNeSBiYWQgaXMgdGhhdCBJIG1pc3NlZCB0aGUgcGF0Y2ggYW5kIEkgYW0gYXNraW5nIGZvciBo ZWxwIHdpdGggYSBub3RpZmljYXRpb24NCj4gPiA+Pj4+IGluIHRoaXMgY2FzZS4gU2FtZSBmb3Ig QW5kcmV3IEkgZ3Vlc3MuDQo+ID4gPj4+PiBOb3RlOiBpdCBpcyBtZXJnZWQgaW4gbWFzdGVyIGFu ZCBJIGFtIGxvb2tpbmcgdG8gaW1wcm92ZSB0aGlzIGZlYXR1cmUuDQo+ID4gPj4+DQo+ID4gPj4+ Pj4+PiArLyoqDQo+ID4gPj4+Pj4+PiArICogRXRoZXJuZXQgZGV2aWNlIFJYL1RYIHF1ZXVlIHBh Y2tldCBidXJzdCBtb2RlIGluZm9ybWF0aW9uIHN0cnVjdHVyZS4NCj4gPiA+Pj4+Pj4+ICsgKiBV c2VkIHRvIHJldHJpZXZlIGluZm9ybWF0aW9uIGFib3V0IHBhY2tldCBidXJzdCBtb2RlIHNldHRp bmcuDQo+ID4gPj4+Pj4+PiArICovDQo+ID4gPj4+Pj4+PiArc3RydWN0IHJ0ZV9ldGhfYnVyc3Rf bW9kZSB7DQo+ID4gPj4+Pj4+PiArICB1aW50NjRfdCBvcHRpb25zOw0KPiA+ID4+Pj4+Pj4gK307 DQo+ID4gPj4+Pj4+DQo+ID4gPj4+Pj4+IFdoeSBhIHN0cnVjdCBmb3IgYW4gaW50ZWdlcj8NCj4g PiA+Pj4+Pg0KPiA+ID4+Pj4+IEFnYWluIGJ5IGEgcmVxdWVzdCBmcm9tIG1lLCB0byBub3QgbmVl ZCB0byBicmVhayB0aGUgQVBJIGlmIHdlIG5lZWQgdG8gYWRkIG1vcmUNCj4gPiA+Pj4+PiB0aGlu ZyBpbiB0aGUgZnV0dXJlLg0KPiA+ID4+Pj4NCj4gPiA+Pj4+IEkgd291bGQgcmVwbGFjZSBpdCB3 aXRoIGEgc3RyaW5nLiBUaGlzIGlzIHRoZSBtb3N0IGZsZXhpYmxlIEFQSS4NCj4gPiA+Pj4NCj4g PiA+Pj4gSU1PLCBQcm9iYWJseSwgYmVzdCBvZiBib3RoIHdvcmxkcyBtYWtlIGEgZ29vZCBvcHRp b24gaGVyZSwNCj4gPiA+Pj4gYXMgSGFpeXVlIHN1Z2dlc3RlZCBpZiB3ZSBoYXZlIGFuIGFkZGl0 aW9uYWwgZGV2X3NwZWNpZmljWzFdIGluIHN0cnVjdHVyZS4NCj4gPiA+Pj4gYW5kIHdoZW4gYSBw YXNzIHRvIHRoZSBhcHBsaWNhdGlvbiwgbGV0IGNvbW1vbiBjb2RlIG1ha2UgZmluYWwgc3RyaW5n IGFzDQo+ID4gPj4+IChvcHRpb25zIGZsYWdzIHRvIHN0cmluZyArIGRldl9zcGVjaWZpYykNCj4g PiA+Pj4NCj4gPiA+Pj4gb3B0aW9ucyBmbGFnIGNhbiBiZSB6ZXJvIGlmIFBNRCBkb2VzIG5vdCBo YXZlIGFueSBnZW5lcmljIGZsYWdzIG5vcg0KPiA+ID4+PiBpbnRlcmVzdGVkIGluIHN1Y2ggYSBz Y2hlbWUuDQo+ID4gPj4+IEdlbmVyaWMgZmxhZ3Mgd2lsbCBoZWxwIGF0IGxlYXN0IHRvIGhhdmUg c29tZSBjb21tb24gY29kZS4NCj4gPiA+Pj4NCj4gPiA+Pj4gWzFdDQo+ID4gPj4+IHN0cnVjdCBy dGVfZXRoX2J1cnN0X21vZGUgew0KPiA+ID4+PiAgICAgICAgIHVpbnQ2NF90IG9wdGlvbnM7DQo+ ID4gPj4+ICAgICAgICAgY2hhciBkZXZfc3BlY2lmaWNbMTI4XTsgLyogUE1EIGhhcyBzcGVjaWZp YyBidXJzdCBtb2RlIGluZm9ybWF0aW9uICovDQo+ID4gPj4+IH07DQo+ID4gPj4NCj4gPiA+PiBJ IHJlYWxseSBkb24ndCBzZWUgaG93IHdlIGNhbiBoYXZlIGdlbmVyaWMgZmxhZ3MuDQo+ID4gPj4g VGhlIGZsYWdzIHdoaWNoIGFyZSBwcm9wb3NlZCBhcmUganVzdCBtYXRjaGluZw0KPiA+ID4+IHRo ZSBmdW5jdGlvbnMgaW1wbGVtZW50ZWQgaW4gSW50ZWwgUE1Ecy4NCj4gPiA+PiBBbmQgdGhpcyBp cyBhIGNvbXBsaWNhdGUgc29sdXRpb24uDQo+ID4gPj4gV2h5IG5vdCBqdXN0IHJldHVybmluZyBh IG5hbWUgZm9yIHRoZSBzZWxlY3RlZCBSeC9UeCBtb2RlPw0KPiA+ID4NCj4gPiA+ICsxIG9ubHkg Zm9yIHRoZSBuYW1lDQo+ID4gPg0KPiA+ID4gTGV0IG1lIGNsYXJpZnkgbXkgZWFybGllciBwcm9w b3NhbDoNCj4gPiA+DQo+ID4gPiAxKSBUaGUgcHVibGljIGV0aGRldiBBUEkgc2hvdWxkIHJldHVy biBvbmx5ICJzdHJpbmciIGkuZSB0aGUgZmxhZ3MNCj4gPiA+IFNIT1VMRCBOT1QgYmUgZXhwb3Nl ZCBhcyBldGhkZXYgQVBJDQo+ID4gPiBpLmUNCj4gPiA+IGludCBydGVfZXRoX3R4X2J1cnN0X21v ZGVfbmFtZSh1aW50MTZfdCBwb3J0X2lkLCB1aW50MTZfdCBxdWV1ZV9pZCwgY2hhciAqbmFtZSk7 DQo+ID4gPg0KPiA+ID4gMikgVGhlIFBNRCBpbnRlcmZhY2UgIHRvIHRoZSBjb21tb24gY29kZSBj YW4gYmUgZm9sbG93aW5nDQo+ID4gPg0KPiA+ID4gIHN0cnVjdCBldGhfcG1kX2J1cnN0X21vZGUg ew0KPiA+ID4gICAgICAgICB1aW50NjRfdCBvcHRpb25zOw0KPiA+ID4gICAgICAgICAgY2hhciBu YW1lWzEyOF07IC8qIFBNRCBzcGVjaWZpYyBidXJzdCBtb2RlIGluZm9ybWF0aW9uICovDQo+ID4g PiB9Ow0KPiA+ID4NCj4gPiA+IHR5cGVkZWYgaW50ICgqZXRoX2J1cnN0X21vZGVfZ2V0X3QpKHN0 cnVjdCBydGVfZXRoX2RldiAqZGV2LA0KPiA+ID4gICAgICAgICB1aW50MTZfdCBxdWV1ZV9pZCwg c3RydWN0IGV0aF9idXJzdF9tb2RlICptb2RlKQ0KPiA+ID4NCj4gPiA+IDMpIFRoZSBpbXBsZW1l bnRhdGlvbiBvZiBydGVfZXRoX3R4X2J1cnN0X21vZGVfbmFtZSgpIHNoYWxsIGRvIG9wdG9ucw0K PiA+ID4gZmxhZyB0byBzdHJpbmcgY29udmVyaW9uKGFnYWluIGludGVybmFsIHRvIGNvbW1vbiBj b2RlIGltcGxlbWV0YXRpb24pDQo+ID4gPiBhbmQgY29uY2F0ZW5hdGUgd2l0aCBldGhfcG1kX2J1 cnN0X21vZGU6Om5hbWUNCj4gPiA+DQo+ID4gPiBUaGlzIHdvdWxkIGhlbHAgdG8gcmV1c2Ugc29t ZSBvZiB0aGUgZmxhZ3MgdG8gbmFtZSBjb252ZXJzaW9uIGxvZ2ljDQo+ID4gPiBhY3Jvc3MgYWxs IFBNRHMuDQo+ID4gPiBBbmQgUE1EIGFyZSBmcmVlIHRvIHJldHVybiAgZXRoX3BtZF9idXJzdF9t b2RlOjpvcHRpb25zIGFzIHplcm8gaW4NCj4gPiA+IHRoYXQgY2FzZSBmaW5hbA0KPiA+ID4gc3Ry aW5nIG9ubHkgYmUgZXRoX3BtZF9idXJzdF9tb2RlOjpuYW1lLg0KPiA+ID4NCj4gPiA+IEkgZG9u J3Qgc2VlIGFueSBkb3duc2lkZSB3aXRoIHRoaXMgYXBwcm9hY2ggYW5kIGl0IGJlc3Qgb2YgYm90 aCB3b3JsZHMuDQo+ID4gPg0KPiA+DQo+ID4gSSBhZ3JlZSBpdCB3aWxsIGJlIGhhcmQgb3IgcmVz dHJpY3RpdmUgaWYgd2Ugd2FudCB0byByZXByZXNlbnQgdGhlIGFsbCBkYXRhIHBhdGgNCj4gPiBv cHRpb25zIHdpdGggc3RhbmRhcmRpemVkIGRhdGEuDQo+ID4NCj4gPiBCdXQgdGhlIGZyZWUgdGV4 dCBzdHJpbmcgaXMgZ29vZCBmb3IgbG9nZ2luZywgYnV0IG5vdCBnb29kIGlmIHRoZSBhcHBsaWNh dGlvbg0KPiA+IHdpbGwgZ2V0IHRoaXMgaW5wdXQgYW5kIGdpdmUgc29tZSBkZWNpc2lvbiB3aXRo IGl0Lg0KPiANCj4gSSB3YXMgdGhpbmtpbmcgaXQgaXMgb25seSBmb3IgbG9nZ2luZy4gQnV0IGlm IHRoZSBhcHBsaWNhdGlvbiBuZWVkcyB0byBoYXZlDQo+IHNvbWUgZGVjaXNpb25zIHdpdGggaXQg dGhlbiBiZWxvdyBzY2hlbWUgaXMgdGhlIGJlc3Qgd2F5LA0KPiANCj4gVGhvdWdoIEkgYW0gbm90 IHN1cmUsIGFsbG93aW5nIHN1Y2ggZGVjaXNpb24gaW4gdGhlIGFwcGxpY2F0aW9uIGlzIGdvb2Qg b3Igbm90Lg0KPiBGb3IgaW5zdGFuY2UsIElmIHZlY3Rvcml6YXRpb24gaXMgQVZYNTEyLCBXaGF0 IGtpbmQgb2YgZGVjaXNpb24gYW4NCj4gYXBwbGljYXRpb24gY2FuIG1ha2U/IElmIGl0IGNhbiBt YWtlIHNvbWUgZGVjaXNpb24gdGhlbiwgd2lsbCB3b3JrIGZvcg0KPiB0aGUgTkVPTiBjYXNlPw0K PiANCj4gDQo+ID4NCj4gPiBUbyBjb21iaW5lIGJvdGggdHdvLCB3aGF0IGRvIHlvdSB0aGluayBh IG1peGVkIGFwcHJvYWNoLCBzaW1pbGFyIHRvIHdoYXQgSmVyaW4NCj4gPiBkZXNjcmliZWQgYnV0 IGJvdGggb3B0aW9ucyBhbmQgc3RyaW5nIGlzIHZpc2libGUgdG8gYXBwbGljYXRpb24sDQo+ID4g YW5kIG1ha2UgJ29wdGlvbnMnIG9ubHkgZm9yIHZlY3Rvcml6YXRpb24gaW5mb3JtYXRpb24gd2hp Y2ggaXMgbGltaXRlZCBhbmQgYmUNCj4gPiBzdGFuZGFyZGl6ZWQ6DQo+ID4NCj4gPiBpbnQgcnRl X2V0aF90eF9idXJzdF9tb2RlX2dldCh1aW50MTZfdCBwb3J0X2lkLCB1aW50MTZfdCBxdWV1ZV9p ZCwNCj4gPiAgICAgICAgIHN0cnVjdCBydGVfZXRoX2J1cnN0X21vZGUgKm1vZGUpOw0KPiA+DQo+ ID4gc3RydWN0IHJ0ZV9ldGhfYnVyc3RfbW9kZSB7DQo+ID4gICAgICAgICB1aW50NjRfdCBvcHRp b25zOyAvLyBUaGlzIGlzIG9ubHkgZm9yIFZFQ1RPUklaQVRJT04gbW9kZQ0KPiA+ICAgICAgICAg Y2hhciAqYWx0ZXJuYXRlX29wdGlvbnM7DQo+ID4gfQ0KPiA+DQo+ID4gc2luY2UgImJ1cnN0X21v ZGU6b3B0aW9ucyIgb25seSBmb3IgdmVjdG9yaXphdGlvbiwgaXQgaXMgbGltaXRlZCBhbmQgY2Fu IGJlIGVhc3kNCj4gPiB0byBjb25zdW1lIGJ5IGFwcGxpY2F0aW9ucy4NCj4gPiBUaGlzIG1lYW5z IHJlbW92aW5nIHNvbWUgZGF0YSBwYXRoIG9wdGlvbnMsIGxpa2UgIkJVTEtfQUxMT0MiIGZyb20g Y3VycmVudCBzdHJ1Y3QuDQo+IA0KPiBBQ0sNCj4gDQo+ID4NCj4gPiAncnRlX2V0aF9idXJzdF9t b2RlX29wdGlvbl9uYW1lKCknIGNhbiBnZXQgInN0cnVjdCBydGVfZXRoX2J1cnN0X21vZGUiIGFz DQo+ID4gcGFyYW1ldGVyIGFuZCBjb252ZXJ0IHRoZSAnb3B0aW9ucycgdG8gc3RyaW5nIGFuZCBj b21iaW5lIGludG8gc2luZ2xlIHN0cmluZyBhcw0KPiA+IGEgaGVscGVyIGZ1bmN0aW9uIHRvIHRo ZSBhcHBsaWNhdGlvbnMuDQo+ID4NCj4gPiBBbmQgKzEgdG8gcHJvdmlkaW5nIE5VTEwgImFsdGVy bmF0ZV9vcHRpb25zIiBjYW4gcmV0dXJuIHRoZSBzaXplIG9mIHRoYXQgc3RyaW5nLg0KPiANCj4g QUNLDQo+IA0KPiA+DQo+ID4gQW5kIGFzIHdlIGZpbmQgbW9yZSBjb21tb24vc3RhbmRhcmQgZGF0 YSBwYXRoIG9wdGlvbnMsIHdlIGNhbiBtb3ZlIHRoZW0gdG8gdGhlDQo+ID4gYml0ZmllbGQgYW5k IHJlbW92ZSBmcm9tIHRoZSBmcmVlIHRleHQuIERvZXMgaXQgbWFrZSBzZW5zZT8NCj4gDQo+IFll cywgaWYsIHdlIG5lZWQgdG8gZ2l2ZSBwcm92aWRlIGEgbWV0aG9kIHRvIHRha2UgYWN0aW9uIGZv cg0KPiBhcHBsaWNhdGlvbiBlbHNlIG5vdC4NCj4gDQoNClRoZSBuZXcgbWVtYmVyICJjaGFyICph bHRlcm5hdGVfb3B0aW9uczsiIGlzIGFzc2lnbmVkIGJ5IFBNRCBhcyBzdGF0aWMgc3RyaW5nID8N Ckxpa2U6IG1vZGUtPmFsdGVybmF0ZV9vcHRpb25zID0gImFiY2QiID8gT3Igd2l0aCBmaXhlZCBh cnJheSBzaXplLCBzbyBQTUQgY2FuDQpmb3JtYXQgaXQgYXMgbmVlZGVkID8NCg0KPiA+DQo=