From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-000f0801.pphosted.com (mx0b-000f0801.pphosted.com [67.231.152.113]) by dpdk.org (Postfix) with ESMTP id 51E112986 for ; Thu, 7 Jul 2016 12:21:13 +0200 (CEST) Received: from pps.filterd (m0048192.ppops.net [127.0.0.1]) by mx0b-000f0801.pphosted.com (8.16.0.11/8.16.0.11) with SMTP id u67AKciM007002; Thu, 7 Jul 2016 03:21:12 -0700 Received: from brmwp-exmb11.corp.brocade.com ([208.47.132.227]) by mx0b-000f0801.pphosted.com with ESMTP id 2410n9vd4c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 07 Jul 2016 03:21:10 -0700 Received: from EMEAWP-EXMB11.corp.brocade.com (172.29.11.85) by BRMWP-EXMB11.corp.brocade.com (172.16.59.77) with Microsoft SMTP Server (TLS) id 15.0.1156.6; Thu, 7 Jul 2016 04:20:53 -0600 Received: from EMEAWP-EXMB11.corp.brocade.com (172.29.11.85) by EMEAWP-EXMB11.corp.brocade.com (172.29.11.85) with Microsoft SMTP Server (TLS) id 15.0.1156.6; Thu, 7 Jul 2016 12:20:52 +0200 Received: from EMEAWP-EXMB11.corp.brocade.com ([fe80::85ea:b7da:48dd:1640]) by EMEAWP-EXMB11.corp.brocade.com ([fe80::85ea:b7da:48dd:1640%21]) with mapi id 15.00.1156.000; Thu, 7 Jul 2016 12:20:52 +0200 From: Luca Boccassi To: "wenzhuo.lu@intel.com" CC: "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v6 0/4] support reset of VF link Thread-Index: AQHRyrxwyGULMjtHKk+KVN3RtrtRvaAIX+qAgACYEYCAAJbpgIAA+XEAgAEGAACAAJMzgIAAmfGA Date: Thu, 7 Jul 2016 10:20:51 +0000 Message-ID: <1467886851.1762.6.camel@brocade.com> References: <1465191653-28408-1-git-send-email-wenzhuo.lu@intel.com> <1466403870-6840-1-git-send-email-wenzhuo.lu@intel.com> <1467647287.32386.8.camel@brocade.com> <6A0DE07E22DDAD4C9103DF62FEBC09090348D343@shsmsx102.ccr.corp.intel.com> <1467712351.32466.11.camel@brocade.com> <6A0DE07E22DDAD4C9103DF62FEBC09090348DB05@shsmsx102.ccr.corp.intel.com> <1467822182.32466.34.camel@brocade.com> <6A0DE07E22DDAD4C9103DF62FEBC09090348E088@shsmsx102.ccr.corp.intel.com> In-Reply-To: <6A0DE07E22DDAD4C9103DF62FEBC09090348E088@shsmsx102.ccr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [172.27.212.167] Content-Type: text/plain; charset="utf-8" Content-ID: <5F751C3389A97C4C9FB5456483D2265E@brocade.local> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2016-07-07_07:, , signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 impostorscore=0 lowpriorityscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1604210000 definitions=main-1607070097 Subject: Re: [dpdk-dev] [PATCH v6 0/4] support reset of VF link X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jul 2016 10:21:13 -0000 T24gVGh1LCAyMDE2LTA3LTA3IGF0IDAxOjA5ICswMDAwLCBMdSwgV2Vuemh1byB3cm90ZToNCj4g SGkgTHVjYSwNCj4gDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJv bTogTHVjYSBCb2NjYXNzaSBbbWFpbHRvOmxib2NjYXNzQEJyb2NhZGUuY29tXQ0KPiA+IFNlbnQ6 IFRodXJzZGF5LCBKdWx5IDcsIDIwMTYgMTI6MjMgQU0NCj4gPiBUbzogTHUsIFdlbnpodW8NCj4g PiBDYzogZGV2QGRwZGsub3JnDQo+ID4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIHY2 IDAvNF0gc3VwcG9ydCByZXNldCBvZiBWRiBsaW5rDQo+ID4gDQo+ID4gT24gV2VkLCAyMDE2LTA3 LTA2IGF0IDAwOjQ1ICswMDAwLCBMdSwgV2Vuemh1byB3cm90ZToNCj4gPiA+IEhpIEx1Y2EsDQo+ ID4gPg0KPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiBGcm9tOiBM dWNhIEJvY2Nhc3NpIFttYWlsdG86bGJvY2Nhc3NAQnJvY2FkZS5jb21dDQo+ID4gPiA+IFNlbnQ6 IFR1ZXNkYXksIEp1bHkgNSwgMjAxNiA1OjUzIFBNDQo+ID4gPiA+IFRvOiBMdSwgV2Vuemh1bw0K PiA+ID4gPiBDYzogZGV2QGRwZGsub3JnDQo+ID4gPiA+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZd IFtQQVRDSCB2NiAwLzRdIHN1cHBvcnQgcmVzZXQgb2YgVkYgbGluaw0KPiA+ID4gPg0KPiA+ID4g PiBPbiBUdWUsIDIwMTYtMDctMDUgYXQgMDA6NTIgKzAwMDAsIEx1LCBXZW56aHVvIHdyb3RlOg0K PiA+ID4gPiA+IEhpIEx1Y2EsDQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+IEZyb206IEx1Y2EgQm9jY2Fzc2kg W21haWx0bzpsYm9jY2Fzc0BCcm9jYWRlLmNvbV0NCj4gPiA+ID4gPiA+IFNlbnQ6IE1vbmRheSwg SnVseSA0LCAyMDE2IDExOjQ4IFBNDQo+ID4gPiA+ID4gPiBUbzogTHUsIFdlbnpodW8NCj4gPiA+ ID4gPiA+IENjOiBkZXZAZHBkay5vcmcNCj4gPiA+ID4gPiA+IFN1YmplY3Q6IFJlOiBbZHBkay1k ZXZdIFtQQVRDSCB2NiAwLzRdIHN1cHBvcnQgcmVzZXQgb2YgVkYgbGluaw0KPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+IE9uIE1vbiwgMjAxNi0wNi0yMCBhdCAxNDoyNCArMDgwMCwgV2Vuemh1byBM dSB3cm90ZToNCj4gPiA+ID4gPiA+ID4gSWYgdGhlIFBGIGxpbmsgaXMgZG93biBhbmQgdXAsIFZG IGxpbmsgd2lsbCBub3Qgd29yayBhY2NvcmRpbmdseS4NCj4gPiA+ID4gPiA+ID4gVGhpcyBwYXRj aCBzZXQgYWRkZXMgdGhlIHN1cHBvcnQgb2YgVkYgbGluayByZXNldC4gU28sIHdoZW4gVkYNCj4g PiA+ID4gPiA+ID4gcmVjZWljZXMgdGhlIG1lc3NnZXMgb2YgcGh5c2ljYWwgbGluayBkb3duL3Vw LiBBUFAgY2FuIHJlc2V0DQo+ID4gPiA+ID4gPiA+IHRoZSBWRiBsaW5rIGFuZCBsZXQgaXQgcmVj b3Zlci4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gUFM6IFRoaXMgcGF0Y2ggc2V0IGlz IHNwbGl0dGVkIGZyb20gYSBwcmV2aW91cyBwYXRjaCBzZXQsDQo+ID4gPiA+ID4gPiA+ICphdXRv bWF0aWMgbGluayByZWNvdmVyeSBvbiBpeGdiZS9pZ2IgVkYqLCBhbmQgaXQncyBiYXNlIG9uDQo+ ID4gPiA+ID4gPiA+IHRoZSBwYXRjaCBzZXQgKnN1cHBvcnQgbWFpbGJveCBpbnRlcnJ1cHRpb24g b24gaXhnYmUvaWdiIFZGKi4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gV2Vuemh1byBM dSAoMyk6DQo+ID4gPiA+ID4gPiA+ICAgbGliL2xpYnJ0ZV9ldGhlcjogc3VwcG9ydCBkZXZpY2Ug cmVzZXQNCj4gPiA+ID4gPiA+ID4gICBpeGdiZTogaW1wbGVtZW50IGRldmljZSByZXNldCBvbiBW Rg0KPiA+ID4gPiA+ID4gPiAgIGlnYjogaW1wbGVtZW50IGRldmljZSByZXNldCBvbiBWRg0KPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBaaGUgVGFvICgxKToNCj4gPiA+ID4gPiA+ID4gICBp NDBlOiBpbXBsZW1lbnQgZGV2aWNlIHJlc2V0IG9uIFZGDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiA+IHYxOg0KPiA+ID4gPiA+ID4gPiAtIEFkZGVkIHRoZSBpbXBsZW1lbnRhdGlvbiBmb3Ig dGhlIFZGIHJlc2V0IGZ1bmN0aW9uYWxpdHkuDQo+ID4gPiA+ID4gPiA+IHYyOg0KPiA+ID4gPiA+ ID4gPiAtIENoYW5nZWQgdGhlIGk0MGUgcmVsYXRlZCBvcGVyYXRpb25zIGR1cmluZyBWRiByZXNl dC4NCj4gPiA+ID4gPiA+ID4gdjM6DQo+ID4gPiA+ID4gPiA+IC0gUmVzZW50IHRoZSBwYXRjaGVz IGJlY2F1c2Ugb2YgdGhlIG1haWwgc2VudCBpc3N1ZS4NCj4gPiA+ID4gPiA+ID4gdjQ6DQo+ID4g PiA+ID4gPiA+IC0gUmVtb3ZlZCBzb21lIFZGIHJlc2V0IGVtdWxhdGlvbiBjb2RlLg0KPiA+ID4g PiA+ID4gPiB2NToNCj4gPiA+ID4gPiA+ID4gLSBSZW1vdmVkIGFsbCB0aGUgY29kZSByZWxhdGVk IHdpdGggbG9jay4NCj4gPiA+ID4gPiA+ID4gdjY6DQo+ID4gPiA+ID4gPiA+IC0gVXBkYXRlZCB0 aGUgTklDIGZlYXR1cmUgb3ZlcnZpZXcgbWF0cml4Lg0KPiA+ID4gPiA+ID4gPiAtIEFkZGVkIG1v cmUgZXhwbGFuYXRpb24gaW4gdGhlIGRveHlnZW4gY29tbWVudCBvZiByZXNldCBBUEkuDQo+ID4g PiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ICBkb2MvZ3VpZGVzL25pY3Mvb3ZlcnZpZXcucnN0ICAg ICAgICAgICB8ICAxICsNCj4gPiA+ID4gPiA+ID4gIGRvYy9ndWlkZXMvcmVsX25vdGVzL3JlbGVh c2VfMTZfMDcucnN0IHwgMTMgKysrKysrDQo+ID4gPiA+ID4gPiA+ICBkcml2ZXJzL25ldC9lMTAw MC9pZ2JfZXRoZGV2LmMgICAgICAgICB8IDU5ICsrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ ID4gPiA+ID4gPiAgZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5oICAgICAgICAgfCAgNCAr Kw0KPiA+ID4gPiA+ID4gPiAgZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldl92Zi5jICAgICAg fCA4Mw0KPiA+ID4gPiA+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ ID4gPiA+ID4gPiAgZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguYyAgICAgICAgICAgfCAxMCAr KysrDQo+ID4gPiA+ID4gPiA+ICBkcml2ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5oICAgICAgICAg ICB8ICA0ICsrDQo+ID4gPiA+ID4gPiA+ICBkcml2ZXJzL25ldC9peGdiZS9peGdiZV9ldGhkZXYu YyAgICAgICB8IDY0DQo+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKy0NCj4gPiA+ID4gPiA+ ID4gIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2V0aGRldi5oICAgICAgIHwgIDIgKy0NCj4gPiA+ ID4gPiA+ID4gIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX3J4dHguYyAgICAgICAgIHwgMTIgKysr LS0NCj4gPiA+ID4gPiA+ID4gIGxpYi9saWJydGVfZXRoZXIvcnRlX2V0aGRldi5jICAgICAgICAg IHwgMTcgKysrKysrKw0KPiA+ID4gPiA+ID4gPiAgbGliL2xpYnJ0ZV9ldGhlci9ydGVfZXRoZGV2 LmggICAgICAgICAgfCAyNCArKysrKysrKysrDQo+ID4gPiA+ID4gPiA+ICBsaWIvbGlicnRlX2V0 aGVyL3J0ZV9ldGhlcl92ZXJzaW9uLm1hcCB8ICA3ICsrKw0KPiA+ID4gPiA+ID4gPiAgMTMgZmls ZXMgY2hhbmdlZCwgMjk1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pDQo+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gSGVsbG8gV2Vuemh1bywNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJ J20gdGVzdGluZyB0aGlzIHBhdGNoc2V0LCBidXQgSSBhbSBzcG9yYWRpY2FsbHkgcnVubmluZyBp bnRvIGFuDQo+ID4gPiA+ID4gPiBpc3N1ZSB3aGVyZSB0aGUgVkZzIHJlc2V0IGZhaWxzIGFmdGVy IHRoZSBQRiBmbGFwcy4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJIGhhdmUgYSBWTSBydW5u aW5nIG9uIGEgS1ZNIGJveCB3aXRoIGEgWDU0MC1BVDIsIHBhc3NpbmcgMiBWRnMgaW4uDQo+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gSSBhbSB1c2luZyBjYWxsaW5nIHJ0ZV9ldGhfZGV2X3Jlc2V0 IGluIHJlc3BvbnNlIHRvIGENCj4gPiA+ID4gPiA+IFJURV9FVEhfRVZFTlRfSU5UUl9SRVNFVCBj YWxsYmFjaywgYW5kIHRoZSBmb2xsb3dpbmcgZXJyb3JzDQo+ID4gPiA+ID4gPiBhcHBlYXIgaW4g dGhlDQo+ID4gPiA+ID4gPiBsb2c6DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gUE1EOiBpeGdi ZXZmX2Rldl9yZXNldCgpOiBJeGdiZSBWRiByZXNldDogRmFpbGVkIHRvIHVwZGF0ZSBsaW5rLg0K PiA+ID4gPiA+ID4gUE1EOiBpeGdiZV9hbGxvY19yeF9xdWV1ZV9tYnVmcygpOiBSWCBtYnVmIGFs bG9jIGZhaWxlZA0KPiA+ID4gPiA+ID4gcXVldWVfaWQ9MA0KPiA+ID4gPiA+ID4gUE1EOiBpeGdi ZXZmX2Rldl9zdGFydCgpOiBVbmFibGUgdG8gaW5pdGlhbGl6ZSBSWCBoYXJkd2FyZSAoLTEyKQ0K PiA+ID4gPiA+ID4gUE1EOiBpeGdiZXZmX2Rldl9yZXNldCgpOiBJeGdiZSBWRiByZXNldDogRmFp bGVkIHRvIHN0YXJ0IGRldmljZS4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBKdW1waW5nIGlu IHdpdGggR0RCLCBpdCBzZWVtcyB0aGF0IHRoZSBydGVfcnhtYnVmX2FsbG9jIGNhbGwgaW4NCj4g PiA+ID4gPiA+IGl4Z2JlX2FsbG9jX3J4X3F1ZXVlX21idWZzIHJldHVybnMgTlVMTCBhdCBpdGVy YXRpb24gNjQgb3V0IG9mIDIwNDguDQo+ID4gPiA+ID4gPiBUaGUgYXBwbGljYXRpb24gaGFzIH41 MDAgMk1CIGh1Z2VwYWdlcywgYW5kIHRoZXJlJ3MgMkdCIG9mIGZyZWUNCj4gPiA+ID4gPiA+IG1l bW9yeSBhdmFpbGFibGUgb24gdG9wIG9mIHRoYXQuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g SGF2ZSB5b3Ugc2VlbiB0aGlzIGJlZm9yZT8gQW55IHBvaW50ZXIgb3Igc3VnZ2VzdGlvbiBmb3Ig ZGVidWdnaW5nPw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFRoYW5rcyENCj4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4gS2luZCByZWdhcmRzLA0KPiA+ID4gPiA+ID4g THVjYSBCb2NjYXNzaQ0KPiA+ID4gPiA+IEkgdGhpbmsgdGhlIHByb2JsZW0gaXMgdGhlIG1idWYg b2NjdXBpZWQgYnkgdGhlIHBhY2tldHMgaXMgbm90DQo+ID4gPiA+ID4gcmVsZWFzZWQuIFRoaXMN Cj4gPiA+ID4gbWVtb3J5IGhhcyB0byBiZSByZWxlYXNlZCBieSB0aGUgQVBQLCBzbyBteSBwYXRj aGVzIGhhdmVu4oCZdCBjb3ZlcmVkIHRoaXMuDQo+ID4gPiA+IEFjdHVhbGx5IGFuIGV4YW1wbGUg aXMgbmVlZGVkIHRvIHNob3cgaG93IHRvIHVzZSB0aGUgcmVzZXQgQVBJLiBJDQo+ID4gPiA+IHBs YW4gdG8gbW9kaWZ5IHRoZSB0ZXN0cG1kLg0KPiA+ID4gPiA+IFlvdSBtYXkgbm90aWNlIHRoaXMg ZmVhdHVyZSBpcyBwb3N0cG9uZWQgdG8gMTYuMTEuIFdvdWxkIHlvdSBsaWtlDQo+ID4gPiA+ID4g dG8gd2FpdCBmb3INCj4gPiA+ID4gdGhlIG5ldyB2ZXJzaW9uIHRoYXQgd2lsbCBpbmNsdWRlIGFu IGV4YW1wbGU/DQo+ID4gPiA+DQo+ID4gPiA+IEhpLA0KPiA+ID4gPg0KPiA+ID4gPiBVbmZvcnR1 bmF0ZWx5IHdlIG5lZWQgdGhlIFZGIHJlc2V0IHdvcmtpbmcgc29vbmVyIHRoYW4gdGhhdCwgc28g b25lDQo+ID4gPiA+IHdheSBvciB0aGUgb3RoZXIgSSdsbCBuZWVkIHRvIHNvcnQgaXQgb3V0LiBH aXZlbiBJJ3ZlIGdvdCBhIHVzZSBjYXNlDQo+ID4gPiA+IHdoZXJlIHRoaXMgaXMgaGFwcGVuaW5n LCBpZiBpdCBjYW4gYmUgaGVscGZ1bCBmb3IgeW91IEknbSBtb3JlIHRoYW4NCj4gPiA+ID4gaGFw cHkgdG8gaGVscCBhcyBhIGd1aW5lYSBwaWcuIElmIHlvdSBjb3VsZCBwbGVhc2UgZ2l2ZSBzb21l DQo+ID4gPiA+IGd1aWRhbmNlL2d1aWRlbGluZXMgd2l0aCByZWdhcmRzIHRvIHdoaWNoIEFQSSB0 byB1c2UgdG8gc29ydCB0aGUgbWJ1Zg0KPiA+IHByb2JsZW0sIEkgY2FuIHRyeSBpdCBvdXQgYW5k IGdpdmUgYmFjayBzb21lIGZlZWRiYWNrLg0KPiA+ID4gPg0KPiA+ID4gPiBUaGFua3MhDQo+ID4g PiBJIG1hZGUgYSBzdHVwaWQgbWlzdGFrZSBhbmQgZGVsZXRlZCBhbGwgbXkgY29kZS4gU28sIEkg aGF2ZSB0byB0YWtlDQo+ID4gPiBzb21lIHRpbWUgdG8gcmV3cml0ZSBpdCA6KCBBdHRhY2hlZCB0 aGUgZXhhbXBsZSBJIHVzZWQgdG8gdGVzdCB0aGUgcmVzZXQgQVBJLiBJdCdzDQo+ID4gbW9kaWZp ZWQgZnJvbSB0aGUgbDJmd2QgZXhhbXBsZS4gU28geW91IGNhbiBjb21wYXJlIGl0IHdpdGggbDJm d2QgdG8gc2VlIHdoYXQNCj4gPiBuZWVkIHRvIGJlIGFkZGVkLg0KPiA+ID4gSG9wZWZ1bGx5IGl0 IGNhbiBoZWxwIDopDQo+ID4gDQo+ID4gVGhhbmtzISBUaGF0IG1hZGUgbWUgdW5kZXJzdGFuZCBh IGNvdXBsZSBvZiB0aGluZ3MgbW9yZSwgYW5kIEkndmUgZ290IHBhc3QgdGhlDQo+ID4gcHJvYmxl bS4NCj4gPiANCj4gPiBVbmZvcnR1bmF0ZWx5IG5vdyB0aGVyZSdzIGEgYmlnZ2VyIGlzc3VlIC0g cnRlX2V0aF9kZXZfcmVzZXQgaXMgYSBibG9ja2luZyBjYWxsLg0KPiA+IHRoZSBfUkVTRVQgZXZl bnQgY2FsbGJhY2sgaXMgZmlyZWQgd2hlbiB0aGUgUEYgZ29lcyBkb3duLCBidXQgd2hlbiBJIGNh bGwNCj4gPiBydGVfZXRoX2Rldl9yZXNldCBpdCB3aWxsIGJsb2NrIHVudGlsIHRoZSBQRiBnb2Vz IGJhY2sgdXAuIFRoZXJlIGlzIG5vIHdheSwgYXMgZmFyDQo+ID4gYXMgSSBjYW4gc2VlLCB0byBr bm93IGlmIHRoZSBQRiBpcyBiYWNrIHVwIGJlZm9yZSBjYWxsaW5nIHJ0ZV9ldGhfZGV2X3Jlc2V0 Lg0KPiA+IA0KPiA+IFRoaXMgaXMgYSBwcm9ibGVtIGJlY2F1c2UsIGFzIGZhciBhcyBJIHVuZGVy c3RhbmQsIEkgaGF2ZSB0byBjYWxsIGFsbCB0aGUNCj4gPiBydGVfZXRoX2Rldl8gQVBJcyBmcm9t IHRoZSBzYW1lIHRocmVhZCwgaW4gbXkgY2FzZSB0aGUgbWFzdGVyIHRocmVhZCwgYW5kIEkNCj4g PiBjYW4ndCBoYXZlIHRoYXQgYmxvY2sgcG90ZW50aWFsbHkgaW5kZWZpbml0ZWx5Lg0KPiA+IA0K PiA+IFdvdWxkIGl0IGJlIHBvc3NpYmxlIHRvIGhhdmUgMiBldmVudHMgaW5zdGVhZCBvZiAxLCBv bmUgd2hlbiB0aGUgUEYgZ29lcyBkb3duDQo+ID4gYW5kIG9uZSB3aGVuIGl0IGdvZXMgdXA/IFRo aXMgd2F5IGFuIGFwcGxpY2F0aW9uIHdvdWxkIGJlIGFibGUgdG8gc29mdC1zdG9wIHRoZQ0KPiA+ IHBvcnQgKGRyYWluIHF1ZXVlcywgZXRjKSB3aGVuIHRoZSBQRiBpcyBkb3duLCBhbmQgdGhlbiBj YWxsIHRoZSByZXNldCBBUEkgd2hlbiBpdA0KPiA+IGdvZXMgYmFjayB1cC4NCj4gPiANCj4gPiBU aGFua3MhDQo+IFNvcnJ5IHdlIGNhbm5vdCBoYXZlIDIgZXZlbnRzIG5vdy4gVGhlcmUncmUgMiBw cm9ibGVtcyB0byBoYXZlIDIgZXZlbnRzLg0KPiAxLCBOb3JtYWxseSB3ZSB1c2Uga2VybmVsIGRy aXZlciBmb3IgUEYuIE5vdyB0aGUga2VybmVsIGRyaXZlciBvbmx5IGhhdmUgb25lIGtpbmQgb2Yg bWVzc2FnZSBmb3IgbGluayBkb3duIGFuZCB1cC4gU28gd2UgY2Fubm90IHRlbGwgaWYgaXQncyBk b3duIG9yIHVwLg0KPiAyLCBXaGVuIHRoZSBQRiBpcyBkb3duLCBpZiB3ZSBkb24ndCByZXNldCB0 aGUgVkYsIFZGIGlzIG5vdCB3b3JraW5nLiBJdCBjYW5ub3QgcmVjZWl2ZSBhbnkgbWVzc2FnZSBm cm9tIFBGLiBTbyB3ZSBjYW5ub3Qga25vdyB0aGF0IHdoZW4gUEYgaXMgdXAuIEl0IG1lYW5zIG5v cm1hbGx5IHdlIGhhdmUgdG8gcmVzZXQgVkYgdHdpY2Ugd2hlbiBQRiBkb3duIGFuZCB1cC4gKFN1 cmVseSB3ZSBjYW4gd2FpdCBhIHdoaWxlIHdoZW4gd2UgcmVjZWl2ZSB0aGUgbWVzc2FnZSBmcm9t IFBGIHVudGlsIFBGIGlzIHVwLiBCdXQgd2UgY2Fubm90IHRlbGwgaG93IGxvbmcgdGhlIHRpbWUg aXMgYXBwcm9wcmlhdGUuIFNvIHRoaXMgKndhaXQgYSB3aGlsZSogbWF5IHdvcmsgZm9yIGZsYXNo LikNCg0KVGhhbmtzIGZvciB0aGUgY2xhcmlmaWNhdGlvbiwgSSB1bmRlcnN0YW5kLg0KDQpUaGUg cHJvYmxlbSB3aXRoIGEgYmxvY2tpbmcgY2FsbCBpcyB0aGF0IHdlIGJhc2ljYWxseSBuZWVkIHRv IHNwYXduIG9uZQ0KdGhyZWFkIHBlciBydGVfZXRoX2Rldl9yZXNldCBjYWxsLCBzaW5jZSB0aGVy ZSBpcyBubyB3YXkgb2Yga25vd2luZyBpZiBhDQpQRiBpcyBkb3duIGZvciBnb29kIG9yIGp1c3Qg ZmxhcHBpbmcsIGFuZCB3ZSBjYW4ndCBoYXZlIGEgc2luZ2xlIHRocmVhZA0KbWFuYWdpbmcgYWxs IHRoZSBpbnRlcmZhY2VzIGJlaW5nIGJsb2NrZWQgZm9yZXZlciAoRUc6IFBGIDEgYW5kIDIgZ28N CmRvd24sIHRocmVhZCBibG9ja3Mgb24gUEYgMSByZXNldCBjYWxsIGJ1dCBpdCBuZXZlciByZXR1 cm5zLCBtZWFud2hpbGUNClBGIDIgZ29lcyBiYWNrIHVwIGJ1dCBjYWxsIGlzIG5ldmVyIG1hZGUp Lg0KDQpBIGNvbGxlYWd1ZSBvZiBtaW5lLCBFcmljIEtpbnppZSwgc3VnZ2VzdGVkIHRvIGFkZCBh IGJsb2NraW5nIGJvb2xlYW4NCnBhcmFtZXRlciB0byBydGVfZXRoX2Rldl9yZXNldCBBUEkuIElm IHNldCB0byBmYWxzZSwgdGhlbiB0aGUgY2FsbCB3aWxsDQpub3QgYmxvY2sgYW5kIGp1c3QgZG9l cyBvbmUgdHJ5IGFuZCByZXR1cm4gYW4gZXJyb3IgKEVBR0FJTiA/KS4gV291bGQNCnRoaXMgYmUg YW4gYWNjZXB0YWJsZSBwcm9wb3NpdGlvbj8NCg0KLS0gDQpLaW5kIHJlZ2FyZHMsDQpMdWNhIEJv Y2Nhc3NpDQo=