From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 3943E1B3A4 for ; Thu, 4 Oct 2018 14:03:08 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Oct 2018 05:03:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,338,1534834800"; d="scan'208";a="79829497" Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by orsmga006.jf.intel.com with ESMTP; 04 Oct 2018 05:02:53 -0700 Received: from irsmsx106.ger.corp.intel.com ([169.254.8.45]) by IRSMSX103.ger.corp.intel.com ([169.254.3.248]) with mapi id 14.03.0319.002; Thu, 4 Oct 2018 13:02:52 +0100 From: "Ananyev, Konstantin" To: "Guo, Jia" , "stephen@networkplumber.org" , "Richardson, Bruce" , "Yigit, Ferruh" , "gaetan.rivet@6wind.com" , "Wu, Jingjing" , "thomas@monjalon.net" , "motih@mellanox.com" , "matan@mellanox.com" , "Van Haaren, Harry" , "Zhang, Qi Z" , "He, Shaopeng" , "Iremonger, Bernard" , "arybchenko@solarflare.com" , "Lu, Wenzhuo" , "Burakov, Anatoly" , "jerin.jacob@caviumnetworks.com" CC: "jblunck@infradead.org" , "shreyansh.jain@nxp.com" , "dev@dpdk.org" , "Zhang, Helin" Thread-Topic: [PATCH v13 0/7] hot-unplug failure handle mechanism Thread-Index: AQHUW6tzP3xUDvJGXEWhby52yQecFaUO/KSg Date: Thu, 4 Oct 2018 12:02:51 +0000 Message-ID: <2601191342CEEE43887BDE71AB9772580102FE1FDF@IRSMSX106.ger.corp.intel.com> References: <1498711073-42917-1-git-send-email-jia.guo@intel.com> <1538634659-91335-1-git-send-email-jia.guo@intel.com> In-Reply-To: <1538634659-91335-1-git-send-email-jia.guo@intel.com> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZjg2ZjViODQtNGYwYS00MGIyLTk5YjUtMzRkMTFkMjY2M2NiIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiS1BnZUF6MmdCQ2pVSEw0dG9Ma0ZxVEFVcnpvOU9tak9CTU81YzMyNDZDS3NOb1Q2UGtjUThudHdsZ3NTeENYRCJ9 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 v13 0/7] hot-unplug failure handle mechanism 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: Thu, 04 Oct 2018 12:03:09 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogR3VvLCBKaWENCj4gU2Vu dDogVGh1cnNkYXksIE9jdG9iZXIgNCwgMjAxOCA3OjMxIEFNDQo+IFRvOiBzdGVwaGVuQG5ldHdv cmtwbHVtYmVyLm9yZzsgUmljaGFyZHNvbiwgQnJ1Y2UgPGJydWNlLnJpY2hhcmRzb25AaW50ZWwu Y29tPjsgWWlnaXQsIEZlcnJ1aCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IEFuYW55ZXYsDQo+ IEtvbnN0YW50aW4gPGtvbnN0YW50aW4uYW5hbnlldkBpbnRlbC5jb20+OyBnYWV0YW4ucml2ZXRA NndpbmQuY29tOyBXdSwgSmluZ2ppbmcgPGppbmdqaW5nLnd1QGludGVsLmNvbT47IHRob21hc0Bt b25qYWxvbi5uZXQ7DQo+IG1vdGloQG1lbGxhbm94LmNvbTsgbWF0YW5AbWVsbGFub3guY29tOyBW YW4gSGFhcmVuLCBIYXJyeSA8aGFycnkudmFuLmhhYXJlbkBpbnRlbC5jb20+OyBaaGFuZywgUWkg WiA8cWkuei56aGFuZ0BpbnRlbC5jb20+OyBIZSwNCj4gU2hhb3BlbmcgPHNoYW9wZW5nLmhlQGlu dGVsLmNvbT47IElyZW1vbmdlciwgQmVybmFyZCA8YmVybmFyZC5pcmVtb25nZXJAaW50ZWwuY29t PjsgYXJ5YmNoZW5rb0Bzb2xhcmZsYXJlLmNvbTsgTHUsIFdlbnpodW8NCj4gPHdlbnpodW8ubHVA aW50ZWwuY29tPjsgQnVyYWtvdiwgQW5hdG9seSA8YW5hdG9seS5idXJha292QGludGVsLmNvbT47 IGplcmluLmphY29iQGNhdml1bW5ldHdvcmtzLmNvbQ0KPiBDYzogamJsdW5ja0BpbmZyYWRlYWQu b3JnOyBzaHJleWFuc2guamFpbkBueHAuY29tOyBkZXZAZHBkay5vcmc7IEd1bywgSmlhIDxqaWEu Z3VvQGludGVsLmNvbT47IFpoYW5nLCBIZWxpbiA8aGVsaW4uemhhbmdAaW50ZWwuY29tPg0KPiBT dWJqZWN0OiBbUEFUQ0ggdjEzIDAvN10gaG90LXVucGx1ZyBmYWlsdXJlIGhhbmRsZSBtZWNoYW5p c20NCj4gDQo+IEhvdHBsdWcgaXMgYW4gaW1wb3J0YW50IGZlYXR1cmUgZm9yIHVzZS1jYXNlcyBs aWtlIHRoZSBkYXRhY2VudGVyIGRldmljZSdzDQo+IGZhaWwtc2FmZSBhbmQgZm9yIFNSSU9WIExp dmUgTWlncmF0aW9uIGluIFNETi9ORlYuIEl0IGNvdWxkIGJyaW5nIGhpZ2hlcg0KPiBmbGV4aWJp bGl0eSBhbmQgY29udGludWFsaXR5IHRvIG5ldHdvcmtpbmcgc2VydmljZXMgaW4gbXVsdGlwbGUg dXNlLWNhc2VzDQo+IGluIHRoZSBpbmR1c3RyeS4gU28gbGV0J3Mgc2VlIGhvdyBEUERLIGNhbiBo ZWxwIHVzZXJzIGltcGxlbWVudCBob3RwbHVnDQo+IHNvbHV0aW9ucy4NCj4gDQo+IFdlIGFscmVh ZHkgaGF2ZSBhIGdlbmVyYWwgZGV2aWNlLWV2ZW50IG1vbml0b3IgbWVjaGFuaXNtLCBmYWlsc2Fm ZSBkcml2ZXIsDQo+IGFuZCBob3QgcGx1Zy91bnBsdWcgQVBJIGluIERQREsuIFdlIGhhdmUgYWxy ZWFkeSBnb3QgdGhlIHNvbHV0aW9uIG9mDQo+IOKAnGV0aGRldiBldmVudCArIGtlcm5lbCBQTUQg aG90cGx1ZyBoYW5kbGVyICsgZmFpbHNhZmXigJ0sIGJ1dCB3ZSBzdGlsbCBub3QNCj4gZ290IOKA nGVhbCBldmVudCArIGhvdHBsdWcgaGFuZGxlciBmb3IgcGNpIFBNRCArIGZhaWxzYWZl4oCdIGlt cGxlbWVudCwgYW5kIHdlDQo+IG5lZWQgdG8gY29uc2lkZXJhdGUgMiBkaWZmZXJlbnQgc29sdXRp b25zIGJldHdlZW4gdWlvIHBjaSBhbmQgdmZpbyBwY2kuDQo+IA0KPiBJbiB0aGUgY2FzZSBvZiBo b3RwbHVnIGZvciBpZ2JfdWlvLCB3aGVuIGEgaGFyZHdhcmUgZGV2aWNlIGJlIHJlbW92ZWQNCj4g cGh5c2ljYWxseSBvciBkaXNhYmxlZCBpbiBzb2Z0d2FyZSwgdGhlIGFwcGxpY2F0aW9uIG5lZWRz IHRvIGJlIG5vdGlmaWVkDQo+IGFuZCBkZXRhY2ggdGhlIGRldmljZSBvdXQgb2YgdGhlIGJ1cywg YW5kIHRoZW4gbWFrZSB0aGUgZGV2aWNlIGludmFsaWRhdGUuDQo+IFRoZSBwcm9ibGVtIGlzIHRo YXQsIHRoZSByZW1vdmFsIG9mIHRoZSBkZXZpY2UgaXMgbm90IGluc3RhbnRhbmVvdXMgaW4NCj4g c29mdHdhcmUuIElmIHRoZSBhcHBsaWNhdGlvbiBkYXRhIHBhdGggdHJpZXMgdG8gcmVhZC93cml0 ZSB0byB0aGUgZGV2aWNlDQo+IHdoZW4gcmVtb3ZhbCBpcyBzdGlsbCBpbiBwcm9jZXNzLCBpdCB3 aWxsIGNhdXNlIGFuIE1NSU8gZXJyb3IgYW5kDQo+IGFwcGxpY2F0aW9uIHdpbGwgY3Jhc2guDQo+ IA0KPiBJbiB0aGlzIHBhdGNoIHNldCwgd2UgcHJvcG9zZSBhIFBDSWUgYnVzIGZhaWx1cmUgaGFu ZGxlciBtZWNoYW5pc20gZm9yDQo+IGhvdC11bnBsdWcgaW4gaWdiX3Vpby4gSXQgYWltcyB0byBn dWFyYW50ZWUgdGhhdCwgd2hlbiBhIGhvdC11bnBsdWcgb2NjdXJzLA0KPiB0aGUgYXBwbGljYXRp b24gd2lsbCBub3QgY3Jhc2guDQo+IA0KPiBUaGUgbWVjaGFuaXNtIHNob3VsZCB3b3JrIGFzIGJl bG93Og0KPiANCj4gRmlyc3QsIHRoZSBhcHBsaWNhdGlvbiBlbmFibGVzIHRoZSBkZXZpY2UgZXZl bnQgbW9uaXRvciwgcmVnaXN0ZXJzIHRoZQ0KPiBob3RwbHVnIGV2ZW504oCZcyBjYWxsYmFjayBh bmQgZW5hYmxlIGhvdHBsdWcgaGFuZGxpbmcgYmVmb3JlIHJ1bm5pbmcgdGhlDQo+IGRhdGEgcGF0 aC4gT25jZSB0aGUgaG90LXVucGx1ZyBvY2N1cnMsIHRoZSBtZWNoYW5pc20gd2lsbCBkZXRlY3Qg dGhlDQo+IHJlbW92YWwgZXZlbnQgYW5kIHRoZW4gYWNjb3JkaW5nbHkgZG8gdGhlIGZhaWx1cmUg aGFuZGxpbmcuIEluIG9yZGVyIHRvDQo+IGRvIHRoYXQsIHRoZSBiZWxvdyBmdW5jdGlvbmFsaXR5 IHdpbGwgYmUgcmVxdWlyZWQ6DQo+ICAtIEFkZCBhIG5ldyBidXMgb3BzIOKAnGhvdF91bnBsdWdf aGFuZGxlcuKAnSB0byBoYW5kbGUgaG90LXVucGx1ZyBmYWlsdXJlLg0KPiAgLSBJbXBsZW1lbnQg cGNpIGJ1cyBzcGVjaWZpYyBvcHMg4oCccGNpX2hvdF91bnBsdWdfaGFuZGxlcuKAnS4gRm9yIHVp byBwY2ksDQo+ICAgIGl0IHdpbGwgYmUgYmFzZWQgb24gdGhlIGZhaWx1cmUgYWRkcmVzcyB0byBy ZW1hcCBtZW1vcnkgZm9yIHRoZSBjb3JyZXNwb25kaW5nDQo+ICAgIGRldmljZSB0aGF0IHVucGx1 Z2dlZC4gRm9yIHZmaW8gcGNpLCBjb3VsZCBzZXBlcmF0ZSBpbXBsZW1lbnQgY2FzZSBieSBjYXNl Lg0KPiANCj4gRm9yIHRoZSBkYXRhIHBhdGggb3Igb3RoZXIgdW5leHBlY3RlZCBiZWhhdmlvcnMg ZnJvbSB0aGUgY29udHJvbCBwYXRoDQo+IHdoZW4gYSBob3QgdW5wbHVnIG9jY3VyczoNCj4gIC0g QWRkIGEgbmV3IGJ1cyBvcHMg4oCcc2lnYnVzX2hhbmRsZXLigJ0sIHRoYXQgaXMgcmVzcG9uc2li bGUgZm9yIGhhbmRsaW5nDQo+ICAgIHRoZSBzaWdidXMgZXJyb3Igd2hpY2ggaXMgZWl0aGVyIGFu IG9yaWdpbmFsIG1lbW9yeSBlcnJvciwgb3IgYSBzcGVjaWZpYw0KPiAgICBtZW1vcnkgZXJyb3Ig dGhhdCBpcyBjYXVzZWQgYnkgYSBob3QgdW5wbHVnLiBXaGVuIGEgc2lnYnVzIGVycm9yIGlzDQo+ ICAgIGNhcHR1cmVkLCBpdCB3aWxsIGNhbGwgdGhpcyBmdW5jdGlvbiB0byBoYW5kbGUgc2lnYnVz IGVycm9yLg0KPiAgLSBJbXBsZW1lbnQgUENJIGJ1cyBzcGVjaWZpYyBvcHMg4oCccGNpX3NpZ2J1 c19oYW5kbGVy4oCdLiBJdCB3aWxsIGl0ZXJhdGUgYWxsDQo+ICAgIGRldmljZSBvbiBQQ0kgYnVz IHRvIGZpbmQgd2hpY2ggZGV2aWNlIGVuY291bnRlciB0aGUgZmFpbHVyZS4NCj4gIC0gSW1wbGVt ZW50IGEgInJ0ZV9idXNfc2lnYnVzX2hhbmRsZXIiIHRvIGl0ZXJhdGUgYWxsIGJ1c2VzIHRvIGZp bmQgYSBidXMNCj4gICAgdG8gaGFuZGxlIHRoZSBmYWlsdXJlLg0KPiAgLSBBZGQgYSBjb3VwbGUg b2YgQVBJcyDigJxydGVfZGV2X2hvdHBsdWdfaGFuZGxlX2VuYWJsZeKAnSBhbmQNCj4gICAg4oCc cnRlX2Rldl9ob3RwbHVnX2hhbmRsZV9kaWFibGXigJ0gdG8gZW5hYmxlL2Rpc2FibGUgaG90cGx1 ZyBoYW5kbGluZy4NCj4gICAgSXQgd2lsbCBtb25pdG9yIHRoZSBzaWdidXMgZXJyb3IgYnkgYSBo YW5kbGVyIHdoaWNoIGlzIHBlci1wcm9jZXNzLg0KPiAgICBCYXNlZCBvbiB0aGUgc2lnbmFsIGV2 ZW50IHByaW5jaXBsZSwgdGhlIGNvbnRyb2wgcGF0aCB0aHJlYWQgYW5kIHRoZQ0KPiAgICBkYXRh IHBhdGggdGhyZWFkIHdpbGwgcmFuZG9tbHkgcmVjZWl2ZSB0aGUgc2lnYnVzIGVycm9yLCBidXQg d2lsbCBjYWxsIHRoZQ0KPiAgICBjb21tb24gc2lnYnVzIHByb2Nlc3MuIFdoZW4gc2lnYnVzIGJl IGNhcHR1cmVkLCBpdCB3aWxsIGNhbGwgdGhlIGFib3ZlIEFQSQ0KPiAgICB0byBmaW5kIGJ1cyB0 byBoYW5kbGUgaXQuDQo+IA0KPiBUaGUgbWVjaGFuaXNtIGNvdWxkIGJlIHVzZWQgYnkgYXBwIG9y IFBNRHMuIEZvciBleGFtcGxlLCB0aGUgd2hvbGUgcHJvY2Vzcw0KPiBvZiBob3RwbHVnIGluIHRl c3RwbWQgaXM6DQo+ICAtIEVuYWJsZSBkZXZpY2UgZXZlbnQgbW9uaXRvci0+RW5hYmxlIGhvdHBs dWcgaGFuZGxlLT5SZWdpc3RlciBldmVudCBjYWxsYmFjaw0KPiAgICAtPmF0dGFjaCBwb3J0LT5z dGFydCBwb3J0LT5zdGFydCBmb3J3YXJkaW5nLT5EZXZpY2UgdW5wbHVnLT5mYWlsdXJlIGhhbmRs ZQ0KPiAgICAtPnN0b3AgZm9yd2FyZGluZy0+c3RvcCBwb3J0LT5jbG9zZSBwb3J0LT5kZXRhY2gg cG9ydC4NCj4gDQo+IFRoaXMgcGF0Y2ggc2V0IHdvdWxkIG5vdCBjb3ZlciBob3RwbHVnIGluc2Vy dCBhbmQgYmluZGluZywgYW5kIGl0IGlzIG9ubHkNCj4gaW1wbGVtZW50IHRoZSBpZ2JfdWlvIGZh aWx1cmUgaGFuZGxlciwgdGhlIHZmaW8gaG90cGx1ZyBmYWlsdXJlIGhhbmRsZXINCj4gd2lsbCBi ZSBpbiBuZXh0IGNvbWluZyBwYXRjaCBzZXQuDQo+IA0KPiBwYXRjaHNldCBoaXN0b3J5Og0KPiB2 MTMtPnYxMjoNCj4gdXNlIGxvY2FsIHZhcmlhYmxlIHRvIHJld3JpdGUgdGhlIGZ1bmMgdG8gYmUg bW9yZSByZWFkYWJsZS4NCj4gYWRkIHNhX2ZsYWcgY2hlY2sgd2hlbiBpbnZva2UgZ2VuZXJpYyBz aWdidXMgaGFuZGxlcg0KPiBtb2RpZnkgc29tZSB0eXBvDQo+IGRlbGV0ZSBuZWVkbGVzcyBoZWxw ZXIgaW4gYXBwDQo+IA0KPiB2MTItPnYxMToNCj4gYWRkIGFuZCBkZWxldGUgc29tZSBjaGVja2lu ZyBhYm91dCBzaWdidXMgcmVjb3Zlci4NCj4gDQo+IHYxMS0+djEwOg0KPiBjaGFuZ2UgdGhlIG9w cyBuYW1lLCBzaW5jZSBib3RoIHVpbyBhbmQgdmZpbyB3aWxsIHVzZSB0aGUgaG90LXVucGx1ZyBv cHMuDQo+IHNpbmNlIHdlIHBsYW4gdG8gYWJhbmRvbiBSVEVfRVRIX0VWRU5UX0lOVFJfUk1WLCBj aGFuZ2UgdG8gdXNlDQo+IFJURV9ERVZfRVZFTlRfUkVNT1ZFLCBzbyBtb2RpZnkgdGhlIGhvdHBs dWcgZXZlbnQgYW5kIGNhbGxiYWNrIHVzYWdlLg0KPiBtb3ZlIHRoZSBpZ2JfdWlvIGZpeGluZyBw YXJ0LCBzaW5jZSBpdCBpcyByYW5kb20gaXNzdWUgYW5kIHNob3VsZCBiZSBjb25zaWRhcmF0ZQ0K PiBhcyBrZXJuZWwgZHJpdmVyIGRlZmVjdCBidXQgbm90IGluY2x1ZGUgYXMgdGhpcyBmYWlsdXJl IGhhbmRsZXIgbWVjaGFuaXNtLg0KPiANCj4gdjEwLT52OToNCj4gbW9kaWZ5IHRoZSBhcGkgbmFt ZSBhbmQgZXhwb3N1cmUgb3V0IGZvciBwdWJsaWMgdXNlLg0KPiBhZGQgaG90cGx1ZyBoYW5kbGUg ZW5hYmxlL2Rpc2FibGUgQVBJcw0KPiByZWZpbmUgY29tbWl0IGxvZw0KPiANCj4gdjktPnY4Og0K PiByZWZpbmUgY29tbWl0IGxvZyB0byBiZSBtb3JlIHJlYWRhYmxlLg0KPiANCj4gdjgtPnY3Og0K PiByZWZpbmUgZXJybm8gcHJvY2VzcyBpbiBzaWdidXMgaGFuZGxlci4NCj4gcmVmaW5lIGlnYiB1 aW8gcmVsZWFzZSBwcm9jZXNzDQo+IA0KPiB2Ny0+djY6DQo+IGRlbGV0ZSBzb21lIHVudXNlZCBw YXJ0DQo+IA0KPiB2Ni0+djU6DQo+IHJlZmluZSBzb21lIGRlc2NyaXB0aW9uIGFib3V0IGJ1cyBv cHMNCj4gcmVmaW5lIGNvbW1pdCBsb2cNCj4gYWRkIHNvbWUgZW50cnkgY2hlY2suDQo+IA0KPiB2 NS0+djQ6DQo+IHNwbGl0IHBhdGNoZXMgdG8gZm9jdXMgb24gdGhlIGZhaWx1cmUgaGFuZGxlLCBy ZW1vdmUgdGhlIGV2ZW50IHVzYWdlDQo+IGJ5IHRlc3RwbWQgdG8gYW5vdGhlciBwYXRjaC4NCj4g Y2hhbmdlIHRoZSBob3RwbHVnIGZhaWx1cmUgaGFuZGxlciBuYW1lLg0KPiByZWZpbmUgdGhlIHNp Z2J1cyBoYW5kbGUgbG9naWMuDQo+IGFkZCBsb2NrIGZvciB1ZGV2IHN0YXRlIGluIGlnYiB1aW8g ZHJpdmVyLg0KPiANCj4gdjQtPnYzOg0KPiBzcGxpdCBwYXRjaGVzIHRvIGJlIHNtYWxsIGFuZCBj bGVhci4NCj4gY2hhbmdlIHRvIHVzZSBuZXcgcGFyYW1ldGVyICItLWhvdHBsdWctbW9kZSIgaW4g dGVzdHBtZCB0byBpZGVudGlmeQ0KPiB0aGUgZWFsIGhvdHBsdWcgYW5kIGV0aGRldiBob3RwbHVn Lg0KPiANCj4gdjMtPnYyOg0KPiBjaGFuZ2UgYnVzIG9wcyBuYW1lIHRvIGJ1c19ob3RwbHVnX2hh bmRsZXIuDQo+IGFkZCBuZXcgQVBJIGFuZCBidXMgb3BzIG9mIGJ1c19zaWduYWxfaGFuZGxlciBk aXN0aW5ndXNoIGhhbmRsZSBnZW5lcmljLg0KPiBzaWdidXMgYW5kIGhvdHBsdWcgc2lnYnVzLg0K PiANCj4gdjItPnYxKHYyMSk6DQo+IHJlZmluZSBzb21lIGRvYyBhbmQgY29tbWl0IGxvZy4NCj4g Zml4IGlnYiB1aW8ga2VybmVsIGlzc3VlIGZvciBjb250cm9sIHBhdGggZmFpbHVyZSByZWJhc2Ug dGVzdHBtZCBjb2RlLg0KPiANCj4gU2luY2UgdGhlIGhvdCBwbHVnIHNvbHV0aW9uIGJlIGRpc2N1 c3NlZCBzZXJ2YWwgYXJvdW5kIGluIHRoZSBwdWJsaWMsDQo+IHRoZSBzY29wZSBiZSBjaGFuZ2Vk IGFuZCB0aGUgcGF0Y2ggc2V0IGJlIHNwbGl0IGludG8gbWFueSB0aW1lcy4gQ29taW5nDQo+IHRv IHRoZSByZWNlbnRseSBSRkMgYW5kIGZlYXR1cmUgZGVzaWduLCBpdCBqdXN0IGZvY3VzIG9uIHRo ZSBob3QgdW5wbHVnDQo+IGZhaWx1cmUgaGFuZGxlciBhdCB0aGlzIHBhdGNoIHNldCwgc28gaW4g b3JkZXIgbGV0IHRoaXMgdG9waWMgbW9yZSBjbGVhcg0KPiBhbmQgZm9jdXMsIHN1bW1hcml6ZSBw cml2b3VycyBwYXRjaCBzZXQgaW4gaGlzdG9yeSDigJx2MSh2MjEp4oCdLCB0aGUgdjIgaGVyZQ0K PiBnbyBhaGVhZCBmb3IgZnVydGhlciB0cmFjay4NCj4gDQo+ICJ2MSgyMSkiID09IHYyMSBhcyBi ZWxvdzoNCj4gdjIxLT52MjA6DQo+IHNwbGl0IGZ1bmN0aW9uIGluIGhvdCB1bnBsdWcgb3BzLg0K PiBzeW5jIGZhaWx1cmUgaGFubGRlIHRvIGZpeCBtdWx0aXBsZSBwcm9jZXNzIGlzc3VlIGZpeCBh dHRhY2ggcG9ydCBpc3N1ZSBmb3IgbXVsdGlwbGUgZGV2aWNlcyBjYXNlLg0KPiBjb21iaW5kIHJt diBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBvbmx5IG9uZS4NCj4gDQo+IHYyMC0+djE5Og0KPiBj bGVhbiB0aGUgY29kZS4NCj4gcmVmaW5lIHRoZSByZW1hcCBsb2dpYyBmb3IgbXVsdGlwbGUgZGV2 aWNlLg0KPiByZW1vdmUgdGhlIGF1dG8gYmluZGluZy4NCj4gDQo+IHYxOS0+MTg6DQo+IG5vdGUg Zm9yIGxpbWl0YXRpb24gb2YgbXVsdGlwbGUgaG90cGx1ZywgZml4IHNvbWUgdHlwbywgc3FlZXpl IHBhdGNoLg0KPiANCj4gdjE4LT52MTU6DQo+IGFkZCBkb2N1bWVudCwgYWRkIHNpZ25hbCBidXMg aGFuZGxlciwgcmVmaW5lIHRoZSBjb2RlIHRvIGJlIG1vcmUgY2xlYXIuDQo+IA0KPiB0aGUgcHJp b3IgcGF0Y2ggaGlzdG9yeSBwbGVhc2UgY2hlY2sgdGhlIHBhdGNoIHNldCAiYWRkIGRldmljZSBl dmVudCBtb25pdG9yIGZyYW1ld29yayIuDQo+IA0KPiBKZWZmIEd1byAoNyk6DQo+ICAgYnVzOiBh ZGQgaG90LXVucGx1ZyBoYW5kbGVyDQo+ICAgYnVzL3BjaTogaW1wbGVtZW50IGhvdC11bnBsdWcg aGFuZGxlciBvcHMNCj4gICBidXM6IGFkZCBzaWdidXMgaGFuZGxlcg0KPiAgIGJ1cy9wY2k6IGlt cGxlbWVudCBzaWdidXMgaGFuZGxlciBvcHMNCj4gICBidXM6IGFkZCBoZWxwZXIgdG8gaGFuZGxl IHNpZ2J1cw0KPiAgIGVhbDogYWRkIGZhaWx1cmUgaGFuZGxlIG1lY2hhbmlzbSBmb3IgaG90LXVu cGx1Zw0KPiAgIGFwcC90ZXN0cG1kOiB1c2UgaG90cGx1ZyBmYWlsdXJlIGhhbmRsZXINCj4gDQo+ ICBhcHAvdGVzdC1wbWQvdGVzdHBtZC5jICAgICAgICAgICAgICAgICAgfCAgODYgKysrKysrKyst LS0tLS0tLQ0KPiAgZG9jL2d1aWRlcy9yZWxfbm90ZXMvcmVsZWFzZV8xOF8wOC5yc3QgIHwgICA1 ICsNCj4gIGRyaXZlcnMvYnVzL3BjaS9wY2lfY29tbW9uLmMgICAgICAgICAgICB8ICA4MiArKysr KysrKysrKysrKysNCj4gIGRyaXZlcnMvYnVzL3BjaS9wY2lfY29tbW9uX3Vpby5jICAgICAgICB8 ICAzMyArKysrKysrDQo+ICBkcml2ZXJzL2J1cy9wY2kvcHJpdmF0ZS5oICAgICAgICAgICAgICAg fCAgMTIgKysrDQo+ICBsaWIvbGlicnRlX2VhbC9ic2RhcHAvZWFsL2VhbF9kZXYuYyAgICAgfCAg MTQgKysrDQo+ICBsaWIvbGlicnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9idXMuYyAgfCAgNDMg KysrKysrKysNCj4gIGxpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxfcHJpdmF0ZS5oICAgICB8ICAz OSArKysrKysrKw0KPiAgbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2luY2x1ZGUvcnRlX2J1cy5oIHwg IDM0ICsrKysrKysNCj4gIGxpYi9saWJydGVfZWFsL2NvbW1vbi9pbmNsdWRlL3J0ZV9kZXYuaCB8 ICAyNiArKysrKw0KPiAgbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9kZXYuYyAgIHwg MTcwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystDQo+ICBsaWIvbGlicnRlX2VhbC9y dGVfZWFsX3ZlcnNpb24ubWFwICAgICAgfCAgIDIgKw0KPiAgMTIgZmlsZXMgY2hhbmdlZCwgNDk5 IGluc2VydGlvbnMoKyksIDQ3IGRlbGV0aW9ucygtKQ0KPiANCj4gLS0NCg0KQWNrZWQtYnk6IEtv bnN0YW50aW4gQW5hbnlldiA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4NCj4gMi43LjQN Cg0K