From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <helin.zhang@intel.com>
Received: from mga11.intel.com (mga11.intel.com [192.55.52.93])
 by dpdk.org (Postfix) with ESMTP id 402D85954
 for <dev@dpdk.org>; Tue, 25 Aug 2015 21:16:33 +0200 (CEST)
Received: from orsmga003.jf.intel.com ([10.7.209.27])
 by fmsmga102.fm.intel.com with ESMTP; 25 Aug 2015 12:16:32 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.17,747,1437462000"; d="scan'208";a="632081949"
Received: from pgsmsx106.gar.corp.intel.com ([10.221.44.98])
 by orsmga003.jf.intel.com with ESMTP; 25 Aug 2015 12:16:30 -0700
Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by
 PGSMSX106.gar.corp.intel.com (10.221.44.98) with Microsoft SMTP Server (TLS)
 id 14.3.224.2; Wed, 26 Aug 2015 03:16:29 +0800
Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.210]) by
 SHSMSX152.ccr.corp.intel.com ([169.254.6.182]) with mapi id 14.03.0224.002;
 Wed, 26 Aug 2015 03:16:28 +0800
From: "Zhang, Helin" <helin.zhang@intel.com>
To: Vlad Zolotarov <vladz@cloudius-systems.com>
Thread-Topic: [dpdk-dev] [PATCH v1] ixgbe_pmd: forbid tx_rs_thresh above 1
 for all NICs but 82598
Thread-Index: AQHQ1fLetlF10YIG/kWzzVYFXNo2ap4KX8ywgAAU3oCAB4kdgIAARtIAgAFYG3CACXpWUP//gCGAgACHY7D//33bgIAAi1og
Date: Tue, 25 Aug 2015 19:16:27 +0000
Message-ID: <F35DEAC7BCE34641BA9FAC6BCA4A12E70A8E66A4@SHSMSX104.ccr.corp.intel.com>
References: <1439489195-31553-1-git-send-email-vladz@cloudius-systems.com>
 <F35DEAC7BCE34641BA9FAC6BCA4A12E70A8E1AE6@SHSMSX104.ccr.corp.intel.com>
 <55CD7EA5.6060100@cloudius-systems.com>
 <6A0DE07E22DDAD4C9103DF62FEBC0909D3E116@shsmsx102.ccr.corp.intel.com>
 <CAOYyTHaymoNj92+_F1NaP6vPmGO9bdJV7VY7V052RrR_NjRUPw@mail.gmail.com>
 <F35DEAC7BCE34641BA9FAC6BCA4A12E70A8E3E98@SHSMSX104.ccr.corp.intel.com>
 <F35DEAC7BCE34641BA9FAC6BCA4A12E70A8E65FF@SHSMSX104.ccr.corp.intel.com>
 <CAOYyTHZ062SGrshnpFKnm6yap-GiQRdQ2yaB9-UcOotOXqRYjA@mail.gmail.com>
 <F35DEAC7BCE34641BA9FAC6BCA4A12E70A8E6668@SHSMSX104.ccr.corp.intel.com>
 <55DCB975.2030000@cloudius-systems.com>
In-Reply-To: <55DCB975.2030000@cloudius-systems.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.239.127.40]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v1] ixgbe_pmd: forbid tx_rs_thresh above 1
 for all NICs but 82598
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Tue, 25 Aug 2015 19:16:34 -0000

DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogVmxhZCBab2xvdGFyb3Yg
W21haWx0bzp2bGFkekBjbG91ZGl1cy1zeXN0ZW1zLmNvbV0NCj4gU2VudDogVHVlc2RheSwgQXVn
dXN0IDI1LCAyMDE1IDExOjUzIEFNDQo+IFRvOiBaaGFuZywgSGVsaW4NCj4gQ2M6IEx1LCBXZW56
aHVvOyBkZXZAZHBkay5vcmcNCj4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIHYxXSBp
eGdiZV9wbWQ6IGZvcmJpZCB0eF9yc190aHJlc2ggYWJvdmUgMSBmb3INCj4gYWxsIE5JQ3MgYnV0
IDgyNTk4DQo+IA0KPiANCj4gDQo+IE9uIDA4LzI1LzE1IDIxOjQzLCBaaGFuZywgSGVsaW4gd3Jv
dGU6DQo+ID4NCj4gPiBIaSBWbGFkDQo+ID4NCj4gPiBJIHRoaW5rIHRoaXMgY291bGQgcG9zc2li
bHkgYmUgdGhlIHJvb3QgY2F1c2Ugb2YgeW91ciBUWCBoYW5nIGlzc3VlLg0KPiA+IFBsZWFzZSB0
cnkgdG8gbGltaXQgdGhlIG51bWJlciB0byA4IG9yIGxlc3MsIGFuZCB0aGVuIHNlZSBpZiB0aGUg
aXNzdWUNCj4gPiB3aWxsIHN0aWxsIGJlIHRoZXJlIG9yIG5vdD8NCj4gPg0KPiANCj4gSGVsaW4s
IHRoZSBpc3N1ZSBoYXMgYmVlbiBzZWVuIG9uIHg1NDAgZGV2aWNlcy4gUGxzLiwgc2VlIGEgY2hh
cHRlcg0KPiA3LjIuMS4xIG9mIHg1NDAgZGV2aWNlcyBzcGVjOg0KPiANCj4gQSBwYWNrZXQgKG9y
IG11bHRpcGxlIHBhY2tldHMgaW4gdHJhbnNtaXQgc2VnbWVudGF0aW9uKSBjYW4gc3BhbiBhbnkg
bnVtYmVyIG9mDQo+IGJ1ZmZlcnMgKGFuZCB0aGVpciBkZXNjcmlwdG9ycykgdXAgdG8gYSBsaW1p
dCBvZiA0MCBtaW51cyBXVEhSRVNIIG1pbnVzIDIgKHNlZQ0KPiBTZWN0aW9uIDcuMi4zLjMgZm9y
IFR4IFJpbmcgZGV0YWlscyBhbmQgc2VjdGlvbiBTZWN0aW9uIDcuMi4zLjUuMSBmb3IgV1RIUkVT
SA0KPiBkZXRhaWxzKS4gRm9yIGJlc3QgcGVyZm9ybWFuY2UgaXQgaXMgcmVjb21tZW5kZWQgdG8g
bWluaW1pemUgdGhlIG51bWJlciBvZg0KPiBidWZmZXJzIGFzIHBvc3NpYmxlLg0KPiANCj4gQ291
bGQgdSwgcGxzLiwgY2xhcmlmeSB3aHkgZG8gdSB0aGluayB0aGF0IHRoZSBtYXhpbXVtIG51bWJl
ciBvZiBkYXRhIGJ1ZmZlcnMgaXMNCj4gbGltaXRlZCBieSA4Pw0KT0ssIGk0MGUgaGFyZHdhcmUg
aXMgOCwgc28gSSdkIGFzc3VtZSB4NTQwIGNvdWxkIGhhdmUgYSBzaW1pbGFyIG9uZS4gWWVzLCBp
biB5b3VyIGNhc2UsDQp0aGUgbGltaXQgY291bGQgYmUgYXJvdW5kIDM4LCByaWdodD8NCkNvdWxk
IHlvdSBoZWxwIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyBubyBwYWNrZXQgdG8gYmUgdHJhbnNtaXR0
ZWQgdXNlcyBtb3JlIHRoYW4NCjM4IGRlc2NyaXB0b3JzPw0KSSBoZWFyZCB0aGF0IHRoZXJlIGlz
IGEgc2ltaWxhciBoYW5nIGlzc3VlIG9uIFg3MTAgaWYgdXNpbmcgbW9yZSB0aGFuIDggZGVzY3Jp
cHRvcnMgZm9yDQphIHNpbmdsZSBwYWNrZXQuIEkgYW0gd29uZGVyaW5nIGlmIHRoZSBpc3N1ZSBp
cyBzaW1pbGFyIG9uIHg1NDAuDQoNClJlZ2FyZHMsDQpIZWxpbg0KDQo+IA0KPiB0aGFua3MsDQo+
IHZsYWQNCj4gDQo+ID4gSXQgZG9lcyBub3QgaGF2ZSBhbnkgY2hlY2sgZm9yIHRoZSBudW1iZXIg
b2YgZGVzY3JpcHRvcnMgdG8gYmUgdXNlZA0KPiA+IGZvciBhIHNpbmdsZSBwYWNrZXQsIGFuZCBp
dCByZWxpZXMgb24gdGhlIHVzZXJzIHRvIGdpdmUgY29ycmVjdCBtYnVmDQo+ID4gY2hhaW5zLg0K
PiA+DQo+ID4gV2UgbWF5IG5lZWQgYSBjaGVjayBvZiB0aGlzIHNvbWV3aGVyZS4gT2YgY2F1c2Ug
dGhlIHBvaW50IHlvdQ0KPiA+IGluZGljYXRlZCB3ZSBhbHNvIG5lZWQgdG8gY2FyZWZ1bGx5IGlu
dmVzdGlnYXRlIG9yIGZpeC4NCj4gPg0KPiA+IFJlZ2FyZHMsDQo+ID4NCj4gPiBIZWxpbg0KPiA+
DQo+ID4gKkZyb206KlZsYWRpc2xhdiBab2xvdGFyb3YgW21haWx0bzp2bGFkekBjbG91ZGl1cy1z
eXN0ZW1zLmNvbV0NCj4gPiAqU2VudDoqIFR1ZXNkYXksIEF1Z3VzdCAyNSwgMjAxNSAxMTozNCBB
TQ0KPiA+ICpUbzoqIFpoYW5nLCBIZWxpbg0KPiA+ICpDYzoqIEx1LCBXZW56aHVvOyBkZXZAZHBk
ay5vcmcNCj4gPiAqU3ViamVjdDoqIFJFOiBbZHBkay1kZXZdIFtQQVRDSCB2MV0gaXhnYmVfcG1k
OiBmb3JiaWQgdHhfcnNfdGhyZXNoDQo+ID4gYWJvdmUgMSBmb3IgYWxsIE5JQ3MgYnV0IDgyNTk4
DQo+ID4NCj4gPg0KPiA+IE9uIEF1ZyAyNSwgMjAxNSAyMToxNCwgIlpoYW5nLCBIZWxpbiIgPGhl
bGluLnpoYW5nQGludGVsLmNvbQ0KPiA+IDxtYWlsdG86aGVsaW4uemhhbmdAaW50ZWwuY29tPj4g
d3JvdGU6DQo+ID4gPg0KPiA+ID4gSGkgVmxhZA0KPiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4g
SW4gYWRkaXRpb24sIEnigJlkIGRvdWJsZSBjaGVjayB3aXRoIHlvdSB3aGF04oCZcyB0aGUgbWF4
aW11bSBudW1iZXIgb2YNCj4gPiBkZXNjcmlwdG9ycyB3b3VsZCBiZSB1c2VkIGZvciBhIHNpbmds
ZSBwYWNrZXQgdHJhbnNtaXR0aW5nPw0KPiA+ID4NCj4gPiA+IERhdGFzaGVldCBzYWlkIHRoYXQg
aXQgc3VwcG9ydHMgdXAgdG8gOC4gSSBhbSB3b25kZXJpbmcgaWYgbW9yZSB0aGFuDQo+ID4gOCB3
ZXJlIHVzZWQgaW4geW91ciBjYXNlPw0KPiA+DQo+ID4gSWYgbWVtb3J5IHNlcnZlcyBtZSB3ZWxs
IHRoZSBtYXhpbXVtIG51bWJlciBvZiBkYXRhIGRlc2NyaXB0b3JzIHBlcg0KPiA+IHNpbmdsZSB4
bWl0IHBhY2tldCBpcyA0MCBtaW51cyAyIG1pbnVzIFdUSFJFU0guIFNpbmNlIFdUSFJFU0ggaW4g
RFBESw0KPiA+IGlzIGFsd2F5cyB6ZXJvIGl0IGdpdmVzIHVzIDM4IHNlZ21lbnRzLiBXZSBsaW1p
dCB0aGVtIGJ5IDMzLg0KPiA+DQo+ID4gPg0KPiA+ID4gVGhhbmsgeW91IHZlcnkgbXVjaCENCj4g
PiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+IFJlZ2FyZHMsDQo+ID4gPg0KPiA+ID4gSGVsaW4NCj4g
PiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+IEZyb206IFpoYW5nLCBIZWxpbg0KPiA+ID4gU2VudDog
V2VkbmVzZGF5LCBBdWd1c3QgMTksIDIwMTUgMTA6MjkgQU0NCj4gPiA+IFRvOiBWbGFkaXNsYXYg
Wm9sb3Rhcm92DQo+ID4gPiBDYzogTHUsIFdlbnpodW87IGRldkBkcGRrLm9yZyA8bWFpbHRvOmRl
dkBkcGRrLm9yZz4NCj4gPiA+DQo+ID4gPiBTdWJqZWN0OiBSRTogW2RwZGstZGV2XSBbUEFUQ0gg
djFdIGl4Z2JlX3BtZDogZm9yYmlkIHR4X3JzX3RocmVzaA0KPiA+IGFib3ZlIDEgZm9yIGFsbCBO
SUNzIGJ1dCA4MjU5OA0KPiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4gSGkgVmxhZA0KPiA+ID4N
Cj4gPiA+DQo+ID4gPg0KPiA+ID4gVGhhbmsgeW91IHZlcnkgbXVjaCBmb3IgdGhlIHBhdGNoZXMh
IEdpdmUgbWUgYSBmZXcgbW9yZSB0aW1lIHRvDQo+ID4gZG91YmxlIGNoZWNrIHdpdGggbW9yZSBn
dXlzLCBhbmQgcG9zc2libHkgaGFyZHdhcmUgZXhwZXJ0cy4NCj4gPiA+DQo+ID4gPg0KPiA+ID4N
Cj4gPiA+IFJlZ2FyZHMsDQo+ID4gPg0KPiA+ID4gSGVsaW4NCj4gPiA+DQo+ID4gPg0KPiA+ID4N
Cj4gPiA+IEZyb206IFZsYWRpc2xhdiBab2xvdGFyb3YgW21haWx0bzp2bGFkekBjbG91ZGl1cy1z
eXN0ZW1zLmNvbQ0KPiA+IDxtYWlsdG86dmxhZHpAY2xvdWRpdXMtc3lzdGVtcy5jb20+XQ0KPiA+
ID4gU2VudDogVHVlc2RheSwgQXVndXN0IDE4LCAyMDE1IDk6NTYgUE0NCj4gPiA+IFRvOiBMdSwg
V2Vuemh1bw0KPiA+ID4gQ2M6IGRldkBkcGRrLm9yZyA8bWFpbHRvOmRldkBkcGRrLm9yZz47IFpo
YW5nLCBIZWxpbg0KPiA+ID4gU3ViamVjdDogUkU6IFtkcGRrLWRldl0gW1BBVENIIHYxXSBpeGdi
ZV9wbWQ6IGZvcmJpZCB0eF9yc190aHJlc2gNCj4gPiBhYm92ZSAxIGZvciBhbGwgTklDcyBidXQg
ODI1OTgNCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+DQo+ID4gPiBPbiBBdWcgMTksIDIwMTUg
MDM6NDIsICJMdSwgV2Vuemh1byIgPHdlbnpodW8ubHVAaW50ZWwuY29tDQo+ID4gPG1haWx0bzp3
ZW56aHVvLmx1QGludGVsLmNvbT4+IHdyb3RlOg0KPiA+ID4gPg0KPiA+ID4gPiBIaSBIZWxpbiwN
Cj4gPiA+ID4NCj4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiA+
IEZyb206IGRldiBbbWFpbHRvOmRldi1ib3VuY2VzQGRwZGsub3JnDQo+ID4gPG1haWx0bzpkZXYt
Ym91bmNlc0BkcGRrLm9yZz5dIE9uIEJlaGFsZiBPZiBWbGFkIFpvbG90YXJvdg0KPiA+ID4gPiA+
IFNlbnQ6IEZyaWRheSwgQXVndXN0IDE0LCAyMDE1IDE6MzggUE0NCj4gPiA+ID4gPiBUbzogWmhh
bmcsIEhlbGluOyBkZXZAZHBkay5vcmcgPG1haWx0bzpkZXZAZHBkay5vcmc+DQo+ID4gPiA+ID4g
U3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIHYxXSBpeGdiZV9wbWQ6IGZvcmJpZA0KPiA+
IHR4X3JzX3RocmVzaCBhYm92ZSAxIGZvcg0KPiA+ID4gPiA+IGFsbCBOSUNzIGJ1dCA4MjU5OA0K
PiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IE9uIDA4LzEzLzE1IDIz
OjI4LCBaaGFuZywgSGVsaW4gd3JvdGU6DQo+ID4gPiA+ID4gPiBIaSBWbGFkDQo+ID4gPiA+ID4g
Pg0KPiA+ID4gPiA+ID4gSSBkb24ndCB0aGluayB0aGUgY2hhbmdlcyBhcmUgbmVlZGVkLiBJdCBz
YXlzIGluIGRhdGFzaGVldA0KPiA+IHRoYXQgdGhlIFJTDQo+ID4gPiA+ID4gPiBiaXQgc2hvdWxk
IGJlIHNldCBvbiB0aGUgbGFzdCBkZXNjcmlwdG9yIG9mIGV2ZXJ5IHBhY2tldCwgT05MWQ0KPiA+
IFdIRU4NCj4gPiA+ID4gPiBUWERDVEwuV1RIUkVTSCBlcXVhbHMgdG8gWkVSTy4NCj4gPiA+ID4g
Pg0KPiA+ID4gPiA+IE9mIGNvdXJzZSBpdCdzIG5lZWRlZCEgU2VlIGJlbG93Lg0KPiA+ID4gPiA+
IEV4YWN0bHkgdGhlIHNhbWUgc3BlYyBhIGZldyBsaW5lcyBhYm92ZSB0aGUgcGxhY2UgdSd2ZSBq
dXN0DQo+ID4gcXVvdGVkIHN0YXRlczoNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICJTb2Z0d2FyZSBz
aG91bGQgbm90IHNldCB0aGUgUlMgYml0IHdoZW4gVFhEQ1RMLldUSFJFU0ggaXMNCj4gPiBncmVh
dGVyIHRoYW4NCj4gPiA+ID4gPiB6ZXJvLiINCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEFuZCBzaW5j
ZSBhbGwgdGhyZWUgKDMpIGl4Z2JlIHhtaXQgY2FsbGJhY2tzIGFyZSB1dGlsaXppbmcgUlMNCj4g
PiBiaXQgbm90YXRpb24gaXhnYmUgUE1EDQo+ID4gPiA+ID4gaXMgYWN0dWFsbHkgbm90IHN1cHBv
cnRpbmcgYW55IHZhbHVlIG9mIFdUSFJFU0ggZGlmZmVyZW50IGZyb20gemVyby4NCj4gPiA+ID4g
SSB0aGluayBWbGFkIGlzIHJpZ2h0LiBXZSBuZWVkIHRvIGZpeCB0aGlzIGlzc3VlLiBBbnkgc3Vn
Z2VzdGlvbj8NCj4gPiBJZiBub3QsIEknZCBsaWtlIHRvIGFjayB0aGlzIHBhdGNoLg0KPiA+ID4N
Cj4gPiA+IFBscy4sIG5vdGUgdGhhdCB0aGVyZSBpcyBhIHYyIG9mIHRoaXMgcGF0Y2ggb24gdGhl
IGxpc3QuIEkgZm9yZ290IHRvDQo+ID4gcGF0Y2ggaXhnYmV2Zl9kZXZfaW5mb19nZXQoKSBpbiB2
MS4NCj4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBS
ZWdhcmRzLA0KPiA+ID4gPiA+ID4gSGVsaW4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPj4gLS0t
LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+PiBGcm9tOiBWbGFkIFpvbG90YXJv
diBbbWFpbHRvOnZsYWR6QGNsb3VkaXVzLXN5c3RlbXMuY29tDQo+ID4gPG1haWx0bzp2bGFkekBj
bG91ZGl1cy1zeXN0ZW1zLmNvbT5dDQo+ID4gPiA+ID4gPj4gU2VudDogVGh1cnNkYXksIEF1Z3Vz
dCAxMywgMjAxNSAxMTowNyBBTQ0KPiA+ID4gPiA+ID4+IFRvOiBkZXZAZHBkay5vcmcgPG1haWx0
bzpkZXZAZHBkay5vcmc+DQo+ID4gPiA+ID4gPj4gQ2M6IFpoYW5nLCBIZWxpbjsgQW5hbnlldiwg
S29uc3RhbnRpbjsNCj4gPiBhdmlAY2xvdWRpdXMtc3lzdGVtcy5jb20gPG1haWx0bzphdmlAY2xv
dWRpdXMtc3lzdGVtcy5jb20+OyBWbGFkDQo+ID4gPiA+ID4gPj4gWm9sb3Rhcm92DQo+ID4gPiA+
ID4gPj4gU3ViamVjdDogW2RwZGstZGV2XSBbUEFUQ0ggdjFdIGl4Z2JlX3BtZDogZm9yYmlkIHR4
X3JzX3RocmVzaA0KPiA+IGFib3ZlIDEgZm9yDQo+ID4gPiA+ID4gYWxsDQo+ID4gPiA+ID4gPj4g
TklDcyBidXQgODI1OTgNCj4gPiA+ID4gPiA+Pg0KPiA+ID4gPiA+ID4+IEFjY29yZGluZyB0byA4
MjU5OSBhbmQgeDU0MCBIVyBzcGVjaWZpY2F0aW9ucyBSUyBiaXQgKm11c3QqDQo+ID4gYmUgc2V0
IGluIHRoZQ0KPiA+ID4gPiA+IGxhc3QNCj4gPiA+ID4gPiA+PiBkZXNjcmlwdG9yIG9mICpldmVy
eSogcGFja2V0Lg0KPiA+ID4gPiA+ID4gVGhlcmUgaXMgYSBjb25kaXRpb24gdGhhdCBpZiBUWERD
VEwuV1RIUkVTSCBlcXVhbCB0byB6ZXJvLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gUmlnaHQgYW5k
IGl4Z2JlIFBNRCByZXF1aXJlcyB0aGlzIGNvbmRpdGlvbiB0byBiZSBmdWxmaWxsZWQgaW4NCj4g
PiBvcmRlciB0bw0KPiA+ID4gPiA+IGZ1bmN0aW9uLiBTZWUgYWJvdmUuDQo+ID4gPiA+ID4NCj4g
PiA+ID4gPiA+DQo+ID4gPiA+ID4gPj4gVGhpcyBwYXRjaCBmaXhlcyB0aGUgVHggaGFuZyB3ZSB3
ZXJlIGNvbnN0YW50bHkgaGl0dGluZyB3aXRoDQo+ID4gYSBzZWFzdGFyLWJhc2VkDQo+ID4gPiA+
ID4gPj4gYXBwbGljYXRpb24gb24geDU0MCBOSUMuDQo+ID4gPiA+ID4gPiBDb3VsZCB5b3UgaGVs
cCB0byBzaGFyZSB3aXRoIHVzIGhvdyB0byByZXByb2R1Y2UgdGhlIHR4IGhhbmcNCj4gPiBpc3N1
ZSwgd2l0aCB1c2luZw0KPiA+ID4gPiA+ID4gdHlwaWNhbCBEUERLIGV4YW1wbGVzPw0KPiA+ID4g
PiA+DQo+ID4gPiA+ID4gU29ycnkuIEknbSBub3QgdmVyeSBmYW1pbGlhciB3aXRoIHRoZSB0eXBp
Y2FsIERQREsgZXhhbXBsZXMgdG8NCj4gPiBoZWxwIHUNCj4gPiA+ID4gPiBoZXJlLiBIb3dldmVy
IHRoaXMgaXMgcXVpdGUgaXJyZWxldmFudCBzaW5jZSB3aXRob3V0IHRoaXMgdGhpcw0KPiA+ID4g
PiA+IHBhdGNoIGl4Z2JlIFBNRCBvYnZpb3VzbHkgYWJ1c2VzIHRoZSBIVyBzcGVjIGFzIGhhcyBi
ZWVuIGV4cGxhaW5lZA0KPiBhYm92ZS4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IFdlIHNhdyB0aGUg
aXNzdWUgd2hlbiB1IHN0cmVzc2VkIHRoZSB4bWl0IHBhdGggd2l0aCBhIGxvdCBvZg0KPiA+ID4g
PiA+IGhpZ2hseSBmcmFnbWVudGVkIFRDUCBmcmFtZXMgKHBhY2tldHMgd2l0aCB1cCB0byAzMyBm
cmFnbWVudHMNCj4gPiA+ID4gPiB3aXRoDQo+ID4gbm9uLWhlYWRlcnMNCj4gPiA+ID4gPiBmcmFn
bWVudHMgYXMgc21hbGwgYXMgNCBieXRlcykgd2l0aCBhbGwgb2ZmbG9hZCBmZWF0dXJlcyBlbmFi
bGVkLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gVGhhbmtzLA0KPiA+ID4gPiA+IHZsYWQNCj4gPiA+
ID4gPiA+DQo+ID4gPiA+ID4gPj4gU2lnbmVkLW9mZi1ieTogVmxhZCBab2xvdGFyb3YgPHZsYWR6
QGNsb3VkaXVzLXN5c3RlbXMuY29tDQo+ID4gPG1haWx0bzp2bGFkekBjbG91ZGl1cy1zeXN0ZW1z
LmNvbT4+DQo+ID4gPiA+ID4gPj4gLS0tDQo+ID4gPiA+ID4gPj4gICBkcml2ZXJzL25ldC9peGdi
ZS9peGdiZV9ldGhkZXYuYyB8ICA5ICsrKysrKysrKw0KPiA+ID4gPiA+ID4+ICAgZHJpdmVycy9u
ZXQvaXhnYmUvaXhnYmVfcnh0eC5jICB8IDIzICsrKysrKysrKysrKysrKysrKysrKystDQo+ID4g
PiA+ID4gPj4gICAyIGZpbGVzIGNoYW5nZWQsIDMxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24o
LSkNCj4gPiA+ID4gPiA+Pg0KPiA+ID4gPiA+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9p
eGdiZS9peGdiZV9ldGhkZXYuYw0KPiA+ID4gPiA+ID4+IGIvZHJpdmVycy9uZXQvaXhnYmUvaXhn
YmVfZXRoZGV2LmMNCj4gPiA+ID4gPiA+PiBpbmRleCBiOGVlMWU5Li42NzE0ZmQ5IDEwMDY0NA0K
PiA+ID4gPiA+ID4+IC0tLSBhL2RyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2V0aGRldi5jDQo+ID4g
PiA+ID4gPj4gKysrIGIvZHJpdmVycy9uZXQvaXhnYmUvaXhnYmVfZXRoZGV2LmMNCj4gPiA+ID4g
PiA+PiBAQCAtMjQxNCw2ICsyNDE0LDE1IEBAIGl4Z2JlX2Rldl9pbmZvX2dldChzdHJ1Y3QgcnRl
X2V0aF9kZXYNCj4gPiAqZGV2LA0KPiA+ID4gPiA+IHN0cnVjdA0KPiA+ID4gPiA+ID4+IHJ0ZV9l
dGhfZGV2X2luZm8gKmRldl9pbmZvKQ0KPiA+ID4gPiA+ID4+ICAgICAgICAgICAgLnR4cV9mbGFn
cyA9IEVUSF9UWFFfRkxBR1NfTk9NVUxUU0VHUyB8DQo+ID4gPiA+ID4gPj4gRVRIX1RYUV9GTEFH
U19OT09GRkxPQURTLA0KPiA+ID4gPiA+ID4+ICAgIH07DQo+ID4gPiA+ID4gPj4gKw0KPiA+ID4g
PiA+ID4+ICsgIC8qDQo+ID4gPiA+ID4gPj4gKyAgICogQWNjb3JkaW5nIHRvIDgyNTk5IGFuZCB4
NTQwIHNwZWNpZmljYXRpb25zIFJTIGJpdA0KPiA+ICptdXN0KiBiZSBzZXQgb24NCj4gPiA+ID4g
PiB0aGUNCj4gPiA+ID4gPiA+PiArICAgKiBsYXN0IGRlc2NyaXB0b3Igb2YgKmV2ZXJ5KiBwYWNr
ZXQuIFRoZXJlZm9yZSB3ZSB3aWxsDQo+ID4gbm90IGFsbG93IHRoZQ0KPiA+ID4gPiA+ID4+ICsg
ICAqIHR4X3JzX3RocmVzaCBhYm92ZSAxIGZvciBhbGwgTklDcyBuZXdlciB0aGFuIDgyNTk4Lg0K
PiA+ID4gPiA+ID4+ICsgICAqLw0KPiA+ID4gPiA+ID4+ICsgIGlmIChody0+bWFjLnR5cGUgPiBp
eGdiZV9tYWNfODI1OThFQikNCj4gPiA+ID4gPiA+PiArIGRldl9pbmZvLT5kZWZhdWx0X3R4Y29u
Zi50eF9yc190aHJlc2ggPSAxOw0KPiA+ID4gPiA+ID4+ICsNCj4gPiA+ID4gPiA+PiAgICBkZXZf
aW5mby0+aGFzaF9rZXlfc2l6ZSA9IElYR0JFX0hLRVlfTUFYX0lOREVYICoNCj4gPiBzaXplb2Yo
dWludDMyX3QpOw0KPiA+ID4gPiA+ID4+ICAgIGRldl9pbmZvLT5yZXRhX3NpemUgPSBFVEhfUlNT
X1JFVEFfU0laRV8xMjg7DQo+ID4gPiA+ID4gPj4gZGV2X2luZm8tPmZsb3dfdHlwZV9yc3Nfb2Zm
bG9hZHMgPSBJWEdCRV9SU1NfT0ZGTE9BRF9BTEw7DQo+ID4gPiA+ID4gPj4gZGlmZiAtLQ0KPiA+
ID4gPiA+IGdpdA0KPiA+ID4gPiA+ID4+IGEvZHJpdmVycy9uZXQvaXhnYmUvaXhnYmVfcnh0eC5j
DQo+ID4gYi9kcml2ZXJzL25ldC9peGdiZS9peGdiZV9yeHR4LmMgaW5kZXgNCj4gPiA+ID4gPiA+
PiA5MTAyM2I5Li44ZGJkZmZjIDEwMDY0NA0KPiA+ID4gPiA+ID4+IC0tLSBhL2RyaXZlcnMvbmV0
L2l4Z2JlL2l4Z2JlX3J4dHguYw0KPiA+ID4gPiA+ID4+ICsrKyBiL2RyaXZlcnMvbmV0L2l4Z2Jl
L2l4Z2JlX3J4dHguYw0KPiA+ID4gPiA+ID4+IEBAIC0yMDg1LDExICsyMDg1LDE5IEBAIGl4Z2Jl
X2Rldl90eF9xdWV1ZV9zZXR1cChzdHJ1Y3QNCj4gPiBydGVfZXRoX2Rldg0KPiA+ID4gPiA+ID4+
ICpkZXYsDQo+ID4gPiA+ID4gPj4gICAgc3RydWN0IGl4Z2JlX3R4X3F1ZXVlICp0eHE7DQo+ID4g
PiA+ID4gPj4gICAgc3RydWN0IGl4Z2JlX2h3ICAgICAqaHc7DQo+ID4gPiA+ID4gPj4gICAgdWlu
dDE2X3QgdHhfcnNfdGhyZXNoLCB0eF9mcmVlX3RocmVzaDsNCj4gPiA+ID4gPiA+PiArICBib29s
IHJzX2RlZmVycmluZ19hbGxvd2VkOw0KPiA+ID4gPiA+ID4+DQo+ID4gPiA+ID4gPj4gICAgUE1E
X0lOSVRfRlVOQ19UUkFDRSgpOw0KPiA+ID4gPiA+ID4+ICAgIGh3ID0gSVhHQkVfREVWX1BSSVZB
VEVfVE9fSFcoZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZSk7DQo+ID4gPiA+ID4gPj4NCj4gPiA+ID4g
PiA+PiAgICAvKg0KPiA+ID4gPiA+ID4+ICsgICAqIEFjY29yZGluZyB0byA4MjU5OSBhbmQgeDU0
MCBzcGVjaWZpY2F0aW9ucyBSUyBiaXQNCj4gPiAqbXVzdCogYmUgc2V0IG9uDQo+ID4gPiA+ID4g
dGhlDQo+ID4gPiA+ID4gPj4gKyAgICogbGFzdCBkZXNjcmlwdG9yIG9mICpldmVyeSogcGFja2V0
LiBUaGVyZWZvcmUgd2Ugd2lsbA0KPiA+IG5vdCBhbGxvdyB0aGUNCj4gPiA+ID4gPiA+PiArICAg
KiB0eF9yc190aHJlc2ggYWJvdmUgMSBmb3IgYWxsIE5JQ3MgbmV3ZXIgdGhhbiA4MjU5OC4NCj4g
PiA+ID4gPiA+PiArICAgKi8NCj4gPiA+ID4gPiA+PiArICByc19kZWZlcnJpbmdfYWxsb3dlZCA9
IChody0+bWFjLnR5cGUgPD0NCj4gPiA+ID4gPiA+PiArIGl4Z2JlX21hY184MjU5OEVCKTsNCj4g
PiA+ID4gPiA+PiArDQo+ID4gPiA+ID4gPj4gKyAgLyoNCj4gPiA+ID4gPiA+PiAgICAgKiBWYWxp
ZGF0ZSBudW1iZXIgb2YgdHJhbnNtaXQgZGVzY3JpcHRvcnMuDQo+ID4gPiA+ID4gPj4gICAgICog
SXQgbXVzdCBub3QgZXhjZWVkIGhhcmR3YXJlIG1heGltdW0sIGFuZCBtdXN0IGJlIG11bHRpcGxl
DQo+ID4gPiA+ID4gPj4gICAgICogb2YgSVhHQkVfQUxJR04uDQo+ID4gPiA+ID4gPj4gQEAgLTIx
MTAsNiArMjExOCw4IEBAIGl4Z2JlX2Rldl90eF9xdWV1ZV9zZXR1cChzdHJ1Y3QNCj4gPiA+ID4g
PiA+PiBydGVfZXRoX2Rldg0KPiA+ID4gPiA+ICpkZXYsDQo+ID4gPiA+ID4gPj4gICAgICogdG8g
dHJhbnNtaXQgYSBwYWNrZXQgaXMgZ3JlYXRlciB0aGFuIHRoZSBudW1iZXIgb2YgZnJlZSBUWA0K
PiA+ID4gPiA+ID4+ICAgICAqIGRlc2NyaXB0b3JzLg0KPiA+ID4gPiA+ID4+ICAgICAqIFRoZSBm
b2xsb3dpbmcgY29uc3RyYWludHMgbXVzdCBiZSBzYXRpc2ZpZWQ6DQo+ID4gPiA+ID4gPj4gKyAg
ICogIHR4X3JzX3RocmVzaCBtdXN0IGJlIGxlc3MgdGhhbiAyIGZvciBOSUNzIGZvciB3aGljaCBS
Uw0KPiA+IGRlZmVycmluZyBpcw0KPiA+ID4gPiA+ID4+ICsgICAqICBmb3JiaWRkZW4gKGFsbCBi
dXQgODI1OTgpLg0KPiA+ID4gPiA+ID4+ICAgICAqICB0eF9yc190aHJlc2ggbXVzdCBiZSBncmVh
dGVyIHRoYW4gMC4NCj4gPiA+ID4gPiA+PiAgICAgKiAgdHhfcnNfdGhyZXNoIG11c3QgYmUgbGVz
cyB0aGFuIHRoZSBzaXplIG9mIHRoZSByaW5nDQo+ID4gbWludXMgMi4NCj4gPiA+ID4gPiA+PiAg
ICAgKiAgdHhfcnNfdGhyZXNoIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHR4X2ZyZWVf
dGhyZXNoLg0KPiA+ID4gPiA+ID4+IEBAIC0yMTIxLDkgKzIxMzEsMjAgQEAgaXhnYmVfZGV2X3R4
X3F1ZXVlX3NldHVwKHN0cnVjdA0KPiA+IHJ0ZV9ldGhfZGV2DQo+ID4gPiA+ID4gKmRldiwNCj4g
PiA+ID4gPiA+PiAgICAgKiBXaGVuIHNldCB0byB6ZXJvIHVzZSBkZWZhdWx0IHZhbHVlcy4NCj4g
PiA+ID4gPiA+PiAgICAgKi8NCj4gPiA+ID4gPiA+PiAgICB0eF9yc190aHJlc2ggPSAodWludDE2
X3QpKCh0eF9jb25mLT50eF9yc190aHJlc2gpID8NCj4gPiA+ID4gPiA+PiAtIHR4X2NvbmYtPnR4
X3JzX3RocmVzaCA6IERFRkFVTFRfVFhfUlNfVEhSRVNIKTsNCj4gPiA+ID4gPiA+PiArIHR4X2Nv
bmYtPnR4X3JzX3RocmVzaCA6DQo+ID4gPiA+ID4gPj4gKyAocnNfZGVmZXJyaW5nX2FsbG93ZWQg
PyBERUZBVUxUX1RYX1JTX1RIUkVTSCA6IDEpKTsNCj4gPiA+ID4gPiA+PiAgICB0eF9mcmVlX3Ro
cmVzaCA9ICh1aW50MTZfdCkoKHR4X2NvbmYtPnR4X2ZyZWVfdGhyZXNoKSA/DQo+ID4gPiA+ID4g
Pj4gdHhfY29uZi0+dHhfZnJlZV90aHJlc2ggOiBERUZBVUxUX1RYX0ZSRUVfVEhSRVNIKTsNCj4g
PiA+ID4gPiA+PiArDQo+ID4gPiA+ID4gPj4gKyAgaWYgKCFyc19kZWZlcnJpbmdfYWxsb3dlZCAm
JiB0eF9yc190aHJlc2ggPiAxKSB7DQo+ID4gPiA+ID4gPj4gKyAgICAgICAgICBQTURfSU5JVF9M
T0coRVJSLCAidHhfcnNfdGhyZXNoIG11c3QgYmUgbGVzcyB0aGFuDQo+ID4gMiBzaW5jZSBSUw0K
PiA+ID4gPiA+ICINCj4gPiA+ID4gPiA+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICJt
dXN0IGJlIHNldCBmb3IgZXZlcnkgcGFja2V0DQo+ID4gZm9yIHRoaXMgSFcuICINCj4gPiA+ID4g
PiA+PiArICIodHhfcnNfdGhyZXNoPSV1IHBvcnQ9JWQgcXVldWU9JWQpIiwNCj4gPiA+ID4gPiA+
PiArICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50KXR4X3JzX3RocmVzaCwNCj4g
PiA+ID4gPiA+PiArIChpbnQpZGV2LT5kYXRhLT5wb3J0X2lkLCAoaW50KXF1ZXVlX2lkeCk7DQo+
ID4gPiA+ID4gPj4gKyAgICAgICAgICByZXR1cm4gLShFSU5WQUwpOw0KPiA+ID4gPiA+ID4+ICsg
IH0NCj4gPiA+ID4gPiA+PiArDQo+ID4gPiA+ID4gPj4gICAgaWYgKHR4X3JzX3RocmVzaCA+PSAo
bmJfZGVzYyAtIDIpKSB7DQo+ID4gPiA+ID4gPj4gICAgICAgICAgICBQTURfSU5JVF9MT0coRVJS
LCAidHhfcnNfdGhyZXNoIG11c3QgYmUgbGVzcyB0aGFuDQo+ID4gPiA+ID4gPj4gdGhlDQo+ID4g
PiA+ID4gbnVtYmVyICINCj4gPiA+ID4gPiA+PiAgICAgICAgICAgICAgICAgICAgICAgICAib2Yg
VFggZGVzY3JpcHRvcnMgbWludXMgMi4NCj4gPiAodHhfcnNfdGhyZXNoPSV1ICINCj4gPiA+ID4g
PiA+PiAtLQ0KPiA+ID4gPiA+ID4+IDIuMS4wDQo+ID4gPiA+DQo+ID4NCg0K