From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 8CEE01B215 for ; Fri, 5 Apr 2019 00:28:09 +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 orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Apr 2019 15:28:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,309,1549958400"; d="scan'208";a="133078015" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga006.jf.intel.com with ESMTP; 04 Apr 2019 15:28:08 -0700 Received: from fmsmsx126.amr.corp.intel.com (10.18.125.43) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 4 Apr 2019 15:28:07 -0700 Received: from fmsmsx108.amr.corp.intel.com ([169.254.9.216]) by FMSMSX126.amr.corp.intel.com ([169.254.1.215]) with mapi id 14.03.0415.000; Thu, 4 Apr 2019 15:28:07 -0700 From: "Eads, Gage" To: Ola Liljedahl , "stephen@networkplumber.org" CC: "jerinj@marvell.com" , "mczekaj@marvell.com" , nd , "Ananyev, Konstantin" , "Richardson, Bruce" , "dev@dpdk.org" , "olivier.matz@6wind.com" , "arybchenko@solarflare.com" Thread-Topic: [PATCH v7 0/6] Add lock-free ring and mempool handler Thread-Index: AQHU3dM7C6Byp72AjU6cIT29UTs4q6YR7JYAgAGkUICAFAahwIABnJEAgANwc6A= Date: Thu, 4 Apr 2019 22:28:07 +0000 Message-ID: <9184057F7FC11744A2107296B6B8EB1E5421151D@FMSMSX108.amr.corp.intel.com> References: <20190306150342.2894-1-gage.eads@intel.com> <20190318213555.17345-1-gage.eads@intel.com> <9184057F7FC11744A2107296B6B8EB1E54207FC7@FMSMSX108.amr.corp.intel.com> <20190319085123.00df99c2@shemminger-XPS-13-9360> <9184057F7FC11744A2107296B6B8EB1E5420E60C@FMSMSX108.amr.corp.intel.com> <1554200290.11194.8.camel@arm.com> In-Reply-To: <1554200290.11194.8.camel@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNTQ0MDdhNDMtMzQyZS00ZTA4LTgzZmMtODgzYmMxODE0YjZhIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiR2kwK2hNUGhiYzZpZjQ2MDRoRW5pbTh4c1hXR1dqNTU3MVFIemNsREZKQlhHWFlET2hBQVwvb0N6bG9WR29QUWkifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.1.200.106] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v7 0/6] Add lock-free ring and mempool handler 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 Apr 2019 22:28:10 -0000 PiBPbiBNb24sIDIwMTktMDQtMDEgYXQgMTk6MjMgKzAwMDAsIEVhZHMsIEdhZ2Ugd3JvdGU6DQo+ ID4gPg0KPiA+ID4NCj4gPiA+IE9uIE1vbiwgMTggTWFyIDIwMTkgMjE6NDk6NDQgKzAwMDANCj4g PiA+ICJFYWRzLCBHYWdlIiA8Z2FnZS5lYWRzQGludGVsLmNvbT4gd3JvdGU6DQo+ID4gPg0KPiA+ ID4gPg0KPiA+ID4gPiBIaSBhbGwsDQo+ID4gPiA+DQo+ID4gPiA+IEZyaWVuZGx5IHJlbWluZGVy IHRoYXQgaW4gb3JkZXIgdG8gZ2V0IHRoaXMgZmVhdHVyZSBpbnRvIDE5LjA4DQo+ID4gPiA+IChh c3N1bWluZw0KPiA+ID4gZm9sa3MgYWxzbyB3YW50IHRoYXQgOikpLCB0aGUgQVBJIGRlcHJlY2F0 aW9uIG5vdGljZSBuZWVkcyB0byBiZQ0KPiA+ID4gbWVyZ2VkIGludG8gMTkuMDUuDQo+ID4gPiA+ DQo+ID4gPiA+DQo+ID4gPiA+IFRoYW5rcywNCj4gPiA+ID4gR2FnZQ0KPiA+ID4gR2l2ZW4gdGhl IHJlY2VudCBBUEkvQUJJIHN0YWJpbGl0eSBkaXNjdXNzaW9uLCB0aGlzIGlzIHRoZSBraW5kIG9m DQo+ID4gPiBwYXRjaCB0aGF0IHJlYWxseSBuZWVkcyB0byBiZSBleGFtaW5lZCBhbmQganVzdGlm aWVkLg0KPiA+IENhbiB5b3UgcG9pbnQgbWUgdG8gdGhlIGRpc2N1c3Npb24gKGFzc3VtaW5nIGl0 IHdhcyBvbiB0aGUgTUwpPyBJJ20NCj4gPiBhd2FyZSBvZiBGZXJydWgncyBjaGFuZ2VzIHRvIHRo ZSBkb2NzLCBidXQgbm90IHRoZSBkaXNjdXNzaW9uIHlvdQ0KPiByZWZlcmVuY2VkLg0KPiA+DQo+ ID4gVGhlIGxvY2stZnJlZSByaW5nIGZ1bmN0aW9uYWxpdHkgaXRzZWxmIGlzIGEgdmFsdWFibGUg YWRkaXRpb24gdG8NCj4gPiBEUERLLCBwcmltYXJpbHkgYmVjYXVzZSBpdCBsYWNrcyB0aGUgc3Rh bmRhcmQgcmluZydzIG5vbi1wcmVlbXB0aXZlDQo+ID4gY29uc3RyYWludC4gVGhlIG5vbi1wcmVl bXB0aXZlIGNvbnN0cmFpbnQgaXMgaW1wb3J0YW50IGluIGFuDQo+ID4gYXBwbGljYXRpb24gd2l0 aCBib3RoIGhpZ2ggcHJpb3JpdHksIHBlcmZvcm1hbmNlLXNlbnNpdGl2ZSBkYXRhLXBsYW5lDQo+ ID4gY29tcG9uZW50cyBhbmQgbG93LXByaW9yaXR5IGNvbnRyb2wtcGxhbmUgY29tcG9uZW50cy4g VGhpcyB3YXMNCj4gPiBpbXBvcnRhbnQgZW5vdWdoIHRvIHdhcnJhbnQgZnVydGhlciBjbGFyaWZp Y2F0aW9uIHJlY2VudGx5WzFdLCBhbmQgaGFzDQo+ID4gYmVlbiBhIGRpc2N1c3Npb24gdG9waWMg Zm9yIHNvbWUgdGltZVsyXVszXS4NCj4gPg0KPiA+IFRoZSBtb2RpZmllZCBBUEksIHJ0ZV9yaW5n X2dldF9tZW1zaXplKCksIHdhcyBhZGRlZCB0byBhbGxvdyB1c2VycyB0bw0KPiA+IGluaXRpYWxp emUgcmluZ3MgaW4gc2VwYXJhdGVseSBhbGxvY2F0ZWQgbWVtb3J5LiBUaGlzIGZ1bmN0aW9uIGlz bid0DQo+ID4gY2FsbGVkIGluIERQREsncyBleGFtcGxlcy9hcHBzL2RyaXZlcnMsIGFuZCBhIHF1 aWNrIGdvb2dsZSBzZWFyY2gNCj4gPiBkaWRuJ3QgdHVybiB1cCBhbnkgb3BlbiBzb3VyY2UgcHJv amVjdHMgdGhhdCBjYWxsIHRoZSBmdW5jdGlvbiwgc28gSQ0KPiA+IHN1c3BlY3QgdGhhdCBhIG1h am9yaXR5IG9mIHJpbmcgY29kZSB1c2VzIHJ0ZV9yaW5nX2NyZWF0ZSgpIGluc3RlYWQgb2YNCj4g PiBydGVfcmluZ19nZXRfbWVtc2l6ZSgpICsgcnRlX3JpbmdfaW5pdCgpLiBTbyBJIHN1c3BlY3Qg dGhpcyBpbnRlcmZhY2UNCj4gPiBjaGFuZ2Ugd2lsbCBhZmZlY3QgYSBzbWFsbCBwZXJjZW50YWdl IG9mIERQREsgdXNlcnMuDQo+ID4NCj4gPiBBcyBhIHN0cmF3LW1hbiBjb3VudGVyLXByb3Bvc2Fs LCB3ZSBjb3VsZCBpbnN0ZWFkIGludHJvZHVjZSBhDQo+ID4gbG9jay1mcmVlIHNwZWNpZmljIGZ1 bmN0aW9uIHJ0ZV9sZl9yaW5nX2dldF9tZW1zaXplKCkgdGhhdCBsb2NrLWZyZWUNCj4gPiByaW5n IHVzZXJzIHdvdWxkIGNhbGwgaW5zdGVhZCBvZiBydGVfcmluZ19nZXRfbWVtc2l6ZSgpLiBUaGlz IHdvdWxkDQo+ID4gYXZvaWQgdGhlIEFQSSBtb2RpZmljYXRpb24sDQo+ID4gYnV0Og0KPiA+IC0g SXQncyBhd2t3YXJkIHRvIGhhdmUgb25lIHJ0ZV9sZl9yaW5nXyogZnVuY3Rpb24gYW5kIG90aGVy d2lzZSBhY2Nlc3MNCj4gPiB0aGUgbG9jay1mcmVlIHJpbmcgdGhyb3VnaCBydGVfcmluZ18qIGZ1 bmN0aW9ucy4NCj4gPiAtIEl0J3MgYWxzbyBlYXN5IHRvIGVudmlzaW9uIGEgdXNlciBpbmNvcnJl Y3RseSBjYWxsaW5nDQo+ID4gcnRlX3JpbmdfZ2V0X21lbXNpemUoKSByYXRoZXIgdGhhbiBydGVf bGZfcmluZ19nZXRfbWVtc2l6ZSgpIGZvciBhDQo+ID4gbG9jay1mcmVlIHJpbmcsIHNpbmNlIG90 aGVyd2lzZQ0KPiA+IHJ0ZV9yaW5nXyogZnVuY3Rpb25zIGFyZSB1c2VkLiBEUERLIHdvdWxkIGhh dmUgbm8gd2F5IHRvIGRldGVjdCB0aGF0DQo+ID4gdGhlIGFsbG9jYXRlZCBtZW1vcnkgaXMgdG9v IHNtYWxsLCBhbmQgaWYgc3VjaCBhIGJ1ZyBvY2N1cnMgaXQgd291bGQNCj4gPiBtYW5pZmVzdCBp dHNlbGYgYXMgbWVtb3J5IGNvcnJ1cHRpb24uDQo+ID4gLSBDaGFuZ2luZyBydGVfcmluZ19nZXRf bWVtc2l6ZSgpIHRvIHRha2UgYSBmbGFncyBhcmd1bWVudCBtYXkgYmUgdGhlDQo+ID4gYmV0dGVy IGxvbmctdGVybSBkZXNpZ24sIGlmIGFub3RoZXIgZmxhZyBpcyBpbnRyb2R1Y2VkIHRoYXQgbGlr ZXdpc2UNCj4gPiB1c2VzIGEgZGlmZmVyZW50IHJpbmcgc2l6ZS4NCj4gPg0KPiA+IEFub3RoZXIg YXBwcm9hY2ggaXMgdG8gYnJlYWsgb3V0IHRoZSBsb2NrLWZyZWUgcmluZyBpbnRvIGEgZnVsbHkg c2VwYXJhdGUNCj4gQVBJLg0KPiBBcyBpbiB0aGUgUkZDIEkgcG9zdGVkOsKgaHR0cDovL3BhdGNo ZXMuZHBkay5vcmcvcGF0Y2gvNTAwOTUvDQo+IENsZWFuZXIgQVBJLCBzaW1wbGVyIGltcGxlbWVu dGF0aW9uLg0KPiANCj4gPiAgT25lIG9mIHRoZSBnb2FscyBvZiBteSBwYXRjaHNldCB3YXMgdG8g YWxsb3cgYXBwbGljYXRpb25zIHRvIHN3aXRjaCB0byBsb2NrLQ0KPiA+IGZyZWUgcmluZ3Mgd2l0 aCBtaW5pbWFsIGNvZGUgY2hhbmdlOyBJIHRoaW5rIHRoZSB2YWx1ZSBvZiB0aGUgbG9jay1mcmVl IHJpbmcNCj4gPiB3YXJyYW50cyBzdWNoIGFuIGFwcHJvYWNoLg0KPiANCj4gQSBub2JsZSBnb2Fs IGJ1dCBwZXJzb25hbGx5IEkgdGhpbmsgRFBESyBBUEkncyBhbmQgaW1wbGVtZW50YXRpb25zIGFy ZQ0KPiBnZXR0aW5nIG1vcmUgYW5kIG1vcmUgbWVzc3kgYW5kIHRodXMgZGlmZmljdWx0IHRvIHVz ZSBhbmQgZGlmZmljdWx0IHRvDQo+IG1haW50YWluLg0KPiBJcyBpdCBzbyBtdWNoIHdvcnNlIHRv IGhhdmUgc2VwYXJhdGUgYnV0IHN0cnVjdHVyYWxseSBlcXVpdmFsZW50IEFQSSdzPw0KDQpObyAt LSBJIHRoaW5rIGJvdGggYXJlIHZhbGlkIG9wdGlvbnMsIHdpdGggdGhlaXIgb3duIHRyYWRlb2Zm cy4NCg0KPiBZZXMsIGJsb2NraW5nIHZzIG5vbi1ibG9ja2luZyBjYW4gbm8gbG9uZ2VyIGJlIHNl bGVjdGVkIGF0IHJ1bnRpbWUgKHN0YXJ0dXANCj4gdGltZSksIEkgdGhpbmsgdGhpcyBpcyB0aGUg YmlnZ2VzdCBsaW1pdGF0aW9uLg0KDQpSdW4tdGltZSBzZWxlY3Rpb24gd2l0aCB0aGUgTEYgZmxh ZyBtZWFucyB3ZSBjYW4gZWFzaWx5IHJlLXVzZSBhIGxhcmdlIGFtb3VudCBvZiBwcmUtZXhpc3Rp bmcgcmluZyBjb2RlIC0tIGUuZy4gdGhlIHdheSB0aGUgcmluZyB0ZXN0cyBhcmUgcmUtcHVycG9z ZWQgZm9yIGxvY2stZnJlZSByaW5ncyBpbiB0aGlzIHBhdGNoc2V0Lg0KDQpUaGUgaW1wbGVtZW50 YXRpb24gbWF5IG5vdCBiZSBhcyBlYXNpbHkgbWFpbnRhaW5lZCwgYnV0IHdlIGRvbid0IGhhdmUg dG8gbWFpbnRhaW4gTEYtc3BlY2lmaWMgdGVzdHMvYmVuY2htYXJrcy9ldGMuDQoNCk1haW50YWlu ZXJzL3RlY2ggbGVhZHMsIGRvIHknYWxsIGhhdmUgYSBwcmVmZXJlbmNlPw0KDQpUaGFua3MsDQpH YWdlDQo= 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 C5F65A0679 for ; Fri, 5 Apr 2019 00:28:12 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 214E91B217; Fri, 5 Apr 2019 00:28:11 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 8CEE01B215 for ; Fri, 5 Apr 2019 00:28:09 +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 orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Apr 2019 15:28:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,309,1549958400"; d="scan'208";a="133078015" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga006.jf.intel.com with ESMTP; 04 Apr 2019 15:28:08 -0700 Received: from fmsmsx126.amr.corp.intel.com (10.18.125.43) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 4 Apr 2019 15:28:07 -0700 Received: from fmsmsx108.amr.corp.intel.com ([169.254.9.216]) by FMSMSX126.amr.corp.intel.com ([169.254.1.215]) with mapi id 14.03.0415.000; Thu, 4 Apr 2019 15:28:07 -0700 From: "Eads, Gage" To: Ola Liljedahl , "stephen@networkplumber.org" CC: "jerinj@marvell.com" , "mczekaj@marvell.com" , nd , "Ananyev, Konstantin" , "Richardson, Bruce" , "dev@dpdk.org" , "olivier.matz@6wind.com" , "arybchenko@solarflare.com" Thread-Topic: [PATCH v7 0/6] Add lock-free ring and mempool handler Thread-Index: AQHU3dM7C6Byp72AjU6cIT29UTs4q6YR7JYAgAGkUICAFAahwIABnJEAgANwc6A= Date: Thu, 4 Apr 2019 22:28:07 +0000 Message-ID: <9184057F7FC11744A2107296B6B8EB1E5421151D@FMSMSX108.amr.corp.intel.com> References: <20190306150342.2894-1-gage.eads@intel.com> <20190318213555.17345-1-gage.eads@intel.com> <9184057F7FC11744A2107296B6B8EB1E54207FC7@FMSMSX108.amr.corp.intel.com> <20190319085123.00df99c2@shemminger-XPS-13-9360> <9184057F7FC11744A2107296B6B8EB1E5420E60C@FMSMSX108.amr.corp.intel.com> <1554200290.11194.8.camel@arm.com> In-Reply-To: <1554200290.11194.8.camel@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNTQ0MDdhNDMtMzQyZS00ZTA4LTgzZmMtODgzYmMxODE0YjZhIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiR2kwK2hNUGhiYzZpZjQ2MDRoRW5pbTh4c1hXR1dqNTU3MVFIemNsREZKQlhHWFlET2hBQVwvb0N6bG9WR29QUWkifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.1.200.106] Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v7 0/6] Add lock-free ring and mempool handler 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: <20190404222807.Cb-gApDrci3qPG-UvANtrR-vYv_mqVXYJVEsVqbxa28@z> PiBPbiBNb24sIDIwMTktMDQtMDEgYXQgMTk6MjMgKzAwMDAsIEVhZHMsIEdhZ2Ugd3JvdGU6DQo+ ID4gPg0KPiA+ID4NCj4gPiA+IE9uIE1vbiwgMTggTWFyIDIwMTkgMjE6NDk6NDQgKzAwMDANCj4g PiA+ICJFYWRzLCBHYWdlIiA8Z2FnZS5lYWRzQGludGVsLmNvbT4gd3JvdGU6DQo+ID4gPg0KPiA+ ID4gPg0KPiA+ID4gPiBIaSBhbGwsDQo+ID4gPiA+DQo+ID4gPiA+IEZyaWVuZGx5IHJlbWluZGVy IHRoYXQgaW4gb3JkZXIgdG8gZ2V0IHRoaXMgZmVhdHVyZSBpbnRvIDE5LjA4DQo+ID4gPiA+IChh c3N1bWluZw0KPiA+ID4gZm9sa3MgYWxzbyB3YW50IHRoYXQgOikpLCB0aGUgQVBJIGRlcHJlY2F0 aW9uIG5vdGljZSBuZWVkcyB0byBiZQ0KPiA+ID4gbWVyZ2VkIGludG8gMTkuMDUuDQo+ID4gPiA+ DQo+ID4gPiA+DQo+ID4gPiA+IFRoYW5rcywNCj4gPiA+ID4gR2FnZQ0KPiA+ID4gR2l2ZW4gdGhl IHJlY2VudCBBUEkvQUJJIHN0YWJpbGl0eSBkaXNjdXNzaW9uLCB0aGlzIGlzIHRoZSBraW5kIG9m DQo+ID4gPiBwYXRjaCB0aGF0IHJlYWxseSBuZWVkcyB0byBiZSBleGFtaW5lZCBhbmQganVzdGlm aWVkLg0KPiA+IENhbiB5b3UgcG9pbnQgbWUgdG8gdGhlIGRpc2N1c3Npb24gKGFzc3VtaW5nIGl0 IHdhcyBvbiB0aGUgTUwpPyBJJ20NCj4gPiBhd2FyZSBvZiBGZXJydWgncyBjaGFuZ2VzIHRvIHRo ZSBkb2NzLCBidXQgbm90IHRoZSBkaXNjdXNzaW9uIHlvdQ0KPiByZWZlcmVuY2VkLg0KPiA+DQo+ ID4gVGhlIGxvY2stZnJlZSByaW5nIGZ1bmN0aW9uYWxpdHkgaXRzZWxmIGlzIGEgdmFsdWFibGUg YWRkaXRpb24gdG8NCj4gPiBEUERLLCBwcmltYXJpbHkgYmVjYXVzZSBpdCBsYWNrcyB0aGUgc3Rh bmRhcmQgcmluZydzIG5vbi1wcmVlbXB0aXZlDQo+ID4gY29uc3RyYWludC4gVGhlIG5vbi1wcmVl bXB0aXZlIGNvbnN0cmFpbnQgaXMgaW1wb3J0YW50IGluIGFuDQo+ID4gYXBwbGljYXRpb24gd2l0 aCBib3RoIGhpZ2ggcHJpb3JpdHksIHBlcmZvcm1hbmNlLXNlbnNpdGl2ZSBkYXRhLXBsYW5lDQo+ ID4gY29tcG9uZW50cyBhbmQgbG93LXByaW9yaXR5IGNvbnRyb2wtcGxhbmUgY29tcG9uZW50cy4g VGhpcyB3YXMNCj4gPiBpbXBvcnRhbnQgZW5vdWdoIHRvIHdhcnJhbnQgZnVydGhlciBjbGFyaWZp Y2F0aW9uIHJlY2VudGx5WzFdLCBhbmQgaGFzDQo+ID4gYmVlbiBhIGRpc2N1c3Npb24gdG9waWMg Zm9yIHNvbWUgdGltZVsyXVszXS4NCj4gPg0KPiA+IFRoZSBtb2RpZmllZCBBUEksIHJ0ZV9yaW5n X2dldF9tZW1zaXplKCksIHdhcyBhZGRlZCB0byBhbGxvdyB1c2VycyB0bw0KPiA+IGluaXRpYWxp emUgcmluZ3MgaW4gc2VwYXJhdGVseSBhbGxvY2F0ZWQgbWVtb3J5LiBUaGlzIGZ1bmN0aW9uIGlz bid0DQo+ID4gY2FsbGVkIGluIERQREsncyBleGFtcGxlcy9hcHBzL2RyaXZlcnMsIGFuZCBhIHF1 aWNrIGdvb2dsZSBzZWFyY2gNCj4gPiBkaWRuJ3QgdHVybiB1cCBhbnkgb3BlbiBzb3VyY2UgcHJv amVjdHMgdGhhdCBjYWxsIHRoZSBmdW5jdGlvbiwgc28gSQ0KPiA+IHN1c3BlY3QgdGhhdCBhIG1h am9yaXR5IG9mIHJpbmcgY29kZSB1c2VzIHJ0ZV9yaW5nX2NyZWF0ZSgpIGluc3RlYWQgb2YNCj4g PiBydGVfcmluZ19nZXRfbWVtc2l6ZSgpICsgcnRlX3JpbmdfaW5pdCgpLiBTbyBJIHN1c3BlY3Qg dGhpcyBpbnRlcmZhY2UNCj4gPiBjaGFuZ2Ugd2lsbCBhZmZlY3QgYSBzbWFsbCBwZXJjZW50YWdl IG9mIERQREsgdXNlcnMuDQo+ID4NCj4gPiBBcyBhIHN0cmF3LW1hbiBjb3VudGVyLXByb3Bvc2Fs LCB3ZSBjb3VsZCBpbnN0ZWFkIGludHJvZHVjZSBhDQo+ID4gbG9jay1mcmVlIHNwZWNpZmljIGZ1 bmN0aW9uIHJ0ZV9sZl9yaW5nX2dldF9tZW1zaXplKCkgdGhhdCBsb2NrLWZyZWUNCj4gPiByaW5n IHVzZXJzIHdvdWxkIGNhbGwgaW5zdGVhZCBvZiBydGVfcmluZ19nZXRfbWVtc2l6ZSgpLiBUaGlz IHdvdWxkDQo+ID4gYXZvaWQgdGhlIEFQSSBtb2RpZmljYXRpb24sDQo+ID4gYnV0Og0KPiA+IC0g SXQncyBhd2t3YXJkIHRvIGhhdmUgb25lIHJ0ZV9sZl9yaW5nXyogZnVuY3Rpb24gYW5kIG90aGVy d2lzZSBhY2Nlc3MNCj4gPiB0aGUgbG9jay1mcmVlIHJpbmcgdGhyb3VnaCBydGVfcmluZ18qIGZ1 bmN0aW9ucy4NCj4gPiAtIEl0J3MgYWxzbyBlYXN5IHRvIGVudmlzaW9uIGEgdXNlciBpbmNvcnJl Y3RseSBjYWxsaW5nDQo+ID4gcnRlX3JpbmdfZ2V0X21lbXNpemUoKSByYXRoZXIgdGhhbiBydGVf bGZfcmluZ19nZXRfbWVtc2l6ZSgpIGZvciBhDQo+ID4gbG9jay1mcmVlIHJpbmcsIHNpbmNlIG90 aGVyd2lzZQ0KPiA+IHJ0ZV9yaW5nXyogZnVuY3Rpb25zIGFyZSB1c2VkLiBEUERLIHdvdWxkIGhh dmUgbm8gd2F5IHRvIGRldGVjdCB0aGF0DQo+ID4gdGhlIGFsbG9jYXRlZCBtZW1vcnkgaXMgdG9v IHNtYWxsLCBhbmQgaWYgc3VjaCBhIGJ1ZyBvY2N1cnMgaXQgd291bGQNCj4gPiBtYW5pZmVzdCBp dHNlbGYgYXMgbWVtb3J5IGNvcnJ1cHRpb24uDQo+ID4gLSBDaGFuZ2luZyBydGVfcmluZ19nZXRf bWVtc2l6ZSgpIHRvIHRha2UgYSBmbGFncyBhcmd1bWVudCBtYXkgYmUgdGhlDQo+ID4gYmV0dGVy IGxvbmctdGVybSBkZXNpZ24sIGlmIGFub3RoZXIgZmxhZyBpcyBpbnRyb2R1Y2VkIHRoYXQgbGlr ZXdpc2UNCj4gPiB1c2VzIGEgZGlmZmVyZW50IHJpbmcgc2l6ZS4NCj4gPg0KPiA+IEFub3RoZXIg YXBwcm9hY2ggaXMgdG8gYnJlYWsgb3V0IHRoZSBsb2NrLWZyZWUgcmluZyBpbnRvIGEgZnVsbHkg c2VwYXJhdGUNCj4gQVBJLg0KPiBBcyBpbiB0aGUgUkZDIEkgcG9zdGVkOsKgaHR0cDovL3BhdGNo ZXMuZHBkay5vcmcvcGF0Y2gvNTAwOTUvDQo+IENsZWFuZXIgQVBJLCBzaW1wbGVyIGltcGxlbWVu dGF0aW9uLg0KPiANCj4gPiAgT25lIG9mIHRoZSBnb2FscyBvZiBteSBwYXRjaHNldCB3YXMgdG8g YWxsb3cgYXBwbGljYXRpb25zIHRvIHN3aXRjaCB0byBsb2NrLQ0KPiA+IGZyZWUgcmluZ3Mgd2l0 aCBtaW5pbWFsIGNvZGUgY2hhbmdlOyBJIHRoaW5rIHRoZSB2YWx1ZSBvZiB0aGUgbG9jay1mcmVl IHJpbmcNCj4gPiB3YXJyYW50cyBzdWNoIGFuIGFwcHJvYWNoLg0KPiANCj4gQSBub2JsZSBnb2Fs IGJ1dCBwZXJzb25hbGx5IEkgdGhpbmsgRFBESyBBUEkncyBhbmQgaW1wbGVtZW50YXRpb25zIGFy ZQ0KPiBnZXR0aW5nIG1vcmUgYW5kIG1vcmUgbWVzc3kgYW5kIHRodXMgZGlmZmljdWx0IHRvIHVz ZSBhbmQgZGlmZmljdWx0IHRvDQo+IG1haW50YWluLg0KPiBJcyBpdCBzbyBtdWNoIHdvcnNlIHRv IGhhdmUgc2VwYXJhdGUgYnV0IHN0cnVjdHVyYWxseSBlcXVpdmFsZW50IEFQSSdzPw0KDQpObyAt LSBJIHRoaW5rIGJvdGggYXJlIHZhbGlkIG9wdGlvbnMsIHdpdGggdGhlaXIgb3duIHRyYWRlb2Zm cy4NCg0KPiBZZXMsIGJsb2NraW5nIHZzIG5vbi1ibG9ja2luZyBjYW4gbm8gbG9uZ2VyIGJlIHNl bGVjdGVkIGF0IHJ1bnRpbWUgKHN0YXJ0dXANCj4gdGltZSksIEkgdGhpbmsgdGhpcyBpcyB0aGUg YmlnZ2VzdCBsaW1pdGF0aW9uLg0KDQpSdW4tdGltZSBzZWxlY3Rpb24gd2l0aCB0aGUgTEYgZmxh ZyBtZWFucyB3ZSBjYW4gZWFzaWx5IHJlLXVzZSBhIGxhcmdlIGFtb3VudCBvZiBwcmUtZXhpc3Rp bmcgcmluZyBjb2RlIC0tIGUuZy4gdGhlIHdheSB0aGUgcmluZyB0ZXN0cyBhcmUgcmUtcHVycG9z ZWQgZm9yIGxvY2stZnJlZSByaW5ncyBpbiB0aGlzIHBhdGNoc2V0Lg0KDQpUaGUgaW1wbGVtZW50 YXRpb24gbWF5IG5vdCBiZSBhcyBlYXNpbHkgbWFpbnRhaW5lZCwgYnV0IHdlIGRvbid0IGhhdmUg dG8gbWFpbnRhaW4gTEYtc3BlY2lmaWMgdGVzdHMvYmVuY2htYXJrcy9ldGMuDQoNCk1haW50YWlu ZXJzL3RlY2ggbGVhZHMsIGRvIHknYWxsIGhhdmUgYSBwcmVmZXJlbmNlPw0KDQpUaGFua3MsDQpH YWdlDQo=