From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id 47F341BE75 for ; Fri, 21 Dec 2018 16:58:23 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Dec 2018 07:58:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,381,1539673200"; d="scan'208";a="129780124" Received: from irsmsx105.ger.corp.intel.com ([163.33.3.28]) by fmsmga004.fm.intel.com with ESMTP; 21 Dec 2018 07:58:21 -0800 Received: from irsmsx106.ger.corp.intel.com ([169.254.8.227]) by irsmsx105.ger.corp.intel.com ([169.254.7.247]) with mapi id 14.03.0415.000; Fri, 21 Dec 2018 15:58:20 +0000 From: "Ananyev, Konstantin" To: Akhil Goyal , "dev@dpdk.org" CC: "Nicolau, Radu" , "Horton, Remy" Thread-Topic: [dpdk-dev] [PATCH v4 1/9] examples/ipsec-secgw: avoid to request unused TX offloads Thread-Index: AQHUk8u9En2igdalTEaFjyaRbcWVh6WJQo0AgAAeiTA= Date: Fri, 21 Dec 2018 15:58:19 +0000 Message-ID: <2601191342CEEE43887BDE71AB977258010D8BDD24@IRSMSX106.ger.corp.intel.com> References: <1544111691-7481-1-git-send-email-konstantin.ananyev@intel.com> <1544805623-18150-2-git-send-email-konstantin.ananyev@intel.com> <0a59d890-f510-95e1-f26c-7b0bb9709e58@nxp.com> In-Reply-To: <0a59d890-f510-95e1-f26c-7b0bb9709e58@nxp.com> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNmFkYmY0MjQtNjk5Ny00ZTMwLWJmZDgtZTZlMmFmNGRkZGJiIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiMjhkK3JLWDFTUmpNUXorTVhsbmZlWGJNUzJLb0V1YUhSdGJYTnV0YXV4RzhTUktVdFRncnAzMzdVcEJSZ0c3WCJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v4 1/9] examples/ipsec-secgw: avoid to request unused TX offloads 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, 21 Dec 2018 15:58:24 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQWtoaWwgR295YWwgW21h aWx0bzpha2hpbC5nb3lhbEBueHAuY29tXQ0KPiBTZW50OiBGcmlkYXksIERlY2VtYmVyIDIxLCAy MDE4IDE6NTcgUE0NCj4gVG86IEFuYW55ZXYsIEtvbnN0YW50aW4gPGtvbnN0YW50aW4uYW5hbnll dkBpbnRlbC5jb20+OyBkZXZAZHBkay5vcmcNCj4gQ2M6IE5pY29sYXUsIFJhZHUgPHJhZHUubmlj b2xhdUBpbnRlbC5jb20+OyBIb3J0b24sIFJlbXkgPHJlbXkuaG9ydG9uQGludGVsLmNvbT4NCj4g U3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIHY0IDEvOV0gZXhhbXBsZXMvaXBzZWMtc2Vj Z3c6IGF2b2lkIHRvIHJlcXVlc3QgdW51c2VkIFRYIG9mZmxvYWRzDQo+IA0KPiBIaSBLb25zdGFu dGluLA0KPiANCj4gT24gMTIvMTQvMjAxOCAxMDoxMCBQTSwgS29uc3RhbnRpbiBBbmFueWV2IHdy b3RlOg0KPiA+IGlwc2VjLXNlY2d3IGFsd2F5cyBlbmFibGVzIFRYIG9mZmxvYWRzDQo+ID4gKERF Vl9UWF9PRkZMT0FEX01VTFRJX1NFR1MsIERFVl9UWF9PRkZMT0FEX1NFQ1VSSVRZKSwNCj4gPiBl dmVuIHdoZW4gdGhleSBhcmUgbm90IHJlcXVlc3RlZCBieSB0aGUgY29uZmlnLg0KPiA+IFRoYXQg Y2F1c2VzIG1hbnkgUE1EIHRvIGNob29zZSBmdWxsLWZlYXR1cmVkIFRYIGZ1bmN0aW9uLA0KPiA+ IHdoaWNoIGluIG1hbnkgY2FzZXMgaXMgbXVjaCBzbG93ZXIgdGhlbiBvbmUgd2l0aG91dCBvZmZs b2Fkcy4NCj4gPiBUaGF0IHBhdGNoIGFkZHMgY2hlY2tzIHRvIGVuYWJsZWQgZXh0cmEgSFcgb2Zm bG9hZHMsIG9ubHkgd2hlbg0KPiA+IHRoZXkgd2VyZSByZXF1ZXN0ZWQuDQo+ID4gUGx1cyBpdCBl bmFibGVzIERFVl9UWF9PRkZMT0FEX0lQVjRfQ0tTVU0sDQo+ID4gb25seSB3aGVuIG90aGVyIEhX IFRYIG9mbG9hZHMgYXJlIGdvaW5nIHRvIGJlIGVuYWJsZWQuDQo+ID4gT3RoZXJ3aXNlIFNXIHZl cnNpb24gb2YgaXAgY2tzdW0gY2FsY3VsYXRpb24gaXMgdXNlZC4NCj4gPiBUaGF0IGFsbG93cyB0 byB1c2UgdmVjdG9yIFRYIGZ1bmN0aW9uLCB3aGVuIGlubGluZS1pcHNlYyBpcyBub3QNCj4gPiBy ZXF1ZXN0ZWQuDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBSZW15IEhvcnRvbiA8cmVteS5ob3J0 b25AaW50ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IEtvbnN0YW50aW4gQW5hbnlldiA8a29u c3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4NCj4gPiBBY2tlZC1ieTogUmFkdSBOaWNvbGF1IDxy YWR1Lm5pY29sYXVAaW50ZWwuY29tPg0KPiA+IC0tLQ0KPiA+ICAgZXhhbXBsZXMvaXBzZWMtc2Vj Z3cvaXBzZWMtc2VjZ3cuYyB8IDQ0ICsrKysrKysrKysrKysrKy0tLS0tLS0tDQo+ID4gICBleGFt cGxlcy9pcHNlYy1zZWNndy9pcHNlYy5oICAgICAgIHwgIDYgKysrKw0KPiA+ICAgZXhhbXBsZXMv aXBzZWMtc2VjZ3cvc2EuYyAgICAgICAgICB8IDU2ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKw0KPiA+ICAgMyBmaWxlcyBjaGFuZ2VkLCA5MSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlv bnMoLSkNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9leGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy1z ZWNndy5jIGIvZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMtc2VjZ3cuYw0KPiA+IGluZGV4IDFi YzBiNWI1MC4uY2ZjMmIwNWU1IDEwMDY0NA0KPiA+IC0tLSBhL2V4YW1wbGVzL2lwc2VjLXNlY2d3 L2lwc2VjLXNlY2d3LmMNCj4gPiArKysgYi9leGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy1zZWNn dy5jDQo+ID4gQEAgLTIwOCw4ICsyMDgsNiBAQCBzdGF0aWMgc3RydWN0IHJ0ZV9ldGhfY29uZiBw b3J0X2NvbmYgPSB7DQo+ID4gICAJfSwNCj4gPiAgIAkudHhtb2RlID0gew0KPiA+ICAgCQkubXFf bW9kZSA9IEVUSF9NUV9UWF9OT05FLA0KPiA+IC0JCS5vZmZsb2FkcyA9IChERVZfVFhfT0ZGTE9B RF9JUFY0X0NLU1VNIHwNCj4gPiAtCQkJICAgICBERVZfVFhfT0ZGTE9BRF9NVUxUSV9TRUdTKSwN Cj4gSSBiZWxpZXZlIHRoaXMgaXMgZGlzYWJsaW5nIGNoZWNrc3VtIG9mZmxvYWQgZm9yIGFsbCBj YXNlcyBhbmQgdGhlbg0KPiBlbmFibGluZyBvbmx5IGZvciBpbmxpbmUgY3J5cHRvIGFuZCBpbmxp bmUgcHJvdG8uDQoNClllcy4NCg0KPiBUaGlzIGlzIGJyZWFraW5nIGxvb2thc2lkZSBwcm90byBh bmQgbG9va2FzaWRlIG5vbmUgY2FzZXMuIFBsZWFzZQ0KPiBjb3JyZWN0IG1lIGlmIEkgYW0gd3Jv bmcuDQoNCldoeSBicmVha2luZz8NCkZvciBjYXNlcyB3aGVuIEhXIGNrc3VtIG9mZmxvYWQgaXMg ZGlzYWJsZWQsIElQdjQgY2tzdW0gY2FsY3VsYXRpb24NCndpbGwgYmUgZG9uZSBpbiBTVywgc2Vl IGJlbG93Og0KcHJlcGFyZV90eF9wa3QoLi4uKQ0Kew0KICAgLi4uDQogICAgKw0KICAgICsJCS8q IGNhbGN1bGF0ZSBJUHY0IGNrc3VtIGluIFNXICovDQogICAgKwkJaWYgKChwa3QtPm9sX2ZsYWdz ICYgUEtUX1RYX0lQX0NLU1VNKSA9PSAwKQ0KICAgICsJCQlpcC0+aXBfc3VtID0gcnRlX2lwdjRf Y2tzdW0oKHN0cnVjdCBpcHY0X2hkciAqKWlwKTsNCg0KDQpXZSB0ZXN0ZWQgbG9va2FzaWRlLW5v bmUgY2FzZSBxdWl0ZSBleHRlbnNpdmVseSAtIGFsbCB3b3JrcyB3ZWxsLA0KaW4gZmFjdCBvbiBJ bnRlbCBOSUNzIGl0IGJlY2FtZSBldmVuIGEgYml0IGZhc3RlciBiZWNhdXNlIG9mIHRoYXQgY2hh bmdlDQoodGhvdWdoIG5vdCBtdWNoKS4gDQpEaXNhYmxpbmcgSFcgb2ZmbG9hZHMgd2hlbiB0aGV5 IGFyZSBub3QgcmVhbGx5IHJlcXVpcmVkIGhhcyAyIGJlbmVmaXRzOg0KIDEpIGFsbG93cyBhcHAg dG8gYmUgcnVuIG9uIE5JQ3Mgd2l0aG91dCBIVyBvZmZsb2FkcyBzdXBwb3J0Lg0KIDIpIGFsbG93 cyBkZXZfY29uZmlndXJlKCkgZm9yIFRYIHBhdGggdG8gc2VsZWN0IHNpbXBsZS92ZWN0b3IgVFgg ZnVuY3Rpb25zDQogICAgIHdoaWNoIGZvciBtYW55IE5JQ3MgYXJlIHNpZ25pZmljYW50bHkgZmFz dGVyLiANCg0KS29uc3RhbnRpbg0KDQo+IFNvIGEgTkFDSyBmb3IgdGhpcyBpZiBteSB1bmRlcnN0 YW5kaW5nIGlzIGNvcnJlY3QuDQo+ID4gICAJfSwNCj4gPiAgIH07DQo+ID4NCj4gPiBAQCAtMzE1 LDcgKzMxMyw4IEBAIHByZXBhcmVfdHJhZmZpYyhzdHJ1Y3QgcnRlX21idWYgKipwa3RzLCBzdHJ1 Y3QgaXBzZWNfdHJhZmZpYyAqdCwNCj4gPiAgIH0NCj4gPg0KPiA+ICAgc3RhdGljIGlubGluZSB2 b2lkDQo+ID4gLXByZXBhcmVfdHhfcGt0KHN0cnVjdCBydGVfbWJ1ZiAqcGt0LCB1aW50MTZfdCBw b3J0KQ0KPiA+ICtwcmVwYXJlX3R4X3BrdChzdHJ1Y3QgcnRlX21idWYgKnBrdCwgdWludDE2X3Qg cG9ydCwNCj4gPiArCQljb25zdCBzdHJ1Y3QgbGNvcmVfY29uZiAqcWNvbmYpDQo+ID4gICB7DQo+ ID4gICAJc3RydWN0IGlwICppcDsNCj4gPiAgIAlzdHJ1Y3QgZXRoZXJfaGRyICpldGhoZHI7DQo+ ID4gQEAgLTMyNSwxNCArMzI0LDE5IEBAIHByZXBhcmVfdHhfcGt0KHN0cnVjdCBydGVfbWJ1ZiAq cGt0LCB1aW50MTZfdCBwb3J0KQ0KPiA+ICAgCWV0aGhkciA9IChzdHJ1Y3QgZXRoZXJfaGRyICop cnRlX3BrdG1idWZfcHJlcGVuZChwa3QsIEVUSEVSX0hEUl9MRU4pOw0KPiA+DQo+ID4gICAJaWYg KGlwLT5pcF92ID09IElQVkVSU0lPTikgew0KPiA+IC0JCXBrdC0+b2xfZmxhZ3MgfD0gUEtUX1RY X0lQX0NLU1VNIHwgUEtUX1RYX0lQVjQ7DQo+ID4gKwkJcGt0LT5vbF9mbGFncyB8PSBxY29uZi0+ b3V0Ym91bmQuaXB2NF9vZmZsb2FkczsNCj4gPiAgIAkJcGt0LT5sM19sZW4gPSBzaXplb2Yoc3Ry dWN0IGlwKTsNCj4gPiAgIAkJcGt0LT5sMl9sZW4gPSBFVEhFUl9IRFJfTEVOOw0KPiA+DQo+ID4g ICAJCWlwLT5pcF9zdW0gPSAwOw0KPiA+ICsNCj4gPiArCQkvKiBjYWxjdWxhdGUgSVB2NCBja3N1 bSBpbiBTVyAqLw0KPiA+ICsJCWlmICgocGt0LT5vbF9mbGFncyAmIFBLVF9UWF9JUF9DS1NVTSkg PT0gMCkNCj4gPiArCQkJaXAtPmlwX3N1bSA9IHJ0ZV9pcHY0X2Nrc3VtKChzdHJ1Y3QgaXB2NF9o ZHIgKilpcCk7DQo+ID4gKw0KPiA+ICAgCQlldGhoZHItPmV0aGVyX3R5cGUgPSBydGVfY3B1X3Rv X2JlXzE2KEVUSEVSX1RZUEVfSVB2NCk7DQo+ID4gICAJfSBlbHNlIHsNCj4gPiAtCQlwa3QtPm9s X2ZsYWdzIHw9IFBLVF9UWF9JUFY2Ow0KPiA+ICsJCXBrdC0+b2xfZmxhZ3MgfD0gcWNvbmYtPm91 dGJvdW5kLmlwdjZfb2ZmbG9hZHM7DQo+ID4gICAJCXBrdC0+bDNfbGVuID0gc2l6ZW9mKHN0cnVj dCBpcDZfaGRyKTsNCj4gPiAgIAkJcGt0LT5sMl9sZW4gPSBFVEhFUl9IRFJfTEVOOw0KPiA+DQo+ ID4gQEAgLTM0NiwxOCArMzUwLDE5IEBAIHByZXBhcmVfdHhfcGt0KHN0cnVjdCBydGVfbWJ1ZiAq cGt0LCB1aW50MTZfdCBwb3J0KQ0KPiA+ICAgfQ0KPiA+DQo+ID4gICBzdGF0aWMgaW5saW5lIHZv aWQNCj4gPiAtcHJlcGFyZV90eF9idXJzdChzdHJ1Y3QgcnRlX21idWYgKnBrdHNbXSwgdWludDE2 X3QgbmJfcGt0cywgdWludDE2X3QgcG9ydCkNCj4gPiArcHJlcGFyZV90eF9idXJzdChzdHJ1Y3Qg cnRlX21idWYgKnBrdHNbXSwgdWludDE2X3QgbmJfcGt0cywgdWludDE2X3QgcG9ydCwNCj4gPiAr CQljb25zdCBzdHJ1Y3QgbGNvcmVfY29uZiAqcWNvbmYpDQo+ID4gICB7DQo+ID4gICAJaW50MzJf dCBpOw0KPiA+ICAgCWNvbnN0IGludDMyX3QgcHJlZmV0Y2hfb2Zmc2V0ID0gMjsNCj4gPg0KPiA+ ICAgCWZvciAoaSA9IDA7IGkgPCAobmJfcGt0cyAtIHByZWZldGNoX29mZnNldCk7IGkrKykgew0K PiA+ICAgCQlydGVfbWJ1Zl9wcmVmZXRjaF9wYXJ0Mihwa3RzW2kgKyBwcmVmZXRjaF9vZmZzZXRd KTsNCj4gPiAtCQlwcmVwYXJlX3R4X3BrdChwa3RzW2ldLCBwb3J0KTsNCj4gPiArCQlwcmVwYXJl X3R4X3BrdChwa3RzW2ldLCBwb3J0LCBxY29uZik7DQo+ID4gICAJfQ0KPiA+ICAgCS8qIFByb2Nl c3MgbGVmdCBwYWNrZXRzICovDQo+ID4gICAJZm9yICg7IGkgPCBuYl9wa3RzOyBpKyspDQo+ID4g LQkJcHJlcGFyZV90eF9wa3QocGt0c1tpXSwgcG9ydCk7DQo+ID4gKwkJcHJlcGFyZV90eF9wa3Qo cGt0c1tpXSwgcG9ydCwgcWNvbmYpOw0KPiA+ICAgfQ0KPiA+DQo+ID4gICAvKiBTZW5kIGJ1cnN0 IG9mIHBhY2tldHMgb24gYW4gb3V0cHV0IGludGVyZmFjZSAqLw0KPiA+IEBAIC0zNzEsNyArMzc2 LDcgQEAgc2VuZF9idXJzdChzdHJ1Y3QgbGNvcmVfY29uZiAqcWNvbmYsIHVpbnQxNl90IG4sIHVp bnQxNl90IHBvcnQpDQo+ID4gICAJcXVldWVpZCA9IHFjb25mLT50eF9xdWV1ZV9pZFtwb3J0XTsN Cj4gPiAgIAltX3RhYmxlID0gKHN0cnVjdCBydGVfbWJ1ZiAqKilxY29uZi0+dHhfbWJ1ZnNbcG9y dF0ubV90YWJsZTsNCj4gPg0KPiA+IC0JcHJlcGFyZV90eF9idXJzdChtX3RhYmxlLCBuLCBwb3J0 KTsNCj4gPiArCXByZXBhcmVfdHhfYnVyc3QobV90YWJsZSwgbiwgcG9ydCwgcWNvbmYpOw0KPiA+ DQo+ID4gICAJcmV0ID0gcnRlX2V0aF90eF9idXJzdChwb3J0LCBxdWV1ZWlkLCBtX3RhYmxlLCBu KTsNCj4gPiAgIAlpZiAodW5saWtlbHkocmV0IDwgbikpIHsNCj4gPiBAQCAtMTU0Myw3ICsxNTQ4 LDcgQEAgY3J5cHRvZGV2c19pbml0KHZvaWQpDQo+ID4gICB9DQo+ID4NCj4gPiAgIHN0YXRpYyB2 b2lkDQo+ID4gLXBvcnRfaW5pdCh1aW50MTZfdCBwb3J0aWQpDQo+ID4gK3BvcnRfaW5pdCh1aW50 MTZfdCBwb3J0aWQsIHVpbnQ2NF90IHJlcV9yeF9vZmZsb2FkcywgdWludDY0X3QgcmVxX3R4X29m ZmxvYWRzKQ0KPiA+ICAgew0KPiA+ICAgCXN0cnVjdCBydGVfZXRoX2Rldl9pbmZvIGRldl9pbmZv Ow0KPiA+ICAgCXN0cnVjdCBydGVfZXRoX3R4Y29uZiAqdHhjb25mOw0KPiA+IEBAIC0xNTg0LDEw ICsxNTg5LDEwIEBAIHBvcnRfaW5pdCh1aW50MTZfdCBwb3J0aWQpDQo+ID4gICAJCWxvY2FsX3Bv cnRfY29uZi5yeG1vZGUub2ZmbG9hZHMgfD0gREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUU7DQo+ ID4gICAJfQ0KPiA+DQo+ID4gLQlpZiAoZGV2X2luZm8ucnhfb2ZmbG9hZF9jYXBhICYgREVWX1JY X09GRkxPQURfU0VDVVJJVFkpDQo+ID4gLQkJbG9jYWxfcG9ydF9jb25mLnJ4bW9kZS5vZmZsb2Fk cyB8PSBERVZfUlhfT0ZGTE9BRF9TRUNVUklUWTsNCj4gPiAtCWlmIChkZXZfaW5mby50eF9vZmZs b2FkX2NhcGEgJiBERVZfVFhfT0ZGTE9BRF9TRUNVUklUWSkNCj4gPiAtCQlsb2NhbF9wb3J0X2Nv bmYudHhtb2RlLm9mZmxvYWRzIHw9IERFVl9UWF9PRkZMT0FEX1NFQ1VSSVRZOw0KPiA+ICsJLyog Q2FwYWJpbGl0aWVzIHdpbGwgYWxyZWFkeSBoYXZlIGJlZW4gY2hlY2tlZC4uICovDQo+ID4gKwls b2NhbF9wb3J0X2NvbmYucnhtb2RlLm9mZmxvYWRzIHw9IHJlcV9yeF9vZmZsb2FkczsNCj4gPiAr CWxvY2FsX3BvcnRfY29uZi50eG1vZGUub2ZmbG9hZHMgfD0gcmVxX3R4X29mZmxvYWRzOw0KPiA+ ICsNCj4gPiAgIAlpZiAoZGV2X2luZm8udHhfb2ZmbG9hZF9jYXBhICYgREVWX1RYX09GRkxPQURf TUJVRl9GQVNUX0ZSRUUpDQo+ID4gICAJCWxvY2FsX3BvcnRfY29uZi50eG1vZGUub2ZmbG9hZHMg fD0NCj4gPiAgIAkJCURFVl9UWF9PRkZMT0FEX01CVUZfRkFTVF9GUkVFOw0KPiA+IEBAIC0xNjM5 LDYgKzE2NDQsMTMgQEAgcG9ydF9pbml0KHVpbnQxNl90IHBvcnRpZCkNCj4gPg0KPiA+ICAgCQlx Y29uZiA9ICZsY29yZV9jb25mW2xjb3JlX2lkXTsNCj4gPiAgIAkJcWNvbmYtPnR4X3F1ZXVlX2lk W3BvcnRpZF0gPSB0eF9xdWV1ZWlkOw0KPiA+ICsNCj4gPiArCQkvKiBQcmUtcG9wdWxhdGUgcGt0 IG9mZmxvYWRzIGJhc2VkIG9uIGNhcGFiaWxpdGllcyAqLw0KPiA+ICsJCXFjb25mLT5vdXRib3Vu ZC5pcHY0X29mZmxvYWRzID0gUEtUX1RYX0lQVjQ7DQo+ID4gKwkJcWNvbmYtPm91dGJvdW5kLmlw djZfb2ZmbG9hZHMgPSBQS1RfVFhfSVBWNjsNCj4gPiArCQlpZiAocmVxX3R4X29mZmxvYWRzICYg REVWX1RYX09GRkxPQURfSVBWNF9DS1NVTSkNCj4gPiArCQkJcWNvbmYtPm91dGJvdW5kLmlwdjRf b2ZmbG9hZHMgfD0gUEtUX1RYX0lQX0NLU1VNOw0KPiA+ICsNCj4gPiAgIAkJdHhfcXVldWVpZCsr Ow0KPiA+DQo+ID4gICAJCS8qIGluaXQgUlggcXVldWVzICovDQo+ID4gQEAgLTE3NDksNiArMTc2 MSw3IEBAIG1haW4oaW50MzJfdCBhcmdjLCBjaGFyICoqYXJndikNCj4gPiAgIAl1aW50MzJfdCBs Y29yZV9pZDsNCj4gPiAgIAl1aW50OF90IHNvY2tldF9pZDsNCj4gPiAgIAl1aW50MTZfdCBwb3J0 aWQ7DQo+ID4gKwl1aW50NjRfdCByZXFfcnhfb2ZmbG9hZHMsIHJlcV90eF9vZmZsb2FkczsNCj4g Pg0KPiA+ICAgCS8qIGluaXQgRUFMICovDQo+ID4gICAJcmV0ID0gcnRlX2VhbF9pbml0KGFyZ2Ms IGFyZ3YpOw0KPiA+IEBAIC0xODA0LDcgKzE4MTcsOCBAQCBtYWluKGludDMyX3QgYXJnYywgY2hh ciAqKmFyZ3YpDQo+ID4gICAJCWlmICgoZW5hYmxlZF9wb3J0X21hc2sgJiAoMSA8PCBwb3J0aWQp KSA9PSAwKQ0KPiA+ICAgCQkJY29udGludWU7DQo+ID4NCj4gPiAtCQlwb3J0X2luaXQocG9ydGlk KTsNCj4gPiArCQlzYV9jaGVja19vZmZsb2Fkcyhwb3J0aWQsICZyZXFfcnhfb2ZmbG9hZHMsICZy ZXFfdHhfb2ZmbG9hZHMpOw0KPiA+ICsJCXBvcnRfaW5pdChwb3J0aWQsIHJlcV9yeF9vZmZsb2Fk cywgcmVxX3R4X29mZmxvYWRzKTsNCj4gPiAgIAl9DQo+ID4NCj4gPiAgIAljcnlwdG9kZXZzX2lu aXQoKTsNCj4gPiBkaWZmIC0tZ2l0IGEvZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuaCBiL2V4 YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjLmgNCj4gPiBpbmRleCBjOTk4YzgwNzYuLjliMTU4NmY1 MiAxMDA2NDQNCj4gPiAtLS0gYS9leGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy5oDQo+ID4gKysr IGIvZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuaA0KPiA+IEBAIC0xNDYsNiArMTQ2LDggQEAg c3RydWN0IGlwc2VjX2N0eCB7DQo+ID4gICAJc3RydWN0IHJ0ZV9tZW1wb29sICpzZXNzaW9uX3Bv b2w7DQo+ID4gICAJc3RydWN0IHJ0ZV9tYnVmICpvbF9wa3RzW01BWF9QS1RfQlVSU1RdIF9fcnRl X2FsaWduZWQoc2l6ZW9mKHZvaWQgKikpOw0KPiA+ICAgCXVpbnQxNl90IG9sX3BrdHNfY250Ow0K PiA+ICsJdWludDY0X3QgaXB2NF9vZmZsb2FkczsNCj4gPiArCXVpbnQ2NF90IGlwdjZfb2ZmbG9h ZHM7DQo+ID4gICB9Ow0KPiA+DQo+ID4gICBzdHJ1Y3QgY2Rldl9rZXkgew0KPiA+IEBAIC0yMzks NCArMjQxLDggQEAgc2FfaW5pdChzdHJ1Y3Qgc29ja2V0X2N0eCAqY3R4LCBpbnQzMl90IHNvY2tl dF9pZCk7DQo+ID4gICB2b2lkDQo+ID4gICBydF9pbml0KHN0cnVjdCBzb2NrZXRfY3R4ICpjdHgs IGludDMyX3Qgc29ja2V0X2lkKTsNCj4gPg0KPiA+ICtpbnQNCj4gPiArc2FfY2hlY2tfb2ZmbG9h ZHModWludDE2X3QgcG9ydF9pZCwgdWludDY0X3QgKnJ4X29mZmxvYWRzLA0KPiA+ICsJCXVpbnQ2 NF90ICp0eF9vZmZsb2Fkcyk7DQo+ID4gKw0KPiA+ICAgI2VuZGlmIC8qIF9fSVBTRUNfSF9fICov DQo+ID4gZGlmZiAtLWdpdCBhL2V4YW1wbGVzL2lwc2VjLXNlY2d3L3NhLmMgYi9leGFtcGxlcy9p cHNlYy1zZWNndy9zYS5jDQo+ID4gaW5kZXggZDJkMzU1MGE0Li5mZjhjNGI4MjkgMTAwNjQ0DQo+ ID4gLS0tIGEvZXhhbXBsZXMvaXBzZWMtc2VjZ3cvc2EuYw0KPiA+ICsrKyBiL2V4YW1wbGVzL2lw c2VjLXNlY2d3L3NhLmMNCj4gPiBAQCAtMTAxNywzICsxMDE3LDU5IEBAIG91dGJvdW5kX3NhX2xv b2t1cChzdHJ1Y3Qgc2FfY3R4ICpzYV9jdHgsIHVpbnQzMl90IHNhX2lkeFtdLA0KPiA+ICAgCWZv ciAoaSA9IDA7IGkgPCBuYl9wa3RzOyBpKyspDQo+ID4gICAJCXNhW2ldID0gJnNhX2N0eC0+c2Fb c2FfaWR4W2ldXTsNCj4gPiAgIH0NCj4gPiArDQo+ID4gKy8qDQo+ID4gKyAqIFNlbGVjdCBIVyBv ZmZsb2FkcyB0byBiZSB1c2VkLg0KPiA+ICsgKi8NCj4gPiAraW50DQo+ID4gK3NhX2NoZWNrX29m ZmxvYWRzKHVpbnQxNl90IHBvcnRfaWQsIHVpbnQ2NF90ICpyeF9vZmZsb2FkcywNCj4gPiArCQl1 aW50NjRfdCAqdHhfb2ZmbG9hZHMpDQo+ID4gK3sNCj4gPiArCXN0cnVjdCBpcHNlY19zYSAqcnVs ZTsNCj4gPiArCXVpbnQzMl90IGlkeF9zYTsNCj4gPiArCXN0cnVjdCBydGVfZXRoX2Rldl9pbmZv IGRldl9pbmZvOw0KPiA+ICsNCj4gPiArCXJ0ZV9ldGhfZGV2X2luZm9fZ2V0KHBvcnRfaWQsICZk ZXZfaW5mbyk7DQo+ID4gKw0KPiA+ICsJKnJ4X29mZmxvYWRzID0gMDsNCj4gPiArCSp0eF9vZmZs b2FkcyA9IDA7DQo+ID4gKw0KPiA+ICsJLyogQ2hlY2sgZm9yIGluYm91bmQgcnVsZXMgdGhhdCB1 c2Ugb2ZmbG9hZHMgYW5kIHVzZSB0aGlzIHBvcnQgKi8NCj4gPiArCWZvciAoaWR4X3NhID0gMDsg aWR4X3NhIDwgbmJfc2FfaW47IGlkeF9zYSsrKSB7DQo+ID4gKwkJcnVsZSA9ICZzYV9pbltpZHhf c2FdOw0KPiA+ICsJCWlmICgocnVsZS0+dHlwZSA9PSBSVEVfU0VDVVJJVFlfQUNUSU9OX1RZUEVf SU5MSU5FX0NSWVBUTyB8fA0KPiA+ICsJCQkJcnVsZS0+dHlwZSA9PQ0KPiA+ICsJCQkJUlRFX1NF Q1VSSVRZX0FDVElPTl9UWVBFX0lOTElORV9QUk9UT0NPTCkNCj4gPiArCQkJCSYmIHJ1bGUtPnBv cnRpZCA9PSBwb3J0X2lkKSB7DQo+ID4gKwkJCWlmICgoZGV2X2luZm8ucnhfb2ZmbG9hZF9jYXBh ICYgREVWX1JYX09GRkxPQURfU0VDVVJJVFkpDQo+ID4gKwkJCQkJPT0gMCkgew0KPiA+ICsJCQkJ UlRFX0xPRyhXQVJOSU5HLCBQT1JULA0KPiA+ICsJCQkJCSJIVyBSWCBJUFNlYyBpcyBub3Qgc3Vw cG9ydGVkXG4iKTsNCj4gPiArCQkJCXJldHVybiAtRUlOVkFMOw0KPiA+ICsJCQl9DQo+ID4gKwkJ CSpyeF9vZmZsb2FkcyB8PSBERVZfUlhfT0ZGTE9BRF9TRUNVUklUWTsNCj4gPiArCQl9DQo+ID4g Kwl9DQo+ID4gKw0KPiA+ICsJLyogQ2hlY2sgZm9yIG91dGJvdW5kIHJ1bGVzIHRoYXQgdXNlIG9m ZmxvYWRzIGFuZCB1c2UgdGhpcyBwb3J0ICovDQo+ID4gKwlmb3IgKGlkeF9zYSA9IDA7IGlkeF9z YSA8IG5iX3NhX291dDsgaWR4X3NhKyspIHsNCj4gPiArCQlydWxlID0gJnNhX291dFtpZHhfc2Fd Ow0KPiA+ICsJCWlmICgocnVsZS0+dHlwZSA9PSBSVEVfU0VDVVJJVFlfQUNUSU9OX1RZUEVfSU5M SU5FX0NSWVBUTyB8fA0KPiA+ICsJCQkJcnVsZS0+dHlwZSA9PQ0KPiA+ICsJCQkJUlRFX1NFQ1VS SVRZX0FDVElPTl9UWVBFX0lOTElORV9QUk9UT0NPTCkNCj4gPiArCQkJCSYmIHJ1bGUtPnBvcnRp ZCA9PSBwb3J0X2lkKSB7DQo+ID4gKwkJCWlmICgoZGV2X2luZm8udHhfb2ZmbG9hZF9jYXBhICYg REVWX1RYX09GRkxPQURfU0VDVVJJVFkpDQo+ID4gKwkJCQkJPT0gMCkgew0KPiA+ICsJCQkJUlRF X0xPRyhXQVJOSU5HLCBQT1JULA0KPiA+ICsJCQkJCSJIVyBUWCBJUFNlYyBpcyBub3Qgc3VwcG9y dGVkXG4iKTsNCj4gPiArCQkJCXJldHVybiAtRUlOVkFMOw0KPiA+ICsJCQl9DQo+ID4gKwkJCSp0 eF9vZmZsb2FkcyB8PSBERVZfVFhfT0ZGTE9BRF9TRUNVUklUWTsNCj4gPiArCQkJLyogRW5hYmxl IEhXIElQdjQgY2tzdW0gYXMgd2VsbCwgaWYgaXQgaXMgYXZhaWxhYmxlICovDQo+ID4gKwkJCWlm IChkZXZfaW5mby50eF9vZmZsb2FkX2NhcGEgJg0KPiA+ICsJCQkJCURFVl9UWF9PRkZMT0FEX0lQ VjRfQ0tTVU0pDQo+ID4gKwkJCQkqdHhfb2ZmbG9hZHMgfD0gREVWX1RYX09GRkxPQURfSVBWNF9D S1NVTTsNCj4gPiArCQl9DQo+ID4gKwl9DQo+ID4gKwlyZXR1cm4gMDsNCj4gPiArfQ0KDQo=