From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 8C9BAA0AC5 for ; Thu, 2 May 2019 11:15:56 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 5EB1E2BF2; Thu, 2 May 2019 11:15:56 +0200 (CEST) Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40106.outbound.protection.outlook.com [40.107.4.106]) by dpdk.org (Postfix) with ESMTP id 2EA922BD8 for ; Thu, 2 May 2019 11:15:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cgstowernetworks.onmicrosoft.com; s=selector1-cgstowernetworks-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6xbio0xTSMIya6IXlgmtmgAPwxvRtZnvsqQe+DloEHc=; b=XpSGGnVMHOpE8g6gSL4IfwuKYi9Lr97PRJzD1dkHz/ZXxlYCGQHggCQt+8PAVEX0Dy+D4CCsuT4juOH8UENJ4rcbqEG5uqlyrkw+fwNvYI2liSHMCAvHZyzkh+ZHaSpa4MffkxJomzrPTWb0dDJ/TIUC3gtkvxTHJ65Ly6JIfYY= Received: from AM0PR09MB3298.eurprd09.prod.outlook.com (20.179.252.223) by AM0PR09MB3297.eurprd09.prod.outlook.com (20.179.252.222) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1856.10; Thu, 2 May 2019 09:15:53 +0000 Received: from AM0PR09MB3298.eurprd09.prod.outlook.com ([fe80::7c73:cf81:69e3:bc1f]) by AM0PR09MB3298.eurprd09.prod.outlook.com ([fe80::7c73:cf81:69e3:bc1f%7]) with mapi id 15.20.1856.008; Thu, 2 May 2019 09:15:53 +0000 From: Ido Goshen To: "Ananyev, Konstantin" , "Lu, Wenzhuo" CC: "dev@dpdk.org" Thread-Topic: [PATCH] net/ixgbe: 10GBASE-T SFP+ copper support Thread-Index: AQHU+pE4z0Lg95FHIE6XK1eEO4icM6ZLL8JAgAB9qXCAAq7VcIACyCVQgAXSs/CAAGmBYA== Date: Thu, 2 May 2019 09:15:52 +0000 Message-ID: References: <1556105458-91997-1-git-send-email-ido@cgstowernetworks.com> <2601191342CEEE43887BDE71AB9772580148A9B74C@irsmsx105.ger.corp.intel.com> <2601191342CEEE43887BDE71AB9772580148A9C453@irsmsx105.ger.corp.intel.com> <2601191342CEEE43887BDE71AB9772580148A9E24D@irsmsx105.ger.corp.intel.com> In-Reply-To: <2601191342CEEE43887BDE71AB9772580148A9E24D@irsmsx105.ger.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Ido@cgstowernetworks.com; x-originating-ip: [81.218.57.230] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4ce00473-f666-4d41-eb39-08d6cedec6ac x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(7021145)(8989299)(4534185)(7022145)(4603075)(4627221)(201702281549075)(8990200)(7048125)(7024125)(7027125)(7023125)(5600141)(711020)(4605104)(2017052603328)(7193020); SRVR:AM0PR09MB3297; x-ms-traffictypediagnostic: AM0PR09MB3297: x-ms-exchange-purlcount: 3 x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-forefront-prvs: 0025434D2D x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(376002)(136003)(346002)(39830400003)(366004)(13464003)(199004)(189003)(52314003)(33656002)(76116006)(66946007)(73956011)(25786009)(66476007)(55016002)(99286004)(52536014)(68736007)(229853002)(305945005)(7736002)(80792005)(6436002)(66446008)(66556008)(74316002)(64756008)(6246003)(4326008)(26005)(53936002)(476003)(53546011)(11346002)(446003)(186003)(110136005)(102836004)(486006)(66066001)(5660300002)(6506007)(316002)(86362001)(8936002)(8676002)(81156014)(81166006)(508600001)(7696005)(76176011)(14454004)(72206003)(966005)(256004)(6306002)(71200400001)(9686003)(71190400001)(14444005)(2906002)(3846002)(6116002); DIR:OUT; SFP:1102; SCL:1; SRVR:AM0PR09MB3297; H:AM0PR09MB3298.eurprd09.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: cgstowernetworks.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: CwJRIleWpxrKzqPTE/Wki7G7XyuvRB2KrvfaTF1u3sqQd/0JKDRM8y7lGj+jYozqbWpyYN16jojKP7Qm0xxzheUUzeUEW6dSRGgFFHyyXlNWiggh4jYqahsTgKJRw7XZBOK5nIlebe2BZE/RA7bb2KXBMcoxbgDlXjEELNo8JUyZI/6cX8HxOFjStufmCh8eyqoG3nF7+EzhxIuKit0u/6t5uBtzL5UH2q2U9VNIMABjUo9y49Pq+H8cG79seDOUPuoA9ovLRiD2jE79GxMEyN7O3bpca6G+zT6VVAk+N7EwfER1u6knvRAvHtEvqFCirb7aevOqFc5tUGgzbupo7iTeQ+qwwKSDvO+9R7qgOWQt281XPSARjOGhI61J2zehG6zKNsQVq4AeJBMH0smtIdTs/I8e91vs12xB2L0lqbo= Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: cgstowernetworks.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4ce00473-f666-4d41-eb39-08d6cedec6ac X-MS-Exchange-CrossTenant-originalarrivaltime: 02 May 2019 09:15:52.9337 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fc9e9498-07e8-4b82-b4cf-365bba23cbbf X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR09MB3297 Subject: Re: [dpdk-dev] [PATCH] net/ixgbe: 10GBASE-T SFP+ copper support 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" Message-ID: <20190502091552.uYHUMD-x0mG09zymbbXFHW5ddqWHm_DZ0Wlj5YvT9yg@z> DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQW5hbnlldiwgS29uc3Rh bnRpbiA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4NCj4gU2VudDogVGh1cnNkYXksIE1h eSAyLCAyMDE5IDI6NDEgQU0NCj4gVG86IElkbyBHb3NoZW4gPElkb0BjZ3N0b3dlcm5ldHdvcmtz LmNvbT47IEx1LCBXZW56aHVvDQo+IDx3ZW56aHVvLmx1QGludGVsLmNvbT4NCj4gQ2M6IGRldkBk cGRrLm9yZw0KPiBTdWJqZWN0OiBSRTogW1BBVENIXSBuZXQvaXhnYmU6IDEwR0JBU0UtVCBTRlAr IGNvcHBlciBzdXBwb3J0DQo+IA0KPiANCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gPiBGcm9tOiBJZG8gR29zaGVuIFttYWlsdG86SWRvQGNnc3Rvd2VybmV0d29ya3MuY29t XQ0KPiA+IFNlbnQ6IFN1bmRheSwgQXByaWwgMjgsIDIwMTkgNzo1NCBBTQ0KPiA+IFRvOiBBbmFu eWV2LCBLb25zdGFudGluIDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwuY29tPjsgTHUsIFdlbnpo dW8NCj4gPiA8d2Vuemh1by5sdUBpbnRlbC5jb20+DQo+ID4gQ2M6IGRldkBkcGRrLm9yZw0KPiA+ IFN1YmplY3Q6IFJFOiBbUEFUQ0hdIG5ldC9peGdiZTogMTBHQkFTRS1UIFNGUCsgY29wcGVyIHN1 cHBvcnQNCj4gPg0KPiA+DQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ ID4gPiBGcm9tOiBBbmFueWV2LCBLb25zdGFudGluIDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwu Y29tPg0KPiA+ID4gU2VudDogRnJpZGF5LCBBcHJpbCAyNiwgMjAxOSAzOjEzIFBNDQo+ID4gPiBU bzogSWRvIEdvc2hlbiA8SWRvQGNnc3Rvd2VybmV0d29ya3MuY29tPjsgTHUsIFdlbnpodW8NCj4g PiA+IDx3ZW56aHVvLmx1QGludGVsLmNvbT4NCj4gPiA+IENjOiBkZXZAZHBkay5vcmcNCj4gPiA+ IFN1YmplY3Q6IFJFOiBbUEFUQ0hdIG5ldC9peGdiZTogMTBHQkFTRS1UIFNGUCsgY29wcGVyIHN1 cHBvcnQNCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+ID4gPiA+IEZyb206IElkbyBHb3NoZW4g PGlkb0BjZ3N0b3dlcm5ldHdvcmtzLmNvbT4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiAxMEJB U0UtVCBTRlArIGNvcHBlciB0cmFuc2NlaXZlcnMgYmVjb21lIGNoZWFwZXIgYW5kIHBvcHVsYXIN Cj4gPiA+ID4gPiA+IFNvIGZhciB0aG9zZSB3ZXJlIGJsb2NrZWQgYnkgaXhnYmUgYXMg4oCcdW5z dXBwb3J0ZWTigJ0uDQo+ID4gPiA+ID4gPiBlLmcuDQo+ID4gPiA+ID4gPiAJZXRoX2l4Z2JlX2Rl dl9pbml0KCk6IFVuc3VwcG9ydGVkIFNGUCsgTW9kdWxlDQo+ID4gPiA+ID4gPiAJZXRoX2l4Z2Jl X2Rldl9pbml0KCk6IEhhcmR3YXJlIEluaXRpYWxpemF0aW9uIEZhaWx1cmU6IC0xOQ0KPiA+ID4g PiA+ID4gCUVBTDogUmVxdWVzdGVkIGRldmljZSAwMDAwOjBhOjAwLjAgY2Fubm90IGJlIHVzZWQN Cj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBUaGlzIHBhdGNoIGV4cGFuZHMgdGhlIHVzYWdlIG9m IGFsbG93X3Vuc3VwcG9ydGVkX3NmcCB0byBiZQ0KPiA+ID4gPiA+ID4gbW9yZSBnZW5lcmFsIGFu ZCBtYWtlcyBpeGdiZSBtb3JlIHRvbGVyYW50IHRvIHVua25vd24gU0ZQcw0KPiA+ID4gPiA+DQo+ ID4gPiA+ID4NCj4gPiA+ID4gPiBJIGRvbid0IHRoaW5rIGl0IGlzIGEgZ29vZCBpZGVhIHRvIGNo YW5nZSB0aGUgYmFzZSBjb2RlIHRvDQo+ID4gPiA+ID4gYmxpbmRseSBhbGxvdyB1bmtub3duIFNG UHMuDQo+ID4gPiA+ID4gQWdhaW4gaW4gZXRoX2l4Z2JlX2Rldl9pbml0KCkgd2UgZG8gc2V0DQo+ ID4gPiA+ID4gaHctPmFsbG93X3Vuc3VwcG9ydGVkX3NmcCA9IDE7DQo+ID4gPiA+ID4gc28gdGhl IGZ1bmN0aW9uIGJlbG93IHdpbGwgcmV0dXJuIHN1Y2Nlc3MgYW55d2F5LA0KPiA+ID4gPg0KPiA+ ID4gPiB3aGF0J3MgdGhlIHJlYXNvbiB0byBub3QgYWxsb3cgdW5rbm93biBTRlBzPw0KPiA+ID4g PiBhcyBpcyB0aGV5IGFyZSBleHBsaWNpdGx5IGJsb2NrZWQgYW5kIG5vdCB3b3JraW5nIGFueXdh eSwgd2h5IG5vdA0KPiA+ID4gPiBnaXZlDQo+ID4gPiB0aGVtIGEgY2hhbmNlPw0KPiA+ID4NCj4g PiA+IEZyb20gbXkgcGVyc3BlY3RpdmUgdGhlIHF1ZXN0aW9uIHNob3VsZCBiZSBvcHBvc2l0ZTog d2h5IHRvIGFsbG93IGl0Pw0KPiA+ID4gaXhnYmUgYmFzZSBjb2RlIGlzIGRldmVsb3BlZCBhbmQg bWFpbnRhaW5lZCBieSBJbnRlbCBORCB0ZWFtIGZvcg0KPiA+ID4gc2V2ZXJhbCBwbGF0Zm9ybXMu DQo+ID4gPiBJdCBzaG91bGQgYmUgc29tZSBnb29kIHJlYXNvbiB0byBjaGFuZ2UgaXQgaW5zaWRl IERQREsgcHJvamVjdCBvbmx5Lg0KPiA+ID4gQXMgSSBzYWlkLCAgaW4gZXRoX2l4Z2JlX2Rldl9p bml0KCkgd2UgYWxyZWFkeSBzZXQNCj4gPiA+IGh3LT5hbGxvd191bnN1cHBvcnRlZF9zZnAgPSAx LCBzbyB1bmtub3duIHNwZiBzaG91bGQgYmUgYWxsb3dlZCBieQ0KPiBEUERLIGl4Z2JlIFBNRC4N Cj4gPiA+IFNvIHdoYXQgZXhhY3QgcHJvYmxlbSB5b3UgYXJlIHRyeWluZyB0byBzb2x2ZSBoZXJl Pw0KPiA+ID4gS29uc3RhbnRpbg0KPiA+DQo+ID4gVGhlIHByb2JsZW0gaXMgdGhhdCAxMEdCQVNF LVQgY29wcGVyIHRyYW5zY2VpdmVycyBhcmUgbm90IHdvcmtpbmcganVzdA0KPiA+IGJlY2F1c2Ug dGhleSBhcmUgdW5rbm93bg0KPiA+IGh0dHA6Ly93d3cuZW9wdG9saW5rLmNvbS9wcm9kdWN0cy9j b3BwZXItMTBnLXNmcA0KPiA+DQo+ID4gVGhlIGh3LT5hbGxvd191bnN1cHBvcnRlZF9zZnAgaXMg dXNlZCB0b28gbGF0ZSBpbg0KPiA+IGh0dHBzOi8vZ2l0LmRwZGsub3JnL25leHQvZHBkay1uZXh0 LW5ldC1pbnRlbC90cmVlL2RyaXZlcnMvbmV0L2l4Z2JlL2INCj4gPiBhc2UvaXhnYmVfcGh5LmMj bjE1MzAgQW5kIGlmIHdlJ3ZlIGFscmVhZHkgZ290IG91dCBlYXJsaWVyIGluDQo+ID4gaHR0cHM6 Ly9naXQuZHBkay5vcmcvbmV4dC9kcGRrLW5leHQtbmV0LWludGVsL3RyZWUvZHJpdmVycy9uZXQv aXhnYmUvYg0KPiA+IGFzZS9peGdiZV9waHkuYyNuMTUwNw0KPiANCj4gQXMgSSBjYW4gcmVhZCB0 aGUgY29kZSB0aGF0IGNoZWNrIGlzIGZvciAxRyBTRlBzLg0KPiBTbyBpZiB5b3UgZ2V0dGluZyBv dXQgaGVyZSwgdGhlbiBjb21wX2NvZGVzXzEwZyA9PSAwIGhlcmUsIGFuZCBpdCBtZWFucw0KPiB0 aGF0IGdpdmVuIFNGUCBpcyBub3QgcmVjb2duaXplZCBhcyAxMEcgb25lLg0KPiBJIHdvbmRlciB3 aHkgdGhhdCBoYXBwZW5zPw0KPiANCj4gQXMgSSBjYW4gc2VlIGNvbXBfY29kZXNfMTBnIHNob3Vs ZCBiZSBpbml0aWFsaXplZCBhdCBsaW5lIDEzMTQ6DQo+IHN0YXR1cyA9IGh3LT5waHkub3BzLnJl YWRfaTJjX2VlcHJvbShodywNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJWEdCRV9TRkZfMTBHQkVfQ09NUF9DT0RFUywNCj4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29tcF9jb2Rlc18x MGcpOw0KPiANCg0KVGhlIHNhbXBsZXMgSSBoYXZlIChmcm9tIDIgdmVuZG9ycykgcmVhZCAwIGZy b20gdGhlIGVlcHJvbSBJWEdCRV9TRkZfMTBHQkVfQ09NUF9DT0RFUyBvZmZzZXQNCg0KU0ZGLTg0 NzIgc3BlYyBbaHR0cHM6Ly9tZW1iZXJzLnNuaWEub3JnL2RvY3VtZW50L2RsLzI1OTE2XSBkb2Vz bid0IGRlZmluZSBhIGNvZGUgdmFsdWUgZm9yIDEwR0JBU0UtVCANCglUQUJMRSA1LTMgVFJBTlND RUlWRVIgQ09NUExJQU5DRSBDT0RFUwkNCgkxMEcgRXRoZXJuZXQgQ29tcGxpYW5jZSBDb2Rlcw0K CTMgCTcgCTEwRyBCYXNlLUVSIAkgDQoJMyAJNiAJMTBHIEJhc2UtTFJNIA0KCTMgCTUgCTEwRyBC YXNlLUxSIA0KCTMgCTQgCTEwRyBCYXNlLVNSIA0KCUluZmluaWJhbmQgQ29tcGxpYW5jZSBDb2Rl cw0KCTMgCTMgCTFYIFNYDQoJMyAJMiAJMVggTFgNCgkzIAkxIAkxWCBDb3BwZXIgQWN0aXZlDQoJ MyAJMCAJMVggQ29wcGVyIEFjdGl2ZQ0KU2VlbXMgdGhleSBhcmUgcmlnaHQgbm90IHRvIHNldCBh bnkgY29kZSBmcm9tIGFib3ZlLCBubz8NCiANCkRvIHlvdSBrbm93IGFueSAxMEdCQVNFLVQgU0ZQ cyB0aGF0IGRvZXMgd29yaz8gDQpBbnkgaWRlYSB3aGF0IGRvZXMgaXQgcmV0dXJuIGZvciB0aGlz IGZpZWxkPw0KDQo+ID4gVGhlIGRldmljZSBjYW5ub3QgYmUgdXNlZA0KPiA+IFRoZSBwYXRjaCB0 cmllcyB0byBtYWtlIHRoZSBody0+YWxsb3dfdW5zdXBwb3J0ZWRfc2ZwIG1vcmUgZ2VuZXJhbCBh bmQNCj4gPiBpbiBjYXNlIGl0IGlzIHNldCAoYWx3YXlzIGluIGRwZGspIGNoYW5nZSBhbnkgcmV0 dXJuIHN0YXR1cyBvZg0KPiA+IElYR0JFX0VSUl9TRlBfTk9UX1NVUFBPUlRFRCB0byBJWEdCRV9T VUNDRVNTIHdpdGgNCj4gaXhnYmVfcGh5X3Vua25vd24NCj4gPg0KPiA+IE90aGVyIHN1Z2dlc3Rp b25zIGhvdyB0byBtYWtlIDEwR0JBU0UtVCBjb3BwZXIgd29yaz8NCj4gPg0KPiA+ID4NCj4gPiA+ ID4NCj4gPiA+ID4gTW9yZSBpbnB1dHMNCj4gPiA+ID4gMS4gaTQwZSBhbHJlYWR5IGRvZXMgc3Vw cG9ydCBpdCAoSSBkaWRuJ3QgZ28gZGVlcCBpbnRvIGl0IGJ1dCBpdA0KPiA+ID4gPiBqdXN0IHNl ZW1zIGxlc3Mgc3RyaWN0IG9uIGh3X2luaXQpIDIuIGV2ZW4gd2l0aCBpeGdiZSBpdCBjYW4gd29y aywNCj4gPiA+ID4gYmVjYXVzZQ0KPiA+ID4gdW5zdXBwb3J0ZWQgaXMgb25seSBjaGVja2VkIGJ5 IGl4Z2JlX2luaXRfaHcNCj4gPiA+ID4gICAgICBzbyBpZiB0aGUgU0ZQIGlzIGluc2VydGVkIGFm dGVyIHRoZSBhcHAgaGFzIHN0YXJ0ZWQgaXQgZG9lcyB3b3JrDQo+ID4gPiA+ICAgICAga2luZCBv ZiBpbmNvbnNpc3RlbnQNCj4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4g PiA+IFNpZ25lZC1vZmYtYnk6IElkbyBHb3NoZW4gPGlkb0BjZ3N0b3dlcm5ldHdvcmtzLmNvbT4N Cj4gPiA+ID4gPiA+IC0tLQ0KPiA+ID4gPiA+ID4gIGRyaXZlcnMvbmV0L2l4Z2JlL2Jhc2UvaXhn YmVfcGh5LmMgIHwgMjINCj4gPiA+ID4gPiA+ICsrKysrKysrKysrLS0tLS0tLS0tLS0gZHJpdmVy cy9uZXQvaXhnYmUvYmFzZS9peGdiZV94NTUwLmMgfA0KPiA+ID4gPiA+ID4gMyArKysNCj4gPiA+ ID4gPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygt KQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9peGdi ZS9iYXNlL2l4Z2JlX3BoeS5jDQo+ID4gPiA+ID4gPiBiL2RyaXZlcnMvbmV0L2l4Z2JlL2Jhc2Uv aXhnYmVfcGh5LmMNCj4gPiA+ID4gPiA+IGluZGV4IGRkMTE4ZjkuLmZmOTZhZmMgMTAwNjQ0DQo+ ID4gPiA+ID4gPiAtLS0gYS9kcml2ZXJzL25ldC9peGdiZS9iYXNlL2l4Z2JlX3BoeS5jDQo+ID4g PiA+ID4gPiArKysgYi9kcml2ZXJzL25ldC9peGdiZS9iYXNlL2l4Z2JlX3BoeS5jDQo+ID4gPiA+ ID4gPiBAQCAtMTUyNywxOCArMTUyNyw5IEBAIHMzMg0KPiA+ID4gPiA+ID4gaXhnYmVfaWRlbnRp Znlfc2ZwX21vZHVsZV9nZW5lcmljKHN0cnVjdA0KPiA+ID4gPiA+IGl4Z2JlX2h3ICpodykNCj4g PiA+ID4gPiA+ICAJCQlpZiAoaHctPnBoeS50eXBlID09IGl4Z2JlX3BoeV9zZnBfaW50ZWwpIHsN Cj4gPiA+ID4gPiA+ICAJCQkJc3RhdHVzID0gSVhHQkVfU1VDQ0VTUzsNCj4gPiA+ID4gPiA+ICAJ CQl9IGVsc2Ugew0KPiA+ID4gPiA+ID4gLQkJCQlpZiAoaHctPmFsbG93X3Vuc3VwcG9ydGVkX3Nm cCA9PQ0KPiB0cnVlKSB7DQo+ID4gPiA+ID4gPiAtCQkJCQlFV0FSTihodywNCj4gPiA+ID4gPiA+ IC0JCQkJCQkiV0FSTklORzogSW50ZWwgKFIpDQo+ID4gPiA+ID4gTmV0d29yayBDb25uZWN0aW9u cyBhcmUgcXVhbGl0eSB0ZXN0ZWQgdXNpbmcgSW50ZWwgKFIpIEV0aGVybmV0DQo+ID4gPiA+ID4g PiBPcHRpY3MuICINCj4gPiA+ID4gPiA+IC0JCQkJCQkiVXNpbmcgdW50ZXN0ZWQNCj4gbW9kdWxl cyBpcw0KPiA+ID4gPiA+IG5vdCBzdXBwb3J0ZWQgYW5kIG1heSBjYXVzZSB1bnN0YWJsZSBvcGVy YXRpb24gb3IgZGFtYWdlDQo+ID4gPiA+ID4gPiB0byB0aGUgbW9kdWxlIG9yIHRoZSBhZGFwdGVy LiAiDQo+ID4gPiA+ID4gPiAtCQkJCQkJIkludGVsIENvcnBvcmF0aW9uIGlzDQo+IG5vdA0KPiA+ ID4gPiA+IHJlc3BvbnNpYmxlIGZvciBhbnkgaGFybSBjYXVzZWQgYnkgdXNpbmcgdW50ZXN0ZWQg bW9kdWxlcy5cbiIpOw0KPiA+ID4gPiA+ID4gLQkJCQkJc3RhdHVzID0gSVhHQkVfU1VDQ0VTUzsN Cj4gPiA+ID4gPiA+IC0JCQkJfSBlbHNlIHsNCj4gPiA+ID4gPiA+IC0JCQkJCURFQlVHT1VUKCJT RlArIG1vZHVsZQ0KPiBub3QNCj4gPiA+ID4gPiBzdXBwb3J0ZWRcbiIpOw0KPiA+ID4gPiA+ID4g LQkJCQkJaHctPnBoeS50eXBlID0NCj4gPiA+ID4gPiA+ICsJCQkJaHctPnBoeS50eXBlID0NCj4g PiA+ID4gPiA+DQo+IAlpeGdiZV9waHlfc2ZwX3Vuc3VwcG9ydGVkOw0KPiA+ID4gPiA+ID4gLQkJ CQkJc3RhdHVzID0NCj4gPiA+ID4gPiBJWEdCRV9FUlJfU0ZQX05PVF9TVVBQT1JURUQ7DQo+ID4g PiA+ID4gPiAtCQkJCX0NCj4gPiA+ID4gPiA+ICsJCQkJc3RhdHVzID0NCj4gSVhHQkVfRVJSX1NG UF9OT1RfU1VQUE9SVEVEOw0KPiA+ID4gPiA+ID4gIAkJCX0NCj4gPiA+ID4gPiA+ICAJCX0gZWxz ZSB7DQo+ID4gPiA+ID4gPiAgCQkJc3RhdHVzID0gSVhHQkVfU1VDQ0VTUzsNCj4gPiA+ID4gPiA+ IEBAIC0xNTQ2LDYgKzE1MzcsMTUgQEAgczMyDQo+ID4gPiA+ID4gPiBpeGdiZV9pZGVudGlmeV9z ZnBfbW9kdWxlX2dlbmVyaWMoc3RydWN0DQo+ID4gPiA+ID4gaXhnYmVfaHcgKmh3KQ0KPiA+ID4g PiA+ID4gIAl9DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gIG91dDoNCj4gPiA+ID4gPiA+ICsJ aWYgKHN0YXR1cyA9PSBJWEdCRV9FUlJfU0ZQX05PVF9TVVBQT1JURUQgJiYNCj4gPiA+ID4gPiA+ ICsJCQlody0+YWxsb3dfdW5zdXBwb3J0ZWRfc2ZwKSB7DQo+ID4gPiA+ID4gPiArCQlQTURfSU5J VF9MT0coV0FSTklORywNCj4gPiA+ID4gPiA+ICsJCQkJIldBUk5JTkc6IEludGVsIChSKSBOZXR3 b3JrDQo+IENvbm5lY3Rpb25zDQo+ID4gPiA+ID4gYXJlIHF1YWxpdHkgdGVzdGVkIHVzaW5nIElu dGVsIChSKSBFdGhlcm5ldCBPcHRpY3MuICINCj4gPiA+ID4gPiA+ICsJCQkJIlVzaW5nIHVudGVz dGVkIG1vZHVsZXMgaXMgbm90DQo+IHN1cHBvcnRlZA0KPiA+ID4gPiA+IGFuZCBtYXkgY2F1c2Ug dW5zdGFibGUNCj4gPiA+ID4gPiA+ICtvcGVyYXRpb24gb3IgZGFtYWdlIHRvIHRoZSBtb2R1bGUg b3INCj4gPiA+ID4gPiA+IHRoZSBhZGFwdGVyLiAiDQo+ID4gPiA+ID4gPiArCQkJCSJJbnRlbCBD b3Jwb3JhdGlvbiBpcyBub3QgcmVzcG9uc2libGUNCj4gZm9yIGFueQ0KPiA+ID4gPiA+IGhhcm0g Y2F1c2VkIGJ5IHVzaW5nIHVudGVzdGVkIG1vZHVsZXMuXG4iKTsNCj4gPiA+ID4gPiA+ICsJCWh3 LT5waHkudHlwZSA9IGl4Z2JlX3BoeV91bmtub3duOw0KPiA+ID4gPiA+ID4gKwkJc3RhdHVzID0g SVhHQkVfU1VDQ0VTUzsNCj4gPiA+ID4gPiA+ICsJfQ0KPiA+ID4gPiA+ID4gIAlyZXR1cm4gc3Rh dHVzOw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICBlcnJfcmVhZF9pMmNfZWVwcm9tOg0KPiA+ ID4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2l4Z2JlL2Jhc2UvaXhnYmVfeDU1MC5j DQo+ID4gPiA+ID4gPiBiL2RyaXZlcnMvbmV0L2l4Z2JlL2Jhc2UvaXhnYmVfeDU1MC5jDQo+ID4g PiA+ID4gPiBpbmRleCBhOTIwYTE0Li4yMTJkOWEwIDEwMDY0NA0KPiA+ID4gPiA+ID4gLS0tIGEv ZHJpdmVycy9uZXQvaXhnYmUvYmFzZS9peGdiZV94NTUwLmMNCj4gPiA+ID4gPiA+ICsrKyBiL2Ry aXZlcnMvbmV0L2l4Z2JlL2Jhc2UvaXhnYmVfeDU1MC5jDQo+ID4gPiA+ID4gPiBAQCAtMTUzOSw2 ICsxNTM5LDkgQEAgU1RBVElDIHMzMg0KPiA+ID4gPiA+IGl4Z2JlX3N1cHBvcnRlZF9zZnBfbW9k dWxlc19YNTUwZW0oc3RydWN0IGl4Z2JlX2h3ICpodywgYm9vbA0KPiA+ID4gPiA+ICpsaW5lYXIp DQo+ID4gPiA+ID4gPiAgCQkqbGluZWFyID0gZmFsc2U7DQo+ID4gPiA+ID4gPiAgCQlicmVhazsN Cj4gPiA+ID4gPiA+ICAJY2FzZSBpeGdiZV9zZnBfdHlwZV91bmtub3duOg0KPiA+ID4gPiA+ID4g KwkJaWYgKGh3LT5hbGxvd191bnN1cHBvcnRlZF9zZnApDQo+ID4gPiA+ID4gPiArCQkJcmV0dXJu IElYR0JFX1NVQ0NFU1M7DQo+ID4gPiA+ID4gPiArCQkvKiBmYWxsIHRocm91Z2ggKi8NCj4gPiA+ ID4gPiA+ICAJY2FzZSBpeGdiZV9zZnBfdHlwZV8xZ19jdV9jb3JlMDoNCj4gPiA+ID4gPiA+ICAJ Y2FzZSBpeGdiZV9zZnBfdHlwZV8xZ19jdV9jb3JlMToNCj4gPiA+ID4gPiA+ICAJZGVmYXVsdDoN Cj4gPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gPiAxLjkuMQ0KDQo=