From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 9B1F137B7 for ; Tue, 28 Aug 2018 16:12:00 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Aug 2018 07:11:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.53,299,1531810800"; d="scan'208";a="66606820" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga008.fm.intel.com with ESMTP; 28 Aug 2018 07:11:59 -0700 Received: from fmsmsx101.amr.corp.intel.com (10.18.124.199) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 28 Aug 2018 07:11:59 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by fmsmsx101.amr.corp.intel.com (10.18.124.199) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 28 Aug 2018 07:11:59 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.240]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.143]) with mapi id 14.03.0319.002; Tue, 28 Aug 2018 22:11:57 +0800 From: "Zhang, Qi Z" To: William Tu CC: "dev@dpdk.org" , "Karlsson, Magnus" , "Topel, Bjorn" , "Wu, Jingjing" , "Li, Xiaoyun" , "Yigit, Ferruh" Thread-Topic: [dpdk-dev] [PATCH v3 0/6] PMD driver for AF_XDP Thread-Index: AQHUNW9kNejrbibCBE+27ZaSr3eYaKTNCrqAgAgqsZA= Date: Tue, 28 Aug 2018 14:11:57 +0000 Message-ID: <039ED4275CED7440929022BC67E706115327BF20@SHSMSX103.ccr.corp.intel.com> References: <20180816144321.17719-1-qi.z.zhang@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYzQxMGQyNmQtNmI2NC00NTZmLTg4MDktMTc1MDBkZjkyOWJkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiaDhBc1RuVW5nUTU2aW1rcDhhY3d6S0wwKzlzN3lnSndXTUFOUmFwMmxibk41eHY2QXNYZFR0UGdGTDZOZytXSCJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 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 v3 0/6] PMD driver for AF_XDP 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: Tue, 28 Aug 2018 14:12:01 -0000 SGkgV2lsbGlhbToNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBXaWxs aWFtIFR1IFttYWlsdG86dTkwMTIwNjNAZ21haWwuY29tXQ0KPiBTZW50OiBGcmlkYXksIEF1Z3Vz dCAyNCwgMjAxOCAxMjoyNSBBTQ0KPiBUbzogWmhhbmcsIFFpIFogPHFpLnouemhhbmdAaW50ZWwu Y29tPg0KPiBDYzogZGV2QGRwZGsub3JnOyBLYXJsc3NvbiwgTWFnbnVzIDxtYWdudXMua2FybHNz b25AaW50ZWwuY29tPjsgVG9wZWwsDQo+IEJqb3JuIDxiam9ybi50b3BlbEBpbnRlbC5jb20+OyBX dSwgSmluZ2ppbmcgPGppbmdqaW5nLnd1QGludGVsLmNvbT47IExpLA0KPiBYaWFveXVuIDx4aWFv eXVuLmxpQGludGVsLmNvbT47IFlpZ2l0LCBGZXJydWggPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+ DQo+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSCB2MyAwLzZdIFBNRCBkcml2ZXIgZm9y IEFGX1hEUA0KPiANCj4gSGkgWmhhbmcgUWksDQo+IA0KPiBJJ20gbm90IGZhbWlsaWFyIHdpdGgg RFBESyBjb2RlLCBidXQgSSdtIGN1cmlvdXMgYWJvdXQgdGhlIGJlbmVmaXRzIG9mIHVzaW5nDQo+ IEFGX1hEUCBwbWQsIHNwZWNpZmljYWxseSBJIGhhdmUgYSBjb3VwbGUgcXVlc3Rpb25zOg0KPiAN Cj4gMSkgV2l0aCB6ZXJvLWNvcHkgZHJpdmVyIHN1cHBvcnQsIGlzIEFGX1hEUCBwbWQgZXhwZWN0 cyB0byBoYXZlIHNpbWlsYXINCj4gcGVyZm9ybWFuY2UgdGhhbiBvdGhlciBwbWQ/IA0KDQpaZXJv LWNvcHkgd2lsbCBpbXByb3ZlIHBlcmZvcm1hbmNlIGEgbG90LCBidXQgaXQgc3RpbGwgaGF2ZSBn YXAgd2l0aCBuYXRpdmUgRFBESyBQTUQuDQpiYXNpY2FsbHkgaXQncyBraW5kIG9mIGxlc3MgcGVy Zm9ybWFuY2UgYnV0IG1vcmUgZmxleGlibGUgc29sdXRpb24uDQoNCkJUVywgUGF0Y2hlcyB0byBl bmFibGUgemVybyBjb3B5IGZvciBpNDBlIGp1c3QgYmUgcHVibGlzaGVkIGJ5IEJqb3JuLCB0aGVy ZSBpcyBzb21lIHBlcmZvcm1hbmNlIGRhdGEgZm9yIHlvdXIgcmVmZXJlbmNlLg0KaHR0cDovL2xp c3RzLm9wZW53YWxsLm5ldC9uZXRkZXYvMjAxOC8wOC8yOC82Mg0KDQoNCj4gU2luY2UgQUZfWERQ IGlzIHN0aWxsIHVzaW5nIG5hdGl2ZSBkZXZpY2UgZHJpdmVyLA0KPiBpc24ndCB0aGUgaW50ZXJy dXB0IHN0aWxsIHRoZXJlIGFuZCBub3QgInBvbGwtbW9kZSINCj4gYW55bW9yZT8NCg0KWWVzLCBp dCdzIHN0aWxsIG5hcGktPnBvbGwgdHJpZ2dlcmVkIGJ5IGludGVycnVwdC4NCg0KPiANCj4gMikg ZG9lcyB0aGUgcGF0Y2ggZXhwZWN0IHVzZXIgdG8gY3VzdG9taXplIHRoZSBlYnBmL3hkcCBjb2Rl IHNvIHRoYXQgdGhpcw0KPiBiZWNvbWVzIGFub3RoZXIgd2F5IHRvIGV4dGVuZCBkcGRrIGRhdGFw YXRoPw0KDQpZZXMsIHRoaXMgcHJvdmlkZXMgYW5vdGhlciBvcHRpb24gdG8gdXNlIGtlcm5lbCdz IGVCUEYgZWNvLXN5c3RlbSBmb3IgcGFja2V0IGZpbHRlcmluZywuDQpBbmQgaXQgd2lsbCBiZSBl YXN5IGZvciB1cyB0byBkZXZlbG9wIHNvbWUgdG9vbCB0byBsb2FkL2xpbmsvZXhwb3NlIGVicGYg YXMgcGFydCBvZiBEUERLIEkgdGhpbmsuDQoNCkFjY29yZGluZyB0byBBRl9YRFAgUE1ELCBteSB2 aWV3IGlzIHNpbmNlIERQREsgaXMgdmVyeSBwb3B1bGFyLCBpdCBpcyBiZWNvbWluZyBzb21lIHN0 YW5kYXJkIHdheSB0byBkZXZlbG9wIG5ldHdvcmsgYXBwbGljYXRpb25zLg0KU28gYSBEUERLIFBN RCBpcyBnb2luZyB0byBiZSBhIGJyaWRnZSBmb3IgZGV2ZWxvcGVycyB0byB0YWtlIGFkdmFudGFn ZSBvZiB0aGUgQUZfWERQIHRlY2hub2xvZ3kgaWYgY29tcGFyZWQgdG8gZGVhbCB3aXRoIHRoZSBY RFAgU29ja2V0IGFuZCBsaWJjIGRpcmVjdGx5Lg0KDQpSZWdhcmRzDQpRaQ0KDQo+IA0KPiBUaGFu ayB5b3UNCj4gV2lsbGlhbQ0KPiANCj4gT24gVGh1LCBBdWcgMTYsIDIwMTggYXQgNzo0MiBBTSBR aSBaaGFuZyA8cWkuei56aGFuZ0BpbnRlbC5jb20+IHdyb3RlOg0KPiA+DQo+ID4gT3ZlcnZpZXcN Cj4gPiA9PT09PT09PQ0KPiA+DQo+ID4gVGhlIHBhdGNoIHNldCBhZGQgYSBuZXcgUE1EIGRyaXZl ciBmb3IgQUZfWERQIHdoaWNoIGlzIGEgcHJvcG9zZWQNCj4gPiBmYXN0ZXIgdmVyc2lvbiBvZiBB Rl9QQUNLRVQgaW50ZXJmYWNlIGluIExpbnV4LCBzZWUgYmVsb3cgbGluayBmb3INCj4gPiBkZXRh aWwgQUZfWERQIGludHJvZHVjdGlvbjoNCj4gPiBodHRwczovL2x3bi5uZXQvQXJ0aWNsZXMvNzUw ODQ1Lw0KPiA+IGh0dHBzOi8vZm9zZGVtLm9yZy8yMDE4L3NjaGVkdWxlL2V2ZW50L2FmX3hkcC8N Cj4gPg0KPiA+IEFGX1hEUCByb2FkbWFwDQo+ID4gPT09PT09PT09PT09PT0NCj4gPiAtIFRoZSBr ZXJuZWwgNC4xOCBpcyBvdXQgYW5kIGFmX3hkcCBpcyBpbmNsdWRlZC4NCj4gPiAgIGh0dHBzOi8v a2VybmVsbmV3Ymllcy5vcmcvTGludXhfNC4xOA0KPiA+IC0gU28gZmFyIHRoZXJlIGlzIG5vIHpl cm8gY29weSBzdXBwb3J0ZWQgZHJpdmVyIGJlIG1lcmdlZCwgYnV0IHNvbWUgYXJlDQo+ID4gICBv biB0aGUgd2F5Lg0KPiA+DQo+ID4gQ2hhbmdlIGxvZ3MNCj4gPiA9PT09PT09PT09PQ0KPiA+DQo+ ID4gdjM6DQo+ID4gLSBSZS13b3JrIGJhc2Ugb24gQUZfWERQJ3MgaW50ZXJmYWNlIGNoYW5nZXMu DQo+ID4gLSBTdXBwb3J0IG11bHRpLXF1ZXVlcywgZWFjaCBkcGRrIHF1ZXVlIGhhcyBpdHMgb3du IHhkcCBzb2NrZXQuDQo+ID4gICBBbiB4ZHAgc29ja2V0IGlzIGFsd2F5cyBib3VuZCB0byBhIG5l dGRldiBxdWV1ZS4NCj4gPiAgIFdlIGFzc3VtZSBhbGwgeGRwIHNvY2tldCBmcm9tIHRoZSBzYW1l IGV0aGRldiBhcmUgYm91bmQgdG8gdGhlDQo+ID4gICBzYW1lIG5ldGRldiBxdWV1ZSwgdGhvdWdo IGEgbmV0ZGV2IHF1ZXVlIHN0aWxsIGNhbiBiZSBib3VuZCBieQ0KPiA+ICAgeGRwIHNvY2tldHMg ZnJvbSBkaWZmZXJlbnQgZXRoZGV2IGluc3RhbmNlcy4NCj4gPiAgIEJlbG93IGlzIGFuIGV4YW1w bGUgb2YgdGhlIG1hcHBpbmcuDQo+ID4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiAgIHwgZHBkayBxMCB8IGRwZGsgcTEgfCBkcGRr IHEwICAgIHwgZHBkayBxMCB8IGRwZGsgcTEgfA0KPiA+ICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICB8IHhzayBBICAgfCB4c2sg QiAgIHwgeHNrIEMgICAgICB8IHhzayBEICAgfCB4c2sgRSAgIHw8LS0tfA0KPiA+ICAgLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICAgIHwNCj4g PiAgIHwgIEVUSERFViAwICAgICAgICAgfCBFVEhERVYgMSAgIHwgIEVUSERFViAyICAgICAgICAg fCAgICB8DQo+IERQREsNCj4gPiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ICAgfCAgbmV0ZGV2IHF1ZXVlIDAg ICAgICAgICAgICAgICAgfCAgIG5ldGRldiBxdWV1ZSAxICB8ICAgIHwNCj4gS0VSTkVMDQo+ID4g ICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g ICAgfA0KPiA+ICAgfCAgICAgICAgICAgICAgICAgIE5FVERFViBldGgwICAgICAgICAgICAgICAg ICAgICAgICB8ICAgIHwNCj4gPiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSAgICB8DQo+ID4gICB8ICAgICAgICAgICAgICAgICAgICBrZXkg ICB4c2sgICAgICAgICAgICAgICAgICAgICAgIHwgICAgfA0KPiA+ICAgfCAgLS0tLS0tLS0tLSAg ICAgICAtLS0tLS0tLS0tLS0tLSAgICAgICAgICAgICAgICAgICB8ICAgIHwNCj4gPiAgIHwgIHwg ICAgICAgICB8ICAgICAgfCAwICB8IHhzayBBIHwgICAgICAgICAgICAgICAgICAgfCAgICB8DQo+ ID4gICB8ICB8ICAgICAgICAgfCAgICAgIC0tLS0tLS0tLS0tLS0tICAgICAgICAgICAgICAgICAg IHwgICAgfA0KPiA+ICAgfCAgfCAgICAgICAgIHwgICAgICB8IDIgIHwgeHNrIEIgfCAgICAgICAg ICAgICAgICAgICB8ICAgIHwNCj4gPiAgIHwgIHwgZWJwZiAgICB8ICAgICAgLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICB8ICB8ICAgICAgICAgfCAgICAgIHwg MyAgfCB4c2sgQyB8ICAgICAgICAgICAgICAgICAgIHwNCj4gPiAgIHwgIHwgICAgIHJlZGlyZWN0 IC0+fC0tLS0tLS0tLS0tLS0tICAgICAgICAgICAgICAgICAgfA0KPiA+ICAgfCAgfCAgICAgICAg IHwgICAgICB8IDQgIHwgeHNrIEQgfCAgICAgICAgICAgICAgICAgICB8DQo+ID4gICB8ICB8ICAg ICAgICAgfCAgICAgIC0tLS0tLS0tLS0tLS0tICAgICAgICAgICAgICAgICAgIHwNCj4gPiAgIHwg IHwtLS0tLS0tLS18ICAgICAgfCA1ICB8IHhzayBFIHwgICAgICAgICAgICAgICAgICAgfA0KPiA+ ICAgfCAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLSAgICAgICAgICAgICAgICAgICB8 DQo+ID4gICB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCj4gPg0KPiA+IC0gSXQgaXMgYW4gb3BlbiBxdWVzdGlvbiB0aGF0IGhvdyB0byBsb2Fk IGVicGYgdG8ga2VybmVsIGFuZCBsaW5rIHRvDQo+ID4gICBzcGVjaWZpYyBuZXRkZXYgaW4gRFBE Sywgc2hvdWxkIGl0IGJlIHBhcnQgb2YgUE1ELCBvciBpdCBzaG91bGQgYmUNCj4gaGFuZGxlZCBi eQ0KPiA+ICAgYW4gaW5kZXBlbmRlbnQgdG9vbD8gSW4gdGhpcyBwYXRjaHNldCwgaXQgdGFrZXMg dGhlIHNlY29uZCBvcHRpb24sIHRoZXJlDQo+IHdpbGwNCj4gPiAgIGJlIGEgImJpbmQiIHN0YWdl IGJlZm9yZSB3ZSBzdGFydCBBRl9YRFAgUE1ELCB0aGlzIGluY2x1ZGVzIGJlbG93DQo+IHN0ZXBz Og0KPiA+ICAgYSkgbG9hZCBlYnBmIHByb2dyYW0gdG8gdGhlIGtlcm5lbCwgKHRoZSBlYnBmIHBy b2dyYW0gbXVzdCBjb250YWluIHRoZQ0KPiA+ICAgICAgbG9naWMgdG8gcmVkaXJlY3QgcGFja2V0 IHRvIGEgeGRwIHNvY2tldCBiYXNlIG9uIGEgcmVkaXJlY3QgbWFwKS4NCj4gPiAgIGIpIGxpbmsg ZWJwZiBwcm9ncmFtIHRvIHNwZWNpZmljIG5ldHdvcmsgaW50ZXJmYWNlLg0KPiA+ICAgYykgZXhw b3NlIHRoZSB4ZHAgc29ja2V0IHJlZGlyZWN0IG1hcCBpZCBhbmQgZW50cmllcyBudW1iZXIgdG8g dXNlciwNCj4gPiAgICAgIHNvIHRoaXMgd2lsbCBiZSBwYXJzZWQgdG8gUE1ELCBhbmQgUE1EIHdp bGwgY3JlYXRlIHhkcCBzb2NrZXQNCj4gPiAgICAgIGZvciBlYWNoIHF1ZXVlIGFuZCB1cGRhdGUg dGhlIHJlZGlyZWN0IG1hcCBjb3JyZWN0bHkuDQo+ID4gICAgICAoZXhhbXBsZToNCj4gPg0KPiAt LXZkZXYsaWZhY2U9ZXRoMCx4c2tfbWFwX2lkPTUzLHhza19tYXBfa2V5X2Jhc2U9MCx4c2tfbWFw X2tleV9jb3VudA0KPiA9NA0KPiA+ICkNCj4gPg0KPiA+IHYyOg0KPiA+IC0gZml4IGxpc2VuY2Ug aGVhZGVyDQo+ID4gLSBjbGVhbiB1cCBicGYgZGVwZW5kZW5jeSwgYnBmIHByb2dyYW0gaXMgZW1i ZWRkZWQsICBubw0KPiAieGRwc29ja19rZXJuLm8iDQo+ID4gICByZXF1aXJlZA0KPiA+IC0gY2xl YW4gdXAgbWFrZSBmaWxlLCBvbmx5IGxpbnV4X2hlYWRlciBpcyByZXF1aXJlZA0KPiA+IC0gZml4 IGFsbCB0aGUgY29tcGlsZSB3YXJuaW5nLg0KPiA+IC0gZml4IHBhY2tldCBudW1iZXIgcmV0dXJu IGluIFR4Lg0KPiA+DQo+ID4gSG93IHRvIHRyeQ0KPiA+ID09PT09PT09PT0NCj4gPg0KPiA+IDEu IFRha2UgdGhlIGtlcm5lbCB2NC4xOC4NCj4gPiAgICBtYWtlIHN1cmUgeW91IHR1cm4gb24gWERQ IHNvY2tldHMgd2hlbiBjb21waWxpbmcNCj4gPiAgICBOZXR3b3JraW5nIHN1cHBvcnQgLS0+DQo+ ID4gICAgICAgICBOZXR3b3JraW5nIG9wdGlvbnMgLS0+DQo+ID4gICAgICAgICAgICAgICAgIFsg KiBdIFhEUCBzb2NrZXRzDQo+ID4gMi4gaW4gdGhlIGtlcm5lbCBzb3VyY2UgY29kZSwgYXBwbHkg YmVsb3cgcGF0Y2ggYW5kIGNvbXBpbGUgdGhlIGJwZiBzYW1wbGUNCj4gY29kZS4NCj4gPiAgICAj bWFrZSBzYW1wbGVzL2JwZi8NCj4gPiAgICBzbyB0aGUgc2FtcGxlIHhkcHNvY2sgY2FuIGJlIHVz ZWQgYXMgYSBiaW5kL3VuYmluZCB0b29sIGZvciBhZl94ZHANCj4gPiAgICBQTUQsIHNvcnJ5IGZv ciB0aGlzIHVnbHksIGJ1dCBpbiBmdXR1cmUsIHRoZXJlIGNvdWxkIGJlIGEgZGVkaWNhdGVkDQo+ ID4gICAgdG9vbCBpbiBEUERLLCBpZiB3ZSBhZ3JlZSB3aXRoIHRoZSBpZGVhIHRoYXQgYnBmIGNv bmZpZ3VyZSBpbiB0aGUga2VybmVsDQo+ID4gICAgc2hvdWxkIGJlIHNlcGFyYXRlZCBmcm9tIFBN RC4NCj4gPg0KPiA+IH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+UEFUQ0gNCj4gPiBTVEFSVH5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiA+DQo+ID4gZGlmZiAtLWdpdCBh L3NhbXBsZXMvYnBmL3hkcHNvY2tfdXNlci5jIGIvc2FtcGxlcy9icGYveGRwc29ja191c2VyLmMN Cj4gPiBpbmRleCBkNjljOGQ3OGQzZmQuLjQ0YTYzMTgwNDNlNyAxMDA2NDQNCj4gPiAtLS0gYS9z YW1wbGVzL2JwZi94ZHBzb2NrX3VzZXIuYw0KPiA+ICsrKyBiL3NhbXBsZXMvYnBmL3hkcHNvY2tf dXNlci5jDQo+ID4gQEAgLTc2LDYgKzc2LDggQEAgc3RhdGljIGludCBvcHRfcG9sbDsgIHN0YXRp YyBpbnQNCj4gPiBvcHRfc2hhcmVkX3BhY2tldF9idWZmZXI7ICBzdGF0aWMgaW50IG9wdF9pbnRl cnZhbCA9IDE7ICBzdGF0aWMgdTMyDQo+ID4gb3B0X3hkcF9iaW5kX2ZsYWdzOw0KPiA+ICtzdGF0 aWMgaW50IG9wdF9iaW5kOw0KPiA+ICtzdGF0aWMgaW50IG9wdF91bmJpbmQ7DQo+ID4NCj4gPiAg c3RydWN0IHhkcF91bWVtX3VxdWV1ZSB7DQo+ID4gICAgICAgICB1MzIgY2FjaGVkX3Byb2Q7DQo+ ID4gQEAgLTY2Miw2ICs2NjQsOCBAQCBzdGF0aWMgdm9pZCB1c2FnZShjb25zdCBjaGFyICpwcm9n KQ0KPiA+ICAgICAgICAgICAgICAgICAiICAtUywgLS14ZHAtc2tiPW4gICAgICBVc2UgWERQIHNr Yi1tb2RcbiINCj4gPiAgICAgICAgICAgICAgICAgIiAgLU4sIC0teGRwLW5hdGl2ZT1uICAgRW5m b3JlIFhEUCBuYXRpdmUgbW9kZVxuIg0KPiA+ICAgICAgICAgICAgICAgICAiICAtbiwgLS1pbnRl cnZhbD1uICAgICBTcGVjaWZ5IHN0YXRpc3RpY3MgdXBkYXRlDQo+IGludGVydmFsIChkZWZhdWx0 IDEgc2VjKS5cbiINCj4gPiArICAgICAgICAgICAgICAgIiAgLWIsIC0tYmluZCAgICAgICAgICAg QmluZCBvbmx5LlxuIg0KPiA+ICsgICAgICAgICAgICAgICAiICAtdSwgLS11bmJpbmQgICAgICAg ICBVbmJpbmQgb25seS5cbiINCj4gPiAgICAgICAgICAgICAgICAgIlxuIjsNCj4gPiAgICAgICAg IGZwcmludGYoc3RkZXJyLCBzdHIsIHByb2cpOw0KPiA+ICAgICAgICAgZXhpdChFWElUX0ZBSUxV UkUpOw0KPiA+IEBAIC02NzQsNyArNjc4LDcgQEAgc3RhdGljIHZvaWQgcGFyc2VfY29tbWFuZF9s aW5lKGludCBhcmdjLCBjaGFyDQo+ICoqYXJndikNCj4gPiAgICAgICAgIG9wdGVyciA9IDA7DQo+ ID4NCj4gPiAgICAgICAgIGZvciAoOzspIHsNCj4gPiAtICAgICAgICAgICAgICAgYyA9IGdldG9w dF9sb25nKGFyZ2MsIGFyZ3YsICJydGxpOnE6cHNTTm46IiwgbG9uZ19vcHRpb25zLA0KPiA+ICsg ICAgICAgICAgICAgICBjID0gZ2V0b3B0X2xvbmcoYXJnYywgYXJndiwgInJ0bGk6cTpwc1NObjpi dSIsDQo+ID4gKyBsb25nX29wdGlvbnMsDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAmb3B0aW9uX2luZGV4KTsNCj4gPiAgICAgICAgICAgICAgICAgaWYgKGMgPT0gLTEpDQo+ ID4gICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQo+ID4gQEAgLTcxMSw2ICs3MTUsMTIg QEAgc3RhdGljIHZvaWQgcGFyc2VfY29tbWFuZF9saW5lKGludCBhcmdjLCBjaGFyDQo+ICoqYXJn dikNCj4gPiAgICAgICAgICAgICAgICAgY2FzZSAnbic6DQo+ID4gICAgICAgICAgICAgICAgICAg ICAgICAgb3B0X2ludGVydmFsID0gYXRvaShvcHRhcmcpOw0KPiA+ICAgICAgICAgICAgICAgICAg ICAgICAgIGJyZWFrOw0KPiA+ICsgICAgICAgICAgICAgICBjYXNlICdiJzoNCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICBvcHRfYmluZCA9IDE7DQo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgYnJlYWs7DQo+ID4gKyAgICAgICAgICAgICAgIGNhc2UgJ3UnOg0KPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgIG9wdF91bmJpbmQgPSAxOw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg IGJyZWFrOw0KPiA+ICAgICAgICAgICAgICAgICBkZWZhdWx0Og0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgIHVzYWdlKGJhc2VuYW1lKGFyZ3ZbMF0pKTsNCj4gPiAgICAgICAgICAgICAgICAg fQ0KPiA+IEBAIC04OTgsNiArOTA4LDEyIEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJn dikNCj4gPiAgICAgICAgICAgICAgICAgZXhpdChFWElUX0ZBSUxVUkUpOw0KPiA+ICAgICAgICAg fQ0KPiA+DQo+ID4gKyAgICAgICBpZiAob3B0X3VuYmluZCkgew0KPiA+ICsgICAgICAgICAgICAg ICBicGZfc2V0X2xpbmtfeGRwX2ZkKG9wdF9pZmluZGV4LCAtMSwgb3B0X3hkcF9mbGFncyk7DQo+ ID4NCj4gPiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+flBBVENIDQo+ID4gRU5Efn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ID4NCj4gPiAzLiBiaW5kDQo+ID4gICAjLi9z YW1wbGVzL2JwZi94ZHBzb2NrIC1pIGV0aDAgLWINCj4gPg0KPiA+ICAgaW4gdGhpcyBzdGVwLCBh biBlYnBmIGJpbmFyeSB4ZHBzb2NrX2tlcm4ubyBpcyBiZSBsb2FkZWQgaW50byB0aGUga2VybmVs DQo+ID4gICBhbmQgbGlua2VkIHRvIGV0aDAsIHRoZSBlYnBmIHNvdXJjZSBjb2RlIGlzDQo+IC9z YW1wbGVzL2JwZi94ZHBzb2NrX2tlcm4uYw0KPiA+ICAgeW91IGNhbiBtb2RpZnkgaXQgYW5kIHJl LWNvbXBpbGUgZm9yIGEgZGlmZmVyZW50IHRlc3QuDQo+ID4NCj4gPiA0LiBkdW1wIHhkcCBzb2Nr ZXQgbWFwIGluZm9ybWF0aW9uLg0KPiA+ICAgIy4vdG9vbHMvYnBmL2JwZnRvb2wvYnBmdG9vbCBt YXAgLXAsIHlvdSB3aWxsIHNlZSBzb21ldGhpbmcgbGlrZSBiZWxvdy4NCj4gPg0KPiA+ICAgfSx7 DQo+ID4gICAgICAgICJpZCI6IDU2LA0KPiA+ICAgICAgICAidHlwZSI6ICJ4c2ttYXAiLA0KPiA+ ICAgICAgICAibmFtZSI6ICJ4c2tzX21hcCIsDQo+ID4gICAgICAgICJmbGFncyI6IDAsDQo+ID4g ICAgICAgICJieXRlc19rZXkiOiA0LA0KPiA+ICAgICAgICAiYnl0ZXNfdmFsdWUiOiA0LA0KPiA+ ICAgICAgICAibWF4X2VudHJpZXMiOiA0LA0KPiA+ICAgICAgICAiYnl0ZXNfbWVtbG9jayI6IDQw OTYNCj4gPiAgICB9DQo+ID4NCj4gPiAgICBpbiB0aGlzIGNhc2UgNTYgaXMgdGhlIG1hcCBpZCBh bmQgaXQgaGFzIDQgZW50cmllcw0KPiA+DQo+ID4gNS4gc3RhcnQgdGVzdHBtZA0KPiA+DQo+ID4g ICAgLi9idWlsZC9hcHAvdGVzdHBtZCAtYyAweGMgLW4gNCAtLXZkZXYNCj4gPg0KPiBldGhfYWZf eGRwLGlmYWNlPWVucDU5czBmMCx4c2tfbWFwX2lkPTU2LHhza19tYXBfa2V5X3N0YXJ0PTJ4c2tf bWFwXw0KPiBrZQ0KPiA+IHlfY291bnQ9MiAtLSAtaSAtLXJ4cT0yIC0tdHhxPTINCj4gPg0KPiA+ ICAgICBpbiB0aGlzIGNhc2UsIHdlIHJlc2VydmVkIDIgZW50cmllcyAoMiwzKSBpbiB0aGUgbWFw LCBhbmQgdGhleSB3aWxsIGJlDQo+IG1hcHBlZCB0byBxdWV1ZSAwIGFuZCBxdWV1ZSAxLg0KPiA+ DQo+ID4gNi4gdW5iaW5kIGFmdGVyIHRlc3QNCj4gPiAgICAuL3NhbXBsZS9icGYveGRwc29jayAt aSBldGgwIC11Lg0KPiA+DQo+ID4gUGVyZm9ybWFuY2UNCj4gPiA9PT09PT09PT09PQ0KPiA+IFNp bmNlIG5vIHplcm8gY29weSBkcml2ZXIgaXMgcmVhZHkgeWV0Lg0KPiA+IFNvIGZhciBvbmx5IHRl c3RlZCB3aXRoIERSViBhbmQgU0tCIG1vZGUgb24gaTQwZSAyNUcgdGhlIHJlc3VsdCBzaG93DQo+ ID4gaWRlbnRpY2FsIHdpdGgga2VybmVsIHNhbXBsZSAieGRwc29jayINCj4gPg0KPiA+IFFpIFpo YW5nICg2KToNCj4gPiAgIG5ldC9hZl94ZHA6IG5ldyBQTUQgZHJpdmVyDQo+ID4gICBsaWIvbWJ1 ZjogZW5hYmxlIHBhcnNlIGZsYWdzIHdoZW4gY3JlYXRlIG1lbXBvb2wNCj4gPiAgIGxpYi9tZW1w b29sOiBhbGxvdyBwYWdlIHNpemUgYWxpZ25lZCBtZW1wb29sDQo+ID4gICBuZXQvYWZfeGRwOiB1 c2UgbWJ1ZiBtZW1wb29sIGZvciBidWZmZXIgbWFuYWdlbWVudA0KPiA+ICAgbmV0L2FmX3hkcDog ZW5hYmxlIHplcm8gY29weQ0KPiA+ICAgYXBwL3Rlc3RwbWQ6IGFkZCBtZW1wb29sIGZsYWdzIHBh cmFtZXRlcg0KPiA+DQo+ID4gIGFwcC90ZXN0LXBtZC9wYXJhbWV0ZXJzLmMgICAgICAgICAgICAg ICAgICAgICB8ICAgMTIgKw0KPiA+ICBhcHAvdGVzdC1wbWQvdGVzdHBtZC5jICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDE1ICstDQo+ID4gIGFwcC90ZXN0LXBtZC90ZXN0cG1kLmggICAgICAg ICAgICAgICAgICAgICAgICB8ICAgIDEgKw0KPiA+ICBjb25maWcvY29tbW9uX2Jhc2UgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsNCj4gPiAgY29uZmlnL2NvbW1vbl9saW51eGFw cCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArDQo+ID4gIGRyaXZlcnMvbmV0L01ha2Vm aWxlICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgKw0KPiA+ICBkcml2ZXJzL25ldC9h Zl94ZHAvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgfCAgIDMwICsNCj4gPiAgZHJpdmVycy9u ZXQvYWZfeGRwL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgIHwgICAgNyArDQo+ID4gIGRyaXZl cnMvbmV0L2FmX3hkcC9ydGVfZXRoX2FmX3hkcC5jICAgICAgICAgICB8IDEzNDUNCj4gKysrKysr KysrKysrKysrKysrKysrKysrKw0KPiA+ICBkcml2ZXJzL25ldC9hZl94ZHAvcnRlX3BtZF9hZl94 ZHBfdmVyc2lvbi5tYXAgfCAgICA0ICsNCj4gPiAgbGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmLmMg ICAgICAgICAgICAgICAgICAgIHwgICAxNSArLQ0KPiA+ICBsaWIvbGlicnRlX21idWYvcnRlX21i dWYuaCAgICAgICAgICAgICAgICAgICAgfCAgICA4ICstDQo+ID4gIGxpYi9saWJydGVfbWVtcG9v bC9ydGVfbWVtcG9vbC5jICAgICAgICAgICAgICB8ICAgIDMgKw0KPiA+ICBsaWIvbGlicnRlX21l bXBvb2wvcnRlX21lbXBvb2wuaCAgICAgICAgICAgICAgfCAgICAxICsNCj4gPiAgbWsvcnRlLmFw cC5tayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArDQo+ID4gIDE1IGZp bGVzIGNoYW5nZWQsIDE0MzkgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pICBjcmVhdGUg bW9kZQ0KPiA+IDEwMDY0NCBkcml2ZXJzL25ldC9hZl94ZHAvTWFrZWZpbGUgIGNyZWF0ZSBtb2Rl IDEwMDY0NA0KPiA+IGRyaXZlcnMvbmV0L2FmX3hkcC9tZXNvbi5idWlsZCAgY3JlYXRlIG1vZGUg MTAwNjQ0DQo+ID4gZHJpdmVycy9uZXQvYWZfeGRwL3J0ZV9ldGhfYWZfeGRwLmMNCj4gPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L2FmX3hkcC9ydGVfcG1kX2FmX3hkcF92ZXJzaW9u Lm1hcA0KPiA+DQo+ID4gLS0NCj4gPiAyLjEzLjYNCj4gPg0K