From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0064.outbound.protection.outlook.com [104.47.0.64]) by dpdk.org (Postfix) with ESMTP id A779B1BAAC for ; Wed, 11 Apr 2018 10:46:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=rYYYcp1+qGKlmUyJ8rzwWVcBDITnXRX/3ri0iZh7kgs=; b=YJ08UR41v9BypYMgecAui0p1qXQ3ov58d9937US7Zq06ZloH34/hkHE433ZXD7UxwrNdwzQLLxBm4iInRm0tiDFsHbb4JUk7c8/i/blEUPHcQcm8Gss6z3h4X7wOxLe+/VlW8s9N1MwN7j11BllkR2x9BWp+dGONqLTNJagtIXU= Received: from VI1PR05MB1678.eurprd05.prod.outlook.com (10.165.235.152) by VI1PR05MB3293.eurprd05.prod.outlook.com (10.170.238.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.653.12; Wed, 11 Apr 2018 08:46:49 +0000 Received: from VI1PR05MB1678.eurprd05.prod.outlook.com ([fe80::b8e2:e81f:98a:b6d0]) by VI1PR05MB1678.eurprd05.prod.outlook.com ([fe80::b8e2:e81f:98a:b6d0%14]) with mapi id 15.20.0653.018; Wed, 11 Apr 2018 08:46:49 +0000 From: "Xueming(Steven) Li" To: =?utf-8?B?TsOpbGlvIExhcmFuamVpcm8=?= CC: Shahaf Shuler , "dev@dpdk.org" Thread-Topic: [PATCH v2 05/15] net/mlx5: support tunnel inner checksum offloads Thread-Index: AQHT0NCynUMmpgU8b0KUoIWAUE13o6P6H1cAgAEf51A= Date: Wed, 11 Apr 2018 08:46:49 +0000 Message-ID: References: <20180410133415.189905-1-xuemingl@mellanox.com> <20180410133415.189905-6-xuemingl@mellanox.com> <20180410152750.sgm6qqftzj3vqxiq@laranjeiro-vm.dev.6wind.com> In-Reply-To: <20180410152750.sgm6qqftzj3vqxiq@laranjeiro-vm.dev.6wind.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=xuemingl@mellanox.com; x-originating-ip: [114.83.166.179] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; VI1PR05MB3293; 7:WWSx0W7FgLRuVJovC/dSK1eFREfFuVN0TSBq1X3D9/mlmUZ0DOP/ncwtXTSaNbwVZLhotspA/cFfdZHx60Y63dguxaGfuP8JG1UCA+eG/eZxOPgW8CYPIPuGPfugAmzJLEFz4TJvlYvcts4ffTLC1I5XmSxvtNjO//ncqA1y3Sj394dUz9DsOM+E0jXYEAKlQgWt1QUCV4YeIkjZoDm7vfb7e2l9pT3TLiUY1ARdILUVExK0bf6k02yXGKmx6kL2 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(3008032)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR05MB3293; x-ms-traffictypediagnostic: VI1PR05MB3293: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231221)(944501327)(52105095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123560045)(20161123558120)(6072148)(201708071742011); SRVR:VI1PR05MB3293; BCL:0; PCL:0; RULEID:; SRVR:VI1PR05MB3293; x-forefront-prvs: 0639027A9E x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(346002)(39380400002)(366004)(39860400002)(396003)(13464003)(199004)(189003)(305945005)(76176011)(105586002)(99286004)(68736007)(106356001)(54906003)(55016002)(33656002)(2900100001)(4326008)(81166006)(5250100002)(7696005)(6116002)(8676002)(316002)(8936002)(6436002)(3846002)(5660300001)(25786009)(81156014)(6916009)(97736004)(478600001)(66066001)(6246003)(102836004)(11346002)(26005)(14454004)(3280700002)(9686003)(53546011)(6506007)(7736002)(186003)(446003)(575784001)(476003)(74316002)(486006)(53936002)(2906002)(59450400001)(229853002)(86362001)(3660700001)(21314002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR05MB3293; H:VI1PR05MB1678.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: feUrxMtI8ap6j57IKVXWINOMK9WlonzyyYQtc/4leZVYFU/07F4cSYKGHtyWXwXcPTtQQkua0v1jPjkccsgeyt2HDjQEib8GiOgrWol4v/COouwH4BpM23UPc6MGvUuI5yccSzXxWHqoPbnyWmQtbItPYWOnUJVZZhu4/9RaRLVAQfhRAus+FTMT+yzgJLP9lrfPC7e99Ufkxu8DSqVoIHyZXcM/KQ/MS0REQaoiI7jw/Zy9Kh19tAGxmPfRAFw4Xw6wp3yT0qd64iF7A1xVe9SwDsNkIQ0nf1EN4+BVTviyvZKO0c8Aiyvr9RPLevhtJolWrBrya5K5DjO8VHcZrQEJrbD25qxP7Yh1KUbfsF/47rr0SjdM1W1wNR1WWOR6QV0Q+4XFJc5qnGhIp5qZGzJS50jhwPrGUraMfrCN5ps= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: b5fd0a34-6583-49cd-9ea4-08d59f88c3e6 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: b5fd0a34-6583-49cd-9ea4-08d59f88c3e6 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Apr 2018 08:46:49.2114 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR05MB3293 Subject: Re: [dpdk-dev] [PATCH v2 05/15] net/mlx5: support tunnel inner checksum 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: Wed, 11 Apr 2018 08:46:52 -0000 SGkgTmVsaW8sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTsOpbGlv IExhcmFuamVpcm8gPG5lbGlvLmxhcmFuamVpcm9ANndpbmQuY29tPg0KPiBTZW50OiBUdWVzZGF5 LCBBcHJpbCAxMCwgMjAxOCAxMToyOCBQTQ0KPiBUbzogWHVlbWluZyhTdGV2ZW4pIExpIDx4dWVt aW5nbEBtZWxsYW5veC5jb20+DQo+IENjOiBTaGFoYWYgU2h1bGVyIDxzaGFoYWZzQG1lbGxhbm94 LmNvbT47IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHYyIDA1LzE1XSBuZXQv bWx4NTogc3VwcG9ydCB0dW5uZWwgaW5uZXIgY2hlY2tzdW0NCj4gb2ZmbG9hZHMNCj4gDQo+IE9u IFR1ZSwgQXByIDEwLCAyMDE4IGF0IDA5OjM0OjA1UE0gKzA4MDAsIFh1ZW1pbmcgTGkgd3JvdGU6 DQo+ID4gVGhpcyBwYXRjaCBzdXBwb3J0IHR1bm5lbCBpbm5lciBjaGVja3N1bSBvZmZsb2Fkcy4g QnkgY3JlYXRpbmcgdHVubmVsDQo+ID4gZmxvdywgb25jZSB0dW5uZWwgcGFja2V0IHR5cGUoUlRF X1BUWVBFX1RVTk5FTF94eHgpIGlkZW50aWZpZWQsDQo+IA0KPiBXaGVyZSBpcyB0aGUgY29kZSBj cmVhdGluZyB0aGUgdHVubmVsIGZsb3c/DQoNCkxpdGVyYWwgaXNzdWUsIEknbGwgcmVtb3ZlICJC eSBjcmVhdGluZyB0dW5uZWwgZmxvdyIuIEFsc28sIHRoaXMgcGF0Y2ggc2V0DQphY3R1YWxseSBh IGNsZWFudXAgb2YgdHVubmVsIGNoZWNrc3VtLCBJJ2xsIHVwZGF0ZS4NCg0KPiANCj4gPiBQS1Rf UlhfSVBfQ0tTVU1fWFhYIGFuZCBQS1RfUlhfTDRfQ0tTVU1fWFhYIHJlcHJlc2VudCBjaGVja3N1 bSByZXN1bHQNCj4gPiBvZiBpbm5lciBoZWFkZXJzLCBvdXRlciBMMyBhbmQgTDQgaGVhZGVyIGNo ZWNrc3VtIGFyZSBhbHdheXMgdmFsaWQgYXMNCj4gPiBzb29uIGFzIHR1bm5lbCBpZGVudGlmaWVk LiBJZiBubyB0dW5uZWwgaWRlbnRpZmllZCwNCj4gPiBQS1RfUlhfSVBfQ0tTVU1fWFhYIGFuZCBQ S1RfUlhfTDRfQ0tTVU1fWFhYIHJlcHJlc2VudCBjaGVja3N1bSByZXN1bHQNCj4gPiBvZiBvdXRl ciBMMyBhbmQgTDQgaGVhZGVycy4NCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFh1ZW1pbmcgTGkg PHh1ZW1pbmdsQG1lbGxhbm94LmNvbT4NCj4gPiAtLS0NCj4gPiAgZHJpdmVycy9uZXQvbWx4NS9t bHg1X2Zsb3cuYyB8ICA3ICsrKysrLS0NCj4gPiBkcml2ZXJzL25ldC9tbHg1L21seDVfcnhxLmMg IHwgIDIgLS0gIGRyaXZlcnMvbmV0L21seDUvbWx4NV9yeHR4LmMgfA0KPiA+IDE4ICsrKystLS0t LS0tLS0tLS0tLSAgZHJpdmVycy9uZXQvbWx4NS9tbHg1X3J4dHguaCB8ICAxIC0NCj4gPiAgNCBm aWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQ0KPiA+DQo+ID4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmMNCj4gPiBiL2RyaXZlcnMv bmV0L21seDUvbWx4NV9mbG93LmMgaW5kZXggNjVkN2E5YjYyLi5iM2FkNmRjODUgMTAwNjQ0DQo+ ID4gLS0tIGEvZHJpdmVycy9uZXQvbWx4NS9tbHg1X2Zsb3cuYw0KPiA+ICsrKyBiL2RyaXZlcnMv bmV0L21seDUvbWx4NV9mbG93LmMNCj4gPiBAQCAtODI5LDYgKzgyOSw4IEBAIG1seDVfZmxvd19j b252ZXJ0X2FjdGlvbnMoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsDQo+ID4gIC8qKg0KPiA+ICAg KiBWYWxpZGF0ZSBpdGVtcy4NCj4gPiAgICoNCj4gPiArICogQHBhcmFtIGRldg0KPiA+ICsgKiAg IFBvaW50ZXIgdG8gRXRoZXJuZXQgZGV2aWNlLg0KPiA+ICAgKiBAcGFyYW1baW5dIGl0ZW1zDQo+ ID4gICAqICAgUGF0dGVybiBzcGVjaWZpY2F0aW9uIChsaXN0IHRlcm1pbmF0ZWQgYnkgdGhlIEVO RCBwYXR0ZXJuIGl0ZW0pLg0KPiA+ICAgKiBAcGFyYW1bb3V0XSBlcnJvcg0KPiA+IEBAIC04NDAs NyArODQyLDggQEAgbWx4NV9mbG93X2NvbnZlcnRfYWN0aW9ucyhzdHJ1Y3QgcnRlX2V0aF9kZXYg KmRldiwNCj4gPiAgICogICAwIG9uIHN1Y2Nlc3MsIGEgbmVnYXRpdmUgZXJybm8gdmFsdWUgb3Ro ZXJ3aXNlIGFuZCBydGVfZXJybm8gaXMNCj4gc2V0Lg0KPiA+ICAgKi8NCj4gPiAgc3RhdGljIGlu dA0KPiA+IC1tbHg1X2Zsb3dfY29udmVydF9pdGVtc192YWxpZGF0ZShjb25zdCBzdHJ1Y3QgcnRl X2Zsb3dfaXRlbSBpdGVtc1tdLA0KPiA+ICttbHg1X2Zsb3dfY29udmVydF9pdGVtc192YWxpZGF0 ZShzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiBfX3J0ZV91bnVzZWQsDQo+ID4gKwkJCQkgY29uc3Qg c3RydWN0IHJ0ZV9mbG93X2l0ZW0gaXRlbXNbXSwNCj4gPiAgCQkJCSBzdHJ1Y3QgcnRlX2Zsb3df ZXJyb3IgKmVycm9yLA0KPiA+ICAJCQkJIHN0cnVjdCBtbHg1X2Zsb3dfcGFyc2UgKnBhcnNlcikN Cj4gPiAgew0KPiA+IEBAIC0xMTQ2LDcgKzExNDksNyBAQCBtbHg1X2Zsb3dfY29udmVydChzdHJ1 Y3QgcnRlX2V0aF9kZXYgKmRldiwNCj4gPiAgCXJldCA9IG1seDVfZmxvd19jb252ZXJ0X2FjdGlv bnMoZGV2LCBhY3Rpb25zLCBlcnJvciwgcGFyc2VyKTsNCj4gPiAgCWlmIChyZXQpDQo+ID4gIAkJ cmV0dXJuIHJldDsNCj4gPiAtCXJldCA9IG1seDVfZmxvd19jb252ZXJ0X2l0ZW1zX3ZhbGlkYXRl KGl0ZW1zLCBlcnJvciwgcGFyc2VyKTsNCj4gPiArCXJldCA9IG1seDVfZmxvd19jb252ZXJ0X2l0 ZW1zX3ZhbGlkYXRlKGRldiwgaXRlbXMsIGVycm9yLCBwYXJzZXIpOw0KPiA+ICAJaWYgKHJldCkN Cj4gPiAgCQlyZXR1cm4gcmV0Ow0KPiA+ICAJbWx4NV9mbG93X2NvbnZlcnRfZmluYWxpc2UocGFy c2VyKTsNCj4gDQo+IEkgZG9uJ3QgdW5kZXJzdGFuZCB0aGUgbmVjZXNzaXR5IG9mIHRoZSB0d28g aHVua3MgYWJvdmUuDQo+IA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9tbHg1L21seDVf cnhxLmMgYi9kcml2ZXJzL25ldC9tbHg1L21seDVfcnhxLmMNCj4gPiBpbmRleCAzNTFhY2ZjMGYu LjA3MzczMmUxNiAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL25ldC9tbHg1L21seDVfcnhxLmMN Cj4gPiArKysgYi9kcml2ZXJzL25ldC9tbHg1L21seDVfcnhxLmMNCj4gPiBAQCAtMTA0NSw4ICsx MDQ1LDYgQEAgbWx4NV9yeHFfbmV3KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LCB1aW50MTZfdCBp ZHgsDQo+IHVpbnQxNl90IGRlc2MsDQo+ID4gIAl9DQo+ID4gIAkvKiBUb2dnbGUgUlggY2hlY2tz dW0gb2ZmbG9hZCBpZiBoYXJkd2FyZSBzdXBwb3J0cyBpdC4gKi8NCj4gPiAgCXRtcGwtPnJ4cS5j c3VtID0gISEoY29uZi0+b2ZmbG9hZHMgJiBERVZfUlhfT0ZGTE9BRF9DSEVDS1NVTSk7DQo+ID4g LQl0bXBsLT5yeHEuY3N1bV9sMnR1biA9ICghIShjb25mLT5vZmZsb2FkcyAmIERFVl9SWF9PRkZM T0FEX0NIRUNLU1VNKQ0KPiAmJg0KPiA+IC0JCQkJcHJpdi0+Y29uZmlnLnR1bm5lbF9lbik7DQo+ ID4gIAl0bXBsLT5yeHEuaHdfdGltZXN0YW1wID0gISEoY29uZi0+b2ZmbG9hZHMgJg0KPiBERVZf UlhfT0ZGTE9BRF9USU1FU1RBTVApOw0KPiA+ICAJLyogQ29uZmlndXJlIFZMQU4gc3RyaXBwaW5n LiAqLw0KPiA+ICAJdG1wbC0+cnhxLnZsYW5fc3RyaXAgPSAhIShjb25mLT5vZmZsb2FkcyAmDQo+ ID4gREVWX1JYX09GRkxPQURfVkxBTl9TVFJJUCk7IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9t bHg1L21seDVfcnh0eC5jDQo+ID4gYi9kcml2ZXJzL25ldC9tbHg1L21seDVfcnh0eC5jIGluZGV4 IGQwNjFkZmM4YS4uMjg1YjJkYmYwIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvbmV0L21seDUv bWx4NV9yeHR4LmMNCj4gPiArKysgYi9kcml2ZXJzL25ldC9tbHg1L21seDVfcnh0eC5jDQo+ID4g QEAgLTQxLDcgKzQxLDcgQEAgbWx4NV9yeF9wb2xsX2xlbihzdHJ1Y3QgbWx4NV9yeHFfZGF0YSAq cnhxLCB2b2xhdGlsZQ0KPiBzdHJ1Y3QgbWx4NV9jcWUgKmNxZSwNCj4gPiAgCQkgdWludDE2X3Qg Y3FlX2NudCwgdWludDMyX3QgKnJzc19oYXNoKTsNCj4gPg0KPiA+ICBzdGF0aWMgX19ydGVfYWx3 YXlzX2lubGluZSB1aW50MzJfdA0KPiA+IC1yeHFfY3FfdG9fb2xfZmxhZ3Moc3RydWN0IG1seDVf cnhxX2RhdGEgKnJ4cSwgdm9sYXRpbGUgc3RydWN0DQo+ID4gbWx4NV9jcWUgKmNxZSk7DQo+ID4g K3J4cV9jcV90b19vbF9mbGFncyh2b2xhdGlsZSBzdHJ1Y3QgbWx4NV9jcWUgKmNxZSk7DQo+ID4N Cj4gPiAgdWludDMyX3QgbWx4NV9wdHlwZV90YWJsZVtdIF9fcnRlX2NhY2hlX2FsaWduZWQgPSB7 DQo+ID4gIAlbMHhmZl0gPSBSVEVfUFRZUEVfQUxMX01BU0ssIC8qIExhc3QgZW50cnkgZm9yIGVy cm9yZWQgcGFja2V0LiAqLyBAQA0KPiA+IC0xNzI4LDggKzE3MjgsNiBAQCBtbHg1X3J4X3BvbGxf bGVuKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsDQo+ID4gdm9sYXRpbGUgc3RydWN0IG1seDVf Y3FlICpjcWUsDQo+ID4gIC8qKg0KPiA+ICAgKiBUcmFuc2xhdGUgUlggY29tcGxldGlvbiBmbGFn cyB0byBvZmZsb2FkIGZsYWdzLg0KPiA+ICAgKg0KPiA+IC0gKiBAcGFyYW1baW5dIHJ4cQ0KPiA+ IC0gKiAgIFBvaW50ZXIgdG8gUlggcXVldWUgc3RydWN0dXJlLg0KPiA+ICAgKiBAcGFyYW1baW5d IGNxZQ0KPiA+ICAgKiAgIFBvaW50ZXIgdG8gQ1FFLg0KPiA+ICAgKg0KPiA+IEBAIC0xNzM3LDcg KzE3MzUsNyBAQCBtbHg1X3J4X3BvbGxfbGVuKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsDQo+ IHZvbGF0aWxlIHN0cnVjdCBtbHg1X2NxZSAqY3FlLA0KPiA+ICAgKiAgIE9mZmxvYWQgZmxhZ3Mg KG9sX2ZsYWdzKSBmb3Igc3RydWN0IHJ0ZV9tYnVmLg0KPiA+ICAgKi8NCj4gPiAgc3RhdGljIGlu bGluZSB1aW50MzJfdA0KPiA+IC1yeHFfY3FfdG9fb2xfZmxhZ3Moc3RydWN0IG1seDVfcnhxX2Rh dGEgKnJ4cSwgdm9sYXRpbGUgc3RydWN0DQo+ID4gbWx4NV9jcWUgKmNxZSkNCj4gPiArcnhxX2Nx X3RvX29sX2ZsYWdzKHZvbGF0aWxlIHN0cnVjdCBtbHg1X2NxZSAqY3FlKQ0KPiA+ICB7DQo+ID4g IAl1aW50MzJfdCBvbF9mbGFncyA9IDA7DQo+ID4gIAl1aW50MTZfdCBmbGFncyA9IHJ0ZV9iZV90 b19jcHVfMTYoY3FlLT5oZHJfdHlwZV9ldGMpOw0KPiA+IEBAIC0xNzQ5LDE0ICsxNzQ3LDYgQEAg cnhxX2NxX3RvX29sX2ZsYWdzKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsDQo+IHZvbGF0aWxl IHN0cnVjdCBtbHg1X2NxZSAqY3FlKQ0KPiA+ICAJCVRSQU5TUE9TRShmbGFncywNCj4gPiAgCQkJ ICBNTFg1X0NRRV9SWF9MNF9IRFJfVkFMSUQsDQo+ID4gIAkJCSAgUEtUX1JYX0w0X0NLU1VNX0dP T0QpOw0KPiA+IC0JaWYgKChjcWUtPnBrdF9pbmZvICYgTUxYNV9DUUVfUlhfVFVOTkVMX1BBQ0tF VCkgJiYgKHJ4cS0+Y3N1bV9sMnR1bikpDQo+ID4gLQkJb2xfZmxhZ3MgfD0NCj4gPiAtCQkJVFJB TlNQT1NFKGZsYWdzLA0KPiA+IC0JCQkJICBNTFg1X0NRRV9SWF9MM19IRFJfVkFMSUQsDQo+ID4g LQkJCQkgIFBLVF9SWF9JUF9DS1NVTV9HT09EKSB8DQo+ID4gLQkJCVRSQU5TUE9TRShmbGFncywN Cj4gPiAtCQkJCSAgTUxYNV9DUUVfUlhfTDRfSERSX1ZBTElELA0KPiA+IC0JCQkJICBQS1RfUlhf TDRfQ0tTVU1fR09PRCk7DQo+ID4gIAlyZXR1cm4gb2xfZmxhZ3M7DQo+ID4gIH0NCj4gPg0KPiA+ IEBAIC0xODU1LDggKzE4NDUsOCBAQCBtbHg1X3J4X2J1cnN0KHZvaWQgKmRwZGtfcnhxLCBzdHJ1 Y3QgcnRlX21idWYNCj4gKipwa3RzLCB1aW50MTZfdCBwa3RzX24pDQo+ID4gIAkJCQkJCW1seDVf Zmxvd19tYXJrX2dldChtYXJrKTsNCj4gPiAgCQkJCX0NCj4gPiAgCQkJfQ0KPiA+IC0JCQlpZiAo cnhxLT5jc3VtIHwgcnhxLT5jc3VtX2wydHVuKQ0KPiA+IC0JCQkJcGt0LT5vbF9mbGFncyB8PSBy eHFfY3FfdG9fb2xfZmxhZ3MocnhxLCBjcWUpOw0KPiA+ICsJCQlpZiAocnhxLT5jc3VtKQ0KPiA+ ICsJCQkJcGt0LT5vbF9mbGFncyB8PSByeHFfY3FfdG9fb2xfZmxhZ3MoY3FlKTsNCj4gPiAgCQkJ aWYgKHJ4cS0+dmxhbl9zdHJpcCAmJg0KPiA+ICAJCQkgICAgKGNxZS0+aGRyX3R5cGVfZXRjICYN Cj4gPiAgCQkJICAgICBydGVfY3B1X3RvX2JlXzE2KE1MWDVfQ1FFX1ZMQU5fU1RSSVBQRUQpKSkg eyBkaWZmIC0NCj4gLWdpdA0KPiA+IGEvZHJpdmVycy9uZXQvbWx4NS9tbHg1X3J4dHguaCBiL2Ry aXZlcnMvbmV0L21seDUvbWx4NV9yeHR4LmggaW5kZXgNCj4gPiA2ODY2ZjY4MTguLmQzNTYwNWI1 NSAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL25ldC9tbHg1L21seDVfcnh0eC5oDQo+ID4gKysr IGIvZHJpdmVycy9uZXQvbWx4NS9tbHg1X3J4dHguaA0KPiA+IEBAIC03Nyw3ICs3Nyw2IEBAIHN0 cnVjdCByeHFfemlwIHsNCj4gPiAgLyogUlggcXVldWUgZGVzY3JpcHRvci4gKi8NCj4gPiAgc3Ry dWN0IG1seDVfcnhxX2RhdGEgew0KPiA+ICAJdW5zaWduZWQgaW50IGNzdW06MTsgLyogRW5hYmxl IGNoZWNrc3VtIG9mZmxvYWRpbmcuICovDQo+ID4gLQl1bnNpZ25lZCBpbnQgY3N1bV9sMnR1bjox OyAvKiBTYW1lIGZvciBMMiB0dW5uZWxzLiAqLw0KPiA+ICAJdW5zaWduZWQgaW50IGh3X3RpbWVz dGFtcDoxOyAvKiBFbmFibGUgSFcgdGltZXN0YW1wLiAqLw0KPiA+ICAJdW5zaWduZWQgaW50IHZs YW5fc3RyaXA6MTsgLyogRW5hYmxlIFZMQU4gc3RyaXBwaW5nLiAqLw0KPiA+ICAJdW5zaWduZWQg aW50IGNyY19wcmVzZW50OjE7IC8qIENSQyBtdXN0IGJlIHN1YnRyYWN0ZWQuICovDQo+ID4gLS0N Cj4gPiAyLjEzLjMNCj4gDQo+IFRoaXMgbGFzdCBwYXJ0IHNlZW1zIHRvIGludHJvZHVjZSBhIHJl Z3Jlc3Npb24gYnkgcmVtb3ZpbmcgdGhlIHN1cHBvcnQgZm9yDQo+IHRoZSB0dW5uZWwgY2hlY2tz dW0gb2ZmbG9hZC4NCg0KQ3N1bV9sMnR1biBpcyB1bnVzZWQsIGNoZWNrc3VtIGZvciB0dW5uZWwg YW5kIG5vcm1hbCBwYWNrZXQgY2FuJ3QgYmUgZW5hYmxlZA0Kc2VwYXJhdGVseSwgc28gb25seSBs ZWF2ZSBjc3VtIGZpZWxkLiBUaGUgY29kZSB0aGF0IHVzaW5nIGNzdW1fbDJ0dW4gaXMgDQpkdXBs aWNhdGVkIGNvZGUsIHRoYXQncyB3aHkgSSByZW1vdmVkIGl0IGluIHJ4cV9jcV90b19vbF9mbGFn cygpLg0KDQo+IA0KPiBTZWVtcyB0aGlzIHBhdGNoIGlzIGluY29tcGxldGUgb3Igd3JvbmdseSBl eHBsYWluZWQuDQo+IA0KPiAtLQ0KPiBOw6lsaW8gTGFyYW5qZWlybw0KPiA2V0lORA0K