From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id F3755A046B for ; Thu, 27 Jun 2019 08:03:02 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3AAEF1E25; Thu, 27 Jun 2019 08:03:02 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id E1546F64 for ; Thu, 27 Jun 2019 08:02:59 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Jun 2019 23:02:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,422,1557212400"; d="scan'208,217";a="245701740" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga001.jf.intel.com with ESMTP; 26 Jun 2019 23:02:58 -0700 Received: from fmsmsx158.amr.corp.intel.com (10.18.116.75) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 26 Jun 2019 23:02:58 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx158.amr.corp.intel.com (10.18.116.75) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 26 Jun 2019 23:02:57 -0700 Received: from shsmsx105.ccr.corp.intel.com ([169.254.11.72]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.83]) with mapi id 14.03.0439.000; Thu, 27 Jun 2019 14:02:56 +0800 From: "Pei, Andy" To: David Marchand CC: dev , "Xu, Rosen" Thread-Topic: [dpdk-dev] [PATCH v3 4/4] net/ipn3ke: implementation of statistics Thread-Index: AQHVJn44VRAp4nxNj0GNI6UQHvUghaar/F0A//98dYCAAJ2iUP//fqKAgAN5DpA= Date: Thu, 27 Jun 2019 06:02:55 +0000 Message-ID: <5941F446C088714A85408FA3132CFCBB01038AC1@SHSMSX105.ccr.corp.intel.com> References: <1560246526-264797-3-git-send-email-andy.pei@intel.com> <1560934174-408632-1-git-send-email-andy.pei@intel.com> <1560934174-408632-4-git-send-email-andy.pei@intel.com> <5941F446C088714A85408FA3132CFCBB01037924@SHSMSX105.ccr.corp.intel.com> <5941F446C088714A85408FA3132CFCBB01037A59@SHSMSX105.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] [PATCH v3 4/4] net/ipn3ke: implementation of statistics 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" SGkgRGF2aWQsDQoNClJlcGx5IGlubGluZS4NCg0KDQpGcm9tOiBEYXZpZCBNYXJjaGFuZCBbbWFp bHRvOmRhdmlkLm1hcmNoYW5kQHJlZGhhdC5jb21dDQpTZW50OiBUdWVzZGF5LCBKdW5lIDI1LCAy MDE5IDQ6NTggUE0NClRvOiBQZWksIEFuZHkgPGFuZHkucGVpQGludGVsLmNvbT4NCkNjOiBkZXYg PGRldkBkcGRrLm9yZz47IFh1LCBSb3NlbiA8cm9zZW4ueHVAaW50ZWwuY29tPg0KU3ViamVjdDog UmU6IFtkcGRrLWRldl0gW1BBVENIIHYzIDQvNF0gbmV0L2lwbjNrZTogaW1wbGVtZW50YXRpb24g b2Ygc3RhdGlzdGljcw0KDQpPbiBUdWUsIEp1biAyNSwgMjAxOSBhdCAxMDo1MyBBTSBQZWksIEFu ZHkgPGFuZHkucGVpQGludGVsLmNvbTxtYWlsdG86YW5keS5wZWlAaW50ZWwuY29tPj4gd3JvdGU6 DQpIaSwgTWFyY2hhbmQsDQoNCllvdSBjYW4gY2FsbCBtZSBEYXZpZCA6LSkuDQoNCg0KUmVwbHkg aW4gbGluZS4NCg0KRnJvbTogRGF2aWQgTWFyY2hhbmQgW21haWx0bzpkYXZpZC5tYXJjaGFuZEBy ZWRoYXQuY29tPG1haWx0bzpkYXZpZC5tYXJjaGFuZEByZWRoYXQuY29tPl0NClNlbnQ6IFR1ZXNk YXksIEp1bmUgMjUsIDIwMTkgMzoxNyBQTQ0KVG86IFBlaSwgQW5keSA8YW5keS5wZWlAaW50ZWwu Y29tPG1haWx0bzphbmR5LnBlaUBpbnRlbC5jb20+Pg0KQ2M6IGRldiA8ZGV2QGRwZGsub3JnPG1h aWx0bzpkZXZAZHBkay5vcmc+PjsgWHUsIFJvc2VuIDxyb3Nlbi54dUBpbnRlbC5jb208bWFpbHRv OnJvc2VuLnh1QGludGVsLmNvbT4+DQpTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjMg NC80XSBuZXQvaXBuM2tlOiBpbXBsZW1lbnRhdGlvbiBvZiBzdGF0aXN0aWNzDQoNCg0KDQpPbiBU dWUsIEp1biAyNSwgMjAxOSBhdCA5OjEwIEFNIFBlaSwgQW5keSA8YW5keS5wZWlAaW50ZWwuY29t PG1haWx0bzphbmR5LnBlaUBpbnRlbC5jb20+PiB3cm90ZToNCkZyb206IERhdmlkIE1hcmNoYW5k IFttYWlsdG86ZGF2aWQubWFyY2hhbmRAcmVkaGF0LmNvbTxtYWlsdG86ZGF2aWQubWFyY2hhbmRA cmVkaGF0LmNvbT5dDQpTZW50OiBXZWRuZXNkYXksIEp1bmUgMTksIDIwMTkgNTowNiBQTQ0KVG86 IFBlaSwgQW5keSA8YW5keS5wZWlAaW50ZWwuY29tPG1haWx0bzphbmR5LnBlaUBpbnRlbC5jb20+ Pg0KQ2M6IGRldiA8ZGV2QGRwZGsub3JnPG1haWx0bzpkZXZAZHBkay5vcmc+PjsgWHUsIFJvc2Vu IDxyb3Nlbi54dUBpbnRlbC5jb208bWFpbHRvOnJvc2VuLnh1QGludGVsLmNvbT4+DQpTdWJqZWN0 OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjMgNC80XSBuZXQvaXBuM2tlOiBpbXBsZW1lbnRhdGlv biBvZiBzdGF0aXN0aWNzDQoNCg0KDQpPbiBXZWQsIEp1biAxOSwgMjAxOSBhdCAxMDo1NiBBTSBB bmR5IFBlaSA8YW5keS5wZWlAaW50ZWwuY29tPG1haWx0bzphbmR5LnBlaUBpbnRlbC5jb20+PiB3 cm90ZToNClRoaXMgcGF0Y2ggaW1wbGVtZW50ZSBzdGF0aXN0aWNzIHJlYWQgYW5kIHJlc2V0DQpm dW5jdGlvbiBmb3IgaXBuM2tlLg0KDQpGaXhlczogNzBkNmI3ZjU1MGY0ICgibmV0L2lwbjNrZTog YWRkIHJlcHJlc2VudG9yIikNCkNjOiByb3Nlbi54dUBpbnRlbC5jb208bWFpbHRvOnJvc2VuLnh1 QGludGVsLmNvbT4NCg0KU2lnbmVkLW9mZi1ieTogQW5keSBQZWkgPGFuZHkucGVpQGludGVsLmNv bTxtYWlsdG86YW5keS5wZWlAaW50ZWwuY29tPj4NCi0tLQ0KIGRyaXZlcnMvbmV0L2lwbjNrZS9p cG4za2VfcmVwcmVzZW50b3IuYyB8IDM0NDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr LQ0KIDEgZmlsZSBjaGFuZ2VkLCAzNDMxIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pDQoN CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pcG4za2UvaXBuM2tlX3JlcHJlc2VudG9yLmMgYi9k cml2ZXJzL25ldC9pcG4za2UvaXBuM2tlX3JlcHJlc2VudG9yLmMNCmluZGV4IGIxNjZiOGYuLmVk ODJlZTcgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9pcG4za2UvaXBuM2tlX3JlcHJlc2VudG9y LmMNCisrKyBiL2RyaXZlcnMvbmV0L2lwbjNrZS9pcG4za2VfcmVwcmVzZW50b3IuYw0KQEAgLTMs NiArMyw3IEBADQogICovDQoNCiAjaW5jbHVkZSA8c3RkaW50Lmg+DQorI2luY2x1ZGUgPHVuaXN0 ZC5oPg0KDQogI2luY2x1ZGUgPHJ0ZV9idXNfcGNpLmg+DQogI2luY2x1ZGUgPHJ0ZV9ldGhkZXYu aD4NCkBAIC0yOTcsMzEgKzI5OCwzNDUyIEBADQogew0KIH0NCg0KKy8qIFN0YXRpc3RpY3MgY29s bGVjdGVkIGJ5IGVhY2ggcG9ydCwgVlNJLCBWRUIsIGFuZCBTLWNoYW5uZWwgKi8NCitzdHJ1Y3Qg aXBuM2tlX3Jwc3RfZXRoX3N0YXRzIHsNCisgICAgICAgdWludDY0X3QgdHhfYnl0ZXM7ICAgICAg ICAgICAgICAgLyogZ290YyAqLw0KKyAgICAgICB1aW50NjRfdCB0eF9tdWx0aWNhc3Q7ICAgICAg ICAgICAvKiBtcHRjICovDQorICAgICAgIHVpbnQ2NF90IHR4X2Jyb2FkY2FzdDsgICAgICAgICAg IC8qIGJwdGMgKi8NCisgICAgICAgdWludDY0X3QgdHhfdW5pY2FzdDsgICAgICAgICAgICAgLyog dXB0YyAqLw0KKyAgICAgICB1aW50NjRfdCB0eF9kaXNjYXJkczsgICAgICAgICAgICAvKiB0ZHBj ICovDQorICAgICAgIHVpbnQ2NF90IHR4X2Vycm9yczsgICAgICAgICAgICAgIC8qIHRlcGMgKi8N CisgICAgICAgdWludDY0X3QgcnhfYnl0ZXM7ICAgICAgICAgICAgICAgLyogZ29yYyAqLw0KKyAg ICAgICB1aW50NjRfdCByeF9tdWx0aWNhc3Q7ICAgICAgICAgICAvKiBtcHJjICovDQorICAgICAg IHVpbnQ2NF90IHJ4X2Jyb2FkY2FzdDsgICAgICAgICAgIC8qIGJwcmMgKi8NCisgICAgICAgdWlu dDY0X3QgcnhfdW5pY2FzdDsgICAgICAgICAgICAgLyogdXByYyAqLw0KKyAgICAgICB1aW50NjRf dCByeF9kaXNjYXJkczsgICAgICAgICAgICAvKiByZHBjICovDQorICAgICAgIHVpbnQ2NF90IHJ4 X3Vua25vd25fcHJvdG9jb2w7ICAgIC8qIHJ1cHAgKi8NCit9Ow0KKw0KKy8qIHN0b3JlIHN0YXRp c3RpY3MgbmFtZXMgYW5kIGl0cyBvZmZzZXQgaW4gc3RhdHMgc3RydWN0dXJlICovDQorc3RydWN0 IGlwbjNrZV9ycHN0X3hzdGF0c19uYW1lX29mZnNldCB7DQorICAgICAgIGNoYXIgbmFtZVtSVEVf RVRIX1hTVEFUU19OQU1FX1NJWkVdOw0KKyAgICAgICB1bnNpZ25lZCBpbnQgb2Zmc2V0Ow0KK307 DQorDQorc3RhdGljIGNvbnN0IHN0cnVjdCBpcG4za2VfcnBzdF94c3RhdHNfbmFtZV9vZmZzZXQN CitpcG4za2VfcnBzdF9zdGF0c19zdHJpbmdzW10gPSB7DQorICAgICAgIHsidHhfbXVsdGljYXN0 X3BhY2tldHMiLCAgICAgICAgICBvZmZzZXRvZihzdHJ1Y3QgaXBuM2tlX3Jwc3RfZXRoX3N0YXRz LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eF9tdWx0aWNhc3QpfSwNCisgICAgICAgeyJ0eF9icm9hZGNhc3RfcGFja2V0cyIsICAgICAg ICAgIG9mZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9ldGhfc3RhdHMsDQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR4X2Jyb2FkY2FzdCl9 LA0KKyAgICAgICB7InR4X3VuaWNhc3RfcGFja2V0cyIsICAgICAgICAgICAgb2Zmc2V0b2Yoc3Ry dWN0IGlwbjNrZV9ycHN0X2V0aF9zdGF0cywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHhfdW5pY2FzdCl9LA0KKyAgICAgICB7InR4X2Ry b3BwZWQiLCAgICAgICAgICAgICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2V0 aF9zdGF0cywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHhfZGlzY2FyZHMpfSwNCisgICAgICAgeyJyeF9tdWx0aWNhc3RfcGFja2V0cyIs ICAgICAgICAgIG9mZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9ldGhfc3RhdHMsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4X211bHRp Y2FzdCl9LA0KKyAgICAgICB7InJ4X2Jyb2FkY2FzdF9wYWNrZXRzIiwgICAgICAgICAgb2Zmc2V0 b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2V0aF9zdGF0cywNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnhfYnJvYWRjYXN0KX0sDQorICAgICAg IHsicnhfdW5pY2FzdF9wYWNrZXRzIiwgICAgICAgICAgICBvZmZzZXRvZihzdHJ1Y3QgaXBuM2tl X3Jwc3RfZXRoX3N0YXRzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICByeF91bmljYXN0KX0sDQorICAgICAgIHsicnhfZHJvcHBlZCIsICAg ICAgICAgICAgICAgICAgICBvZmZzZXRvZihzdHJ1Y3QgaXBuM2tlX3Jwc3RfZXRoX3N0YXRzLA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy eF9kaXNjYXJkcyl9LA0KKyAgICAgICB7InJ4X3Vua25vd25fcHJvdG9jb2xfcGFja2V0cyIsIG9m ZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9ldGhfc3RhdHMsDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4X3Vua25vd25fcHJvdG9jb2wp fSwNCg0KUGxlYXNlIHNlZSByZWNlbnQgZml4ZXMgb24gaTQwZSBhbmQgaWNlLg0KdHhfZHJvcHBl ZCAtPiB0eF9kcm9wcGVkX3BhY2tldHMNCnJ4X2Ryb3BwZWQgLT4gcnhfZHJvcHBlZF9wYWNrZXRz DQoNCmh0dHBzOi8vZ2l0LmRwZGsub3JnL25leHQvZHBkay1uZXh0LW5ldC1pbnRlbC9jb21taXQv P2lkPWU2MWUyNTIzM2U5ZGZjZDUzODZkODNhYjk4ODc5MGQ5ZDViZDk0MDANCg0KDQo+Pj4+IERv ICB0aGlzIGluIHY0Lg0KDQorfTsNCisNCisjZGVmaW5lIElQTjNLRV9SUFNUX0VUSF9YU1RBVFNf Q05UIChzaXplb2YoaXBuM2tlX3Jwc3Rfc3RhdHNfc3RyaW5ncykgLyBcDQorICAgICAgICAgICAg ICAgc2l6ZW9mKGlwbjNrZV9ycHN0X3N0YXRzX3N0cmluZ3NbMF0pKQ0KKw0KKyNkZWZpbmUgSVBO M0tFX1JQU1RfUFJJT19YU1RBVFNfQ05UICAgIDgNCisNCisvKiBTdGF0aXN0aWNzIGNvbGxlY3Rl ZCBieSB0aGUgTUFDICovDQorc3RydWN0IGlwbjNrZV9ycHN0X2h3X3BvcnRfc3RhdHMgew0KKyAg ICAgICAvKiBldGggc3RhdHMgY29sbGVjdGVkIGJ5IHRoZSBwb3J0ICovDQorICAgICAgIHN0cnVj dCBpcG4za2VfcnBzdF9ldGhfc3RhdHMgZXRoOw0KKw0KKyAgICAgICAvKiBhZGRpdGlvbmFsIHBv cnQgc3BlY2lmaWMgc3RhdHMgKi8NCisgICAgICAgdWludDY0X3QgdHhfZHJvcHBlZF9saW5rX2Rv d247DQorICAgICAgIHVpbnQ2NF90IGNyY19lcnJvcnM7DQorICAgICAgIHVpbnQ2NF90IGlsbGVn YWxfYnl0ZXM7DQorICAgICAgIHVpbnQ2NF90IGVycm9yX2J5dGVzOw0KKyAgICAgICB1aW50NjRf dCBtYWNfbG9jYWxfZmF1bHRzOw0KKyAgICAgICB1aW50NjRfdCBtYWNfcmVtb3RlX2ZhdWx0czsN CisgICAgICAgdWludDY0X3QgcnhfbGVuZ3RoX2Vycm9yczsNCisgICAgICAgdWludDY0X3QgbGlu a194b25fcng7DQorICAgICAgIHVpbnQ2NF90IGxpbmtfeG9mZl9yeDsNCisgICAgICAgdWludDY0 X3QgcHJpb3JpdHlfeG9uX3J4W0lQTjNLRV9SUFNUX1BSSU9fWFNUQVRTX0NOVF07DQorICAgICAg IHVpbnQ2NF90IHByaW9yaXR5X3hvZmZfcnhbSVBOM0tFX1JQU1RfUFJJT19YU1RBVFNfQ05UXTsN CisgICAgICAgdWludDY0X3QgbGlua194b25fdHg7DQorICAgICAgIHVpbnQ2NF90IGxpbmtfeG9m Zl90eDsNCisgICAgICAgdWludDY0X3QgcHJpb3JpdHlfeG9uX3R4W0lQTjNLRV9SUFNUX1BSSU9f WFNUQVRTX0NOVF07DQorICAgICAgIHVpbnQ2NF90IHByaW9yaXR5X3hvZmZfdHhbSVBOM0tFX1JQ U1RfUFJJT19YU1RBVFNfQ05UXTsNCisgICAgICAgdWludDY0X3QgcHJpb3JpdHlfeG9uXzJfeG9m ZltJUE4zS0VfUlBTVF9QUklPX1hTVEFUU19DTlRdOw0KKyAgICAgICB1aW50NjRfdCByeF9zaXpl XzY0Ow0KKyAgICAgICB1aW50NjRfdCByeF9zaXplXzY1XzEyNzsNCisgICAgICAgdWludDY0X3Qg cnhfc2l6ZV8xMjhfMjU1Ow0KKyAgICAgICB1aW50NjRfdCByeF9zaXplXzI1Nl81MTE7DQorICAg ICAgIHVpbnQ2NF90IHJ4X3NpemVfNTEyXzEwMjM7DQorICAgICAgIHVpbnQ2NF90IHJ4X3NpemVf MTAyNF8xNTE4Ow0KKyAgICAgICB1aW50NjRfdCByeF9zaXplX2JpZzsNCisgICAgICAgdWludDY0 X3QgcnhfdW5kZXJzaXplOw0KKyAgICAgICB1aW50NjRfdCByeF9mcmFnbWVudHM7DQorICAgICAg IHVpbnQ2NF90IHJ4X292ZXJzaXplOw0KKyAgICAgICB1aW50NjRfdCByeF9qYWJiZXI7DQorICAg ICAgIHVpbnQ2NF90IHR4X3NpemVfNjQ7DQorICAgICAgIHVpbnQ2NF90IHR4X3NpemVfNjVfMTI3 Ow0KKyAgICAgICB1aW50NjRfdCB0eF9zaXplXzEyOF8yNTU7DQorICAgICAgIHVpbnQ2NF90IHR4 X3NpemVfMjU2XzUxMTsNCisgICAgICAgdWludDY0X3QgdHhfc2l6ZV81MTJfMTAyMzsNCisgICAg ICAgdWludDY0X3QgdHhfc2l6ZV8xMDI0XzE1MTg7DQorICAgICAgIHVpbnQ2NF90IHR4X3NpemVf MTUxOV90b19tYXg7DQorICAgICAgIHVpbnQ2NF90IG1hY19zaG9ydF9wYWNrZXRfZHJvcHBlZDsN CisgICAgICAgdWludDY0X3QgY2hlY2tzdW1fZXJyb3I7DQorICAgICAgIC8qIGZsb3cgZGlyZWN0 b3Igc3RhdHMgKi8NCisgICAgICAgdWludDY0X3QgZmRfYXRyX21hdGNoOw0KKyAgICAgICB1aW50 NjRfdCBmZF9zYl9tYXRjaDsNCisgICAgICAgdWludDY0X3QgZmRfYXRyX3R1bm5lbF9tYXRjaDsN CisgICAgICAgdWludDMyX3QgZmRfYXRyX3N0YXR1czsNCisgICAgICAgdWludDMyX3QgZmRfc2Jf c3RhdHVzOw0KKyAgICAgICAvKiBFRUUgTFBJICovDQorICAgICAgIHVpbnQzMl90IHR4X2xwaV9z dGF0dXM7DQorICAgICAgIHVpbnQzMl90IHJ4X2xwaV9zdGF0dXM7DQorICAgICAgIHVpbnQ2NF90 IHR4X2xwaV9jb3VudDsNCisgICAgICAgdWludDY0X3QgcnhfbHBpX2NvdW50Ow0KK307DQorDQor c3RhdGljIGNvbnN0IHN0cnVjdCBpcG4za2VfcnBzdF94c3RhdHNfbmFtZV9vZmZzZXQNCitpcG4z a2VfcnBzdF9od19wb3J0X3N0cmluZ3NbXSA9IHsNCisgICAgICAgeyJ0eF9saW5rX2Rvd25fZHJv cHBlZCIsICAgICAgb2Zmc2V0b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2h3X3BvcnRfc3RhdHMsDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eF9kcm9wcGVk X2xpbmtfZG93bil9LA0KKyAgICAgICB7InJ4X2NyY19lcnJvcnMiLCAgICAgICAgICAgICBvZmZz ZXRvZihzdHJ1Y3QgaXBuM2tlX3Jwc3RfaHdfcG9ydF9zdGF0cywNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyY19lcnJvcnMpfSwNCisgICAgICAgeyJy eF9pbGxlZ2FsX2J5dGVfZXJyb3JzIiwgICAgb2Zmc2V0b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2h3 X3BvcnRfc3RhdHMsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpbGxlZ2FsX2J5dGVzKX0sDQorICAgICAgIHsicnhfZXJyb3JfYnl0ZXMiLCAgICAgICAg ICAgIG9mZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9od19wb3J0X3N0YXRzLA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JfYnl0ZXMpfSwNCisg ICAgICAgeyJtYWNfbG9jYWxfZXJyb3JzIiwgICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IGlwbjNr ZV9ycHN0X2h3X3BvcnRfc3RhdHMsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtYWNfbG9jYWxfZmF1bHRzKX0sDQorICAgICAgIHsibWFjX3JlbW90ZV9l cnJvcnMiLCAgICAgICAgIG9mZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9od19wb3J0X3N0YXRz LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFjX3Jl bW90ZV9mYXVsdHMpfSwNCisgICAgICAgeyJyeF9sZW5ndGhfZXJyb3JzIiwgICAgICAgICAgb2Zm c2V0b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2h3X3BvcnRfc3RhdHMsDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeF9sZW5ndGhfZXJyb3JzKX0sDQorICAg ICAgIHsidHhfeG9uX3BhY2tldHMiLCAgICAgICAgICAgIG9mZnNldG9mKHN0cnVjdCBpcG4za2Vf cnBzdF9od19wb3J0X3N0YXRzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbGlua194b25fdHgpfSwNCisgICAgICAgeyJyeF94b25fcGFja2V0cyIsICAg ICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2h3X3BvcnRfc3RhdHMsDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rX3hvbl9yeCl9 LA0KKyAgICAgICB7InR4X3hvZmZfcGFja2V0cyIsICAgICAgICAgICBvZmZzZXRvZihzdHJ1Y3Qg aXBuM2tlX3Jwc3RfaHdfcG9ydF9zdGF0cywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGxpbmtfeG9mZl90eCl9LA0KKyAgICAgICB7InJ4X3hvZmZfcGFj a2V0cyIsICAgICAgICAgICBvZmZzZXRvZihzdHJ1Y3QgaXBuM2tlX3Jwc3RfaHdfcG9ydF9zdGF0 cywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtf eG9mZl9yeCl9LA0KKyAgICAgICB7InJ4X3NpemVfNjRfcGFja2V0cyIsICAgICAgICBvZmZzZXRv ZihzdHJ1Y3QgaXBuM2tlX3Jwc3RfaHdfcG9ydF9zdGF0cywNCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ4X3NpemVfNjQpfSwNCisgICAgICAgeyJyeF9z aXplXzY1X3RvXzEyN19wYWNrZXRzIiwgb2Zmc2V0b2Yoc3RydWN0IGlwbjNrZV9ycHN0X2h3X3Bv cnRfc3RhdHMsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICByeF9zaXplXzY1XzEyNyl9LA0KKyAgICAgICB7InJ4X3NpemVfMTI4X3RvXzI1NV9wYWNrZXRz IiwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IGlwbjNr ZV9ycHN0X2h3X3BvcnRfc3RhdHMsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHJ4X3NpemVfMTI4XzI1NSl9LA0KKyAgICAgICB7InJ4X3NpemVfMjU2X3RvXzUxMV9w YWNrZXRzIiwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0 IGlwbjNrZV9ycHN0X2h3X3BvcnRfc3RhdHMsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJ4X3NpemVfMjU2XzUxMSl9LA0KKyAgICAgICB7InJ4X3NpemVfNTEyX3Rv XzEwMjNfcGFja2V0cyIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldG9m KHN0cnVjdCBpcG4za2VfcnBzdF9od19wb3J0X3N0YXRzLA0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICByeF9zaXplXzUxMl8xMDIzKX0sDQorICAgICAgIHsicnhfc2l6 ZV8xMDI0X3RvXzE1MThfcGFja2V0cyIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IG9mZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9od19wb3J0X3N0YXRzLA0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeF9zaXplXzEwMjRfMTUxOCl9LA0KKyAgICAg ICB7InJ4X3NpemVfMTUxOV90b19tYXhfcGFja2V0cyIsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG9mZnNldG9mKHN0cnVjdCBpcG4za2VfcnBzdF9od19wb3J0X3N0YXRzLA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByeF9zaXplX2JpZyl9LA0KDQpK dXN0IGEgbm90ZSwgYnV0IHRob3NlIHN0YXRzIHdvbid0IHdvcmsgd2l0aCB0aGUgY3VycmVudCB3 YXkgb3ZzIGxvb2tzIGF0IHBlciBzaXplIGNvdW50ZXJzLg0KDQo+Pj4+IEp1c3Qga2VlcCB0aGlz IGluIHRoZSBzYW1lIHdheSB3aXRoIEk0MEUgY3VycmVudGx5Lg0KDQoNCkxvb2sgYXQgdGhlIGk0 MGUgc3RhdHM6DQogICAgICAgIHsicnhfc2l6ZV8xNTIzX3RvX21heF9wYWNrZXRzIiwgb2Zmc2V0 b2Yoc3RydWN0IGk0MGVfaHdfcG9ydF9zdGF0cywNCiAgICAgICAgICAgICAgICByeF9zaXplX2Jp Zyl9LA0KDQpUaGVuIGxvb2sgYXQgb3ZzIG1hcHBpbmcgb24gdG9wIG9mIHRoaXM6DQojZGVmaW5l IFhTVEFUX1JYXzE1MjNfVE9fTUFYX1BBQ0tFVFMgICAgICJyeF9zaXplXzE1MjNfdG9fbWF4X3Bh Y2tldHMiDQogICAgICAgIH0gZWxzZSBpZiAoc3RyY21wKFhTVEFUX1JYXzE1MjNfVE9fTUFYX1BB Q0tFVFMsIG5hbWVzW2ldLm5hbWUpID09IDApIHsNCiAgICAgICAgICAgIHN0YXRzLT5yeF8xNTIz X3RvX21heF9wYWNrZXRzID0geHN0YXRzW2ldLnZhbHVlOw0KDQpIZXJlLCB5b3VyIHN0YXRzIG5h bWUgaXMgInJ4X3NpemVfMTUxOV90b19tYXhfcGFja2V0cyIsIG92cyB3b24ndCBjYXRjaCB0aG9z ZSBzdGF0cyBmb3IgaXBuM2tlLg0KDQoNCk1heWJlIHlvdSBkb24ndCB3YW50IHRvIHN1cHBvcnQg b3ZzIHdpdGggdGhpcyBuaWMgYW5kL29yIHRoZSBodyBiZWhhdmVzIHRoaXMgd2F5IGFuZCB5b3Ug Y2FuIGRvIG5vdGhpbmcgYWJvdXQgaXQuDQpCdXQgZG9uJ3QgcmVwbHkgInNhbWUgYXMgaTQwZSIu DQoNClNvcnJ5LCBpdCBzZWVtcyBJIG1pc3VuZGVyc3RhbmQgeW91ciBwb2ludC4NCkZvciBpcG4z a2UsIGN1cnJlbnRseSwgdGhlIGhhcmR3YXJlIGRvZXMgbm90IHN1cHBvcnQgc3RhdGlzdGljcyBm b3IgcGFja2V0cyB3aXRoIHRoZSBsZW5ndGggYmV0d2VlbiAxMDI0IGFuZCAxNTIzLCBhbmQgcGFj a2V0cyB3aXRoIGxlbmd0aCBvdmVyIDE1MjMuDQpJcG4za2UgaGFyZHdhcmUgbm93IHN1cHBvcnRz IHN0YXRpc3RpY3MgZm9yIHBhY2tldHMgd2l0aCB0aGUgbGVuZ3RoIGJldHdlZW4gMTAyNCBhbmQg MTUxOCwgYW5kIHBhY2tldHMgd2l0aCBsZW5ndGggb3ZlciAxNTE5Lg0KInNhbWUgYXMgaTQwZSIg aGVyZSBtZWFucyB0aGF0IGlzIGl0IE9LIHRvIGxlYXZlIHRoaXMgc3RhdHMgbmFtZSB0aGUgc2Ft ZSBwYXR0ZXJuIHdpdGggaTQwZT8NCg0KWWVzIHRoaXMgaXMgb2suDQoNCkkganVzdCB3YW50ZWQg dG8gbWFrZSBjbGVhciB0aGF0IHdlIGhhdmUgYSBnYXAgaW4gT1ZTLg0KaXBuM2tlIGlzIG5vdCB0 aGUgb25seSBody9kcml2ZXIuDQoNCldlIHdpbGwgcHJvYmFibHkgbmVlZCB0byBkbyBzb21ldGhp bmcgZWl0aGVyIG9uIGRwZGsgb3Igb24gb3ZzIHNpZGUgYXQgc29tZSBwb2ludC4NCg0KSXQgc2Vl bXMgSSBjYW4gZG8gbGl0dGxlIGluIERQREsuDQoNCg0KLS0NCkRhdmlkIE1hcmNoYW5kDQo=