From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 196F07D4F for ; Wed, 23 Aug 2017 23:04:49 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Aug 2017 14:04:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.41,417,1498546800"; d="scan'208";a="893485253" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by FMSMGA003.fm.intel.com with ESMTP; 23 Aug 2017 14:04:48 -0700 Received: from fmsmsx112.amr.corp.intel.com (10.18.116.6) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 23 Aug 2017 14:04:48 -0700 Received: from fmsmsx113.amr.corp.intel.com ([169.254.13.140]) by FMSMSX112.amr.corp.intel.com ([169.254.5.197]) with mapi id 14.03.0319.002; Wed, 23 Aug 2017 14:04:47 -0700 From: "Wiles, Keith" To: "Carrillo, Erik G" CC: "rsanford@akamai.com" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH 0/3] *** timer library enhancements *** Thread-Index: AQHTHB7TZLeEfa+ZwEqSjr9qjq35yqKSfqeAgAAVmgCAAAihgIAALDGAgAAa6wA= Date: Wed, 23 Aug 2017 21:04:47 +0000 Message-ID: <1ECD294B-EE81-4AFC-A838-C58B7379FB31@intel.com> References: <1503499644-29432-1-git-send-email-erik.g.carrillo@intel.com> <3F9B5E47-8083-443E-96EE-CBC41695BE43@intel.com> <28C555FD-9BAB-4A6D-BB9B-37BD42B750AD@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.254.81.250] Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH 0/3] *** timer library enhancements *** 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: Wed, 23 Aug 2017 21:04:50 -0000 DQo+IE9uIEF1ZyAyMywgMjAxNywgYXQgMjoyOCBQTSwgQ2FycmlsbG8sIEVyaWsgRyA8ZXJpay5n LmNhcnJpbGxvQGludGVsLmNvbT4gd3JvdGU6DQo+IA0KPj4gDQo+PiAtLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KPj4gRnJvbTogV2lsZXMsIEtlaXRoDQo+PiBTZW50OiBXZWRuZXNkYXksIEF1 Z3VzdCAyMywgMjAxNyAxMTo1MCBBTQ0KPj4gVG86IENhcnJpbGxvLCBFcmlrIEcgPGVyaWsuZy5j YXJyaWxsb0BpbnRlbC5jb20+DQo+PiBDYzogcnNhbmZvcmRAYWthbWFpLmNvbTsgZGV2QGRwZGsu b3JnDQo+PiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggMC8zXSAqKiogdGltZXIgbGli cmFyeSBlbmhhbmNlbWVudHMgKioqDQo+PiANCj4+IA0KPj4+IE9uIEF1ZyAyMywgMjAxNywgYXQg MTE6MTkgQU0sIENhcnJpbGxvLCBFcmlrIEcgPGVyaWsuZy5jYXJyaWxsb0BpbnRlbC5jb20+DQo+ PiB3cm90ZToNCj4+PiANCj4+PiANCj4+PiANCj4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4+Pj4gRnJvbTogV2lsZXMsIEtlaXRoDQo+Pj4+IFNlbnQ6IFdlZG5lc2RheSwgQXVndXN0 IDIzLCAyMDE3IDEwOjAyIEFNDQo+Pj4+IFRvOiBDYXJyaWxsbywgRXJpayBHIDxlcmlrLmcuY2Fy cmlsbG9AaW50ZWwuY29tPg0KPj4+PiBDYzogcnNhbmZvcmRAYWthbWFpLmNvbTsgZGV2QGRwZGsu b3JnDQo+Pj4+IFN1YmplY3Q6IFJlOiBbZHBkay1kZXZdIFtQQVRDSCAwLzNdICoqKiB0aW1lciBs aWJyYXJ5IGVuaGFuY2VtZW50cw0KPj4+PiAqKioNCj4+Pj4gDQo+Pj4+IA0KPj4+Pj4gT24gQXVn IDIzLCAyMDE3LCBhdCA5OjQ3IEFNLCBHYWJyaWVsIENhcnJpbGxvDQo+Pj4+PiA8ZXJpay5nLmNh cnJpbGxvQGludGVsLmNvbT4NCj4+Pj4gd3JvdGU6DQo+Pj4+PiANCj4+Pj4+IEluIHRoZSBjdXJy ZW50IGltcGxlbWVudGF0aW9uIG9mIHRoZSBEUERLIHRpbWVyIGxpYnJhcnksIHRpbWVycyBjYW4N Cj4+Pj4+IGJlIGNyZWF0ZWQgYW5kIHNldCB0byBiZSBoYW5kbGVkIGJ5IGEgdGFyZ2V0IGxjb3Jl IGJ5IGFkZGluZyBpdCB0byBhDQo+Pj4+PiBza2lwbGlzdCB0aGF0IGNvcnJlc3BvbmRzIHRvIHRo YXQgbGNvcmUuICBIb3dldmVyLCBpZiBhbiBhcHBsaWNhdGlvbg0KPj4+Pj4gZW5hYmxlcyBtdWx0 aXBsZSBsY29yZXMsIGFuZCBlYWNoIG9mIHRoZXNlIGxjb3JlcyByZXBlYXRlZGx5DQo+Pj4+PiBh dHRlbXB0cyB0byBpbnN0YWxsIHRpbWVycyBvbiB0aGUgc2FtZSB0YXJnZXQgbGNvcmUsIG92ZXJh bGwNCj4+Pj4+IGFwcGxpY2F0aW9uIHRocm91Z2hwdXQgd2lsbCBiZSByZWR1Y2VkIGFzIGFsbCBs Y29yZXMgY29udGVuZCB0bw0KPj4+Pj4gYWNxdWlyZSB0aGUgbG9jayBndWFyZGluZyB0aGUgc2lu Z2xlIHNraXBsaXN0IG9mIHBlbmRpbmcgdGltZXJzLg0KPj4+Pj4gDQo+Pj4+PiBUaGlzIHBhdGNo c2V0IGFkZHJlc3NlcyB0aGlzIHNjZW5hcmlvIGJ5IGFkZGluZyBhbiBhcnJheSBvZg0KPj4+Pj4g c2tpcGxpc3RzIHRvIGVhY2ggbGNvcmUncyBwcml2X3RpbWVyIHN0cnVjdCwgc3VjaCB0aGF0IHdo ZW4gbGNvcmUgaQ0KPj4+Pj4gaW5zdGFsbHMgYSB0aW1lciBvbiBsY29yZSBrLCB0aGUgdGltZXIg d2lsbCBiZSBhZGRlZCB0byB0aGUgaXRoDQo+Pj4+PiBza2lwbGlzdCBmb3IgbGNvcmUgay4gIElm IGxjb3JlIGogaW5zdGFsbHMgYSB0aW1lciBvbiBsY29yZSBrDQo+Pj4+PiBzaW11bHRhbmVvdXNs eSwgbGNvcmVzIGkgYW5kIGogY2FuIGJvdGggcHJvY2VlZCBzaW5jZSB0aGV5IHdpbGwgYmUNCj4+ Pj4+IGFjcXVpcmluZyBkaWZmZXJlbnQgbG9ja3MgZm9yIGRpZmZlcmVudCBsaXN0cy4NCj4+Pj4+ IA0KPj4+Pj4gV2hlbiBsY29yZSBrIHByb2Nlc3NlcyBpdHMgcGVuZGluZyB0aW1lcnMsIGl0IHdp bGwgdHJhdmVyc2UgZWFjaA0KPj4+Pj4gc2tpcGxpc3QgaW4gaXRzIGFycmF5IGFuZCBhY3F1aXJl IGEgc2tpcGxpc3QncyBsb2NrIHdoaWxlIGEgcnVuIGxpc3QNCj4+Pj4+IGlzIGJyb2tlbiBvdXQ7 IG1lYW53aGlsZSwgYWxsIG90aGVyIGxpc3RzIGNhbiBjb250aW51ZSB0byBiZSBtb2RpZmllZC4N Cj4+Pj4+IFRoZW4sIGFsbCBydW4gbGlzdHMgZm9yIGxjb3JlIGsgYXJlIGNvbGxlY3RlZCBhbmQg dHJhdmVyc2VkIHRvZ2V0aGVyDQo+Pj4+PiBzbyB0aW1lcnMgYXJlIGV4ZWN1dGVkIGluIHRoZWly IGdsb2JhbCBvcmRlci4NCj4+Pj4gDQo+Pj4+IFdoYXQgaXMgdGhlIHBlcmZvcm1hbmNlIGFuZC9v ciBsYXRlbmN5IGFkZGVkIHRvIHRoZSB0aW1lb3V0IG5vdz8NCj4+Pj4gDQo+Pj4+IEkgd29ycnkg YWJvdXQgdGhlIGNhc2Ugd2hlbiBqdXN0IGFib3V0IGFsbCBvZiB0aGUgY29yZXMgYXJlIGVuYWJs ZWQsDQo+Pj4+IHdoaWNoIGNvdWxkIGJlIGFzIGhpZ2ggd2FzIDEyOCBvciBtb3JlIG5vdy4NCj4+ PiANCj4+PiBUaGVyZSBpcyBhIGNhc2UgaW4gdGhlIHRpbWVyX3BlcmZfYXV0b3Rlc3QgdGhhdCBy dW5zIHJ0ZV90aW1lcl9tYW5hZ2UNCj4+IHdpdGggemVybyB0aW1lcnMgdGhhdCBjYW4gZ2l2ZSBh IHNlbnNlIG9mIHRoZSBhZGRlZCBsYXRlbmN5LiAgIFdoZW4gcnVuIHdpdGgNCj4+IG9uZSBsY29y ZSwgaXQgY29tcGxldGVzIGluIGFyb3VuZCAyNSBjeWNsZXMuICBXaGVuIHJ1biB3aXRoIDQzIGxj b3JlcyAodGhlDQo+PiBoaWdoZXN0IEkgaGF2ZSBhY2Nlc3MgdG8gYXQgdGhlIG1vbWVudCksIHJ0 ZV90aW1lcl9tYW5nZSBjb21wbGV0ZXMgaW4NCj4+IGFyb3VuZCAxNTUgY3ljbGVzLiAgU28gaXQg bG9va3MgbGlrZSBlYWNoIGFkZGVkIGxjb3JlIGFkZHMgYXJvdW5kIDMgY3ljbGVzIG9mDQo+PiBv dmVyaGVhZCBmb3IgY2hlY2tpbmcgZW1wdHkgbGlzdHMgaW4gbXkgdGVzdGluZy4NCj4+IA0KPj4g RG9lcyB0aGlzIG1lYW4gd2UgaGF2ZSBvbmx5IDI1IGN5Y2xlcyBvbiB0aGUgY3VycmVudCBkZXNp Z24gb3IgaXMgdGhlIDI1DQo+PiBjeWNsZXMgZm9yIHRoZSBuZXcgZGVzaWduPw0KPj4gDQo+IA0K PiBCb3RoIC0gd2hlbiBydW4gd2l0aCBvbmUgbGNvcmUsIHRoZSBuZXcgZGVzaWduIGJlY29tZXMg ZXF1aXZhbGVudCB0byB0aGUgb3JpZ2luYWwgb25lLiAgSSB0ZXN0ZWQgdGhlIGN1cnJlbnQgZGVz aWduIHRvIGNvbmZpcm0uDQoNCkdvb2QgdGhhbmtzDQoNCj4gDQo+PiBJZiBmb3IgdGhlIG5ldyBk ZXNpZ24sIHRoZW4gd2hhdCBpcyB0aGUgb2xkIGRlc2lnbiBjb3N0IGNvbXBhcmVkIHRvIHRoZSBu ZXcNCj4+IGNvc3QuDQo+PiANCj4+IEkgYWxzbyB0aGluayB3ZSBuZWVkIHRoZSBjYWxsIHRvIGEg dGltZXIgZnVuY3Rpb24gaW4gdGhlIGNhbGN1bGF0aW9uLCBqdXN0IHRvDQo+PiBtYWtlIHN1cmUg d2UgaGF2ZSBhdCBsZWFzdCBvbmUgdGltZXIgaW4gdGhlIGxpc3QgYW5kIHdlIGFjY291bnQgZm9y IGFueSBzaG9ydA0KPj4gY3V0cyBpbiB0aGUgY29kZSBmb3Igbm8gdGltZXJzIGFjdGl2ZS4NCj4+ IA0KPiANCj4gTG9va2luZyBhdCB0aGUgbnVtYmVycyBmb3Igbm9uLWVtcHR5IGxpc3RzIGluIHRp bWVyX3BlcmZfYXV0b3Rlc3QsIHRoZSBvdmVyaGVhZCBhcHBlYXJzIHRvIGZhbGwgYXdheS4gIEhl cmUgYXJlIHNvbWUgcmVwcmVzZW50YXRpdmUgcnVucyBmb3IgdGltZXJfcGVyZl9hdXRvdGVzdDoN Cj4gDQo+IDQzIGxjb3JlcyBlbmFibGVkLCBpbnN0YWxsaW5nIDFNIHRpbWVycyBvbiBhbiBsY29y ZSBhbmQgcHJvY2Vzc2luZyB0aGVtIHdpdGggY3VycmVudCBkZXNpZ246DQo+IA0KPiA8Li4uc25p cHBlZC4uLj4NCj4gQXBwZW5kaW5nIDEwMDAwMDAgdGltZXJzDQo+IFRpbWUgZm9yIDEwMDAwMDAg dGltZXJzOiA0MjQwNjYyOTQgKDE5M21zKSwgVGltZSBwZXIgdGltZXI6IDQyNCAoMHVzKQ0KPiBU aW1lIGZvciAxMDAwMDAwIGNhbGxiYWNrczogNzMxMjQ1MDQgKDMzbXMpLCBUaW1lIHBlciBjYWxs YmFjazogNzMgKDB1cykNCj4gUmVzZXR0aW5nIDEwMDAwMDAgdGltZXJzDQo+IFRpbWUgZm9yIDEw MDAwMDAgdGltZXJzOiAxNDA2NzU2Mzk2ICg2NDFtcyksIFRpbWUgcGVyIHRpbWVyOiAxNDA2ICgx dXMpDQo+IDwuLi5zbmlwcGVkLi4uPg0KPiANCj4gNDMgbGNvcmVzIGVuYWJsZWQsIGluc3RhbGxp bmcgMU0gdGltZXJzIG9uIGFuIGxjb3JlIGFuZCBwcm9jZXNzaW5nIHRoZW0gd2l0aCBwcm9wb3Nl ZCBkZXNpZ246DQo+IA0KPiA8Li4uc25pcHBlZC4uLj4NCj4gQXBwZW5kaW5nIDEwMDAwMDAgdGlt ZXJzDQo+IFRpbWUgZm9yIDEwMDAwMDAgdGltZXJzOiAzODI5MTI3NjIgKDE3NG1zKSwgVGltZSBw ZXIgdGltZXI6IDM4MiAoMHVzKQ0KPiBUaW1lIGZvciAxMDAwMDAwIGNhbGxiYWNrczogNzkxOTQ0 MTggKDM2bXMpLCBUaW1lIHBlciBjYWxsYmFjazogNzkgKDB1cykNCj4gUmVzZXR0aW5nIDEwMDAw MDAgdGltZXJzDQo+IFRpbWUgZm9yIDEwMDAwMDAgdGltZXJzOiAxNDI3MTg5MTE2ICg2NTBtcyks IFRpbWUgcGVyIHRpbWVyOiAxNDI3ICgxdXMpDQo+IDwuLi5zbmlwcGVk4oCmPg0KDQppdCBsb29r cyBvayB0aGVuLiBUaGUgbWFpbiBjb25jZXJuIEkgaGFkIHdhcyB0aGUgdGltZXJzIGluIFBrdGdl biBhbmQgc29tZW9uZSB0ZWxsaW5nIHRoZSBqaXR0ZXIgaW5jcmVhc2Ugb3IgbGF0ZW5jeSBvciBw ZXJmb3JtYW5jZS4gSSBndWVzcyBJIHdpbGwganVzdCBoYXZlIHRvIHdhaXQgYW4gc2VlLiANCg0K PiANCj4gVGhlIGFib3ZlIGFyZSBub3QgYXZlcmFnZXMsIHNvIHRoZSBudW1iZXJzIGRvbid0IHJl YWxseSBpbmRpY2F0ZSB3aGljaCBpcyBmYXN0ZXIsIGJ1dCB0aGV5IHNob3cgdGhhdCB0aGUgb3Zl cmhlYWQgb2YgdGhlIHByb3Bvc2VkIGRlc2lnbiBzaG91bGQgbm90IGJlIGFwcHJlY2lhYmxlLg0K PiANCj4+PiANCj4+Pj4gDQo+Pj4+IE9uZSBvcHRpb24gaXMgdG8gaGF2ZSB0aGUgbGNvcmUgaiB0 aGF0IHdhbnRzIHRvIGluc3RhbGwgYSB0aW1lciBvbg0KPj4+PiBsY29yZSBrIHRvIHBhc3MgYSBt ZXNzYWdlIHZpYSBhIHJpbmcgdG8gbGNvcmUgayB0byBhZGQgdGhhdCB0aW1lci4gV2UNCj4+Pj4g Y291bGQgZXZlbiBhZGQgdGhhdCBsb2dpYyBpbnRvIHNldHRpbmcgYSB0aW1lciBvbiBhIGRpZmZl cmVudCBsY29yZQ0KPj4+PiB0aGVuIHRoZSBjYWxsZXIgaW4gdGhlIGN1cnJlbnQgQVBJLiBUaGUg cmluZyB3b3VsZCBiZSBhIG11bHRpLXByb2R1Y2VyIGFuZA0KPj4gc2luZ2xlIGNvbnN1bWVyLCB3 ZSBzdGlsbCBoYXZlIHRoZSBsb2NrLg0KPj4+PiBXaGF0IGFtIEkgbWlzc2luZyBoZXJlPw0KPj4+ PiANCj4+PiANCj4+PiBJIGRpZCB0cnkgdGhpcyBhcHByb2FjaDogaW5pdGlhbGx5IEkgaGFkIGEg bXVsdGktcHJvZHVjZXIgc2luZ2xlLWNvbnN1bWVyIHJpbmcNCj4+IHRoYXQgd291bGQgaG9sZCBy ZXF1ZXN0cyB0byBhZGQgb3IgZGVsZXRlIGEgdGltZXIgZnJvbSBsY29yZSBrJ3Mgc2tpcGxpc3Qs IGJ1dCBpdA0KPj4gZGlkbid0IHJlYWxseSBnaXZlIGFuIGFwcHJlY2lhYmxlIGluY3JlYXNlIGlu IG15IHRlc3QgYXBwbGljYXRpb24gdGhyb3VnaHB1dC4NCj4+IEluIHByb2ZpbGluZyB0aGlzIHNv bHV0aW9uLCB0aGUgaG90c3BvdCBoYWQgbW92ZWQgZnJvbSBhY3F1aXJpbmcgdGhlIHNraXBsaXN0 J3MNCj4+IHNwaW5sb2NrIHRvIHRoZSBydGVfYXRvbWljMzJfY21wc2V0IHRoYXQgdGhlIG11bHRp cGxlLXByb2R1Y2VyIHJpbmcgY29kZQ0KPj4gdXNlcyB0byBtYW5pcHVsYXRlIHRoZSBoZWFkIHBv aW50ZXIuDQo+Pj4gDQo+Pj4gVGhlbiwgSSB0cmllZCBtdWx0aXBsZSBzaW5nbGUtcHJvZHVjZXIg c2luZ2xlLWNvbnN1bWVyIHJpbmdzIHBlciB0YXJnZXQNCj4+IGxjb3JlLiAgVGhpcyByZW1vdmVk IHRoZSByaW5nIGhvdHNwb3QsIGJ1dCB0aGUgcGVyZm9ybWFuY2UgZGlkbid0IGluY3JlYXNlIGFz DQo+PiBtdWNoIGFzIHdpdGggdGhlIHByb3Bvc2VkIHNvbHV0aW9uLiBUaGVzZSBzb2x1dGlvbnMg YWxzbyBhZGQgb3ZlcmhlYWQgdG8NCj4+IHJ0ZV90aW1lcl9tYW5hZ2UsIGFzIGl0IHdvdWxkIGhh dmUgdG8gcHJvY2VzcyB0aGUgcmluZ3MgYW5kIHRoZW4gcHJvY2Vzcw0KPj4gdGhlIHNraXBsaXN0 cy4NCj4+PiANCj4+PiBPbmUgb3RoZXIgdGhpbmcgdG8gbm90ZSBpcyB0aGF0IGEgc29sdXRpb24g dGhhdCB1c2VzIHN1Y2ggbWVzc2FnZXMgY2hhbmdlcw0KPj4gdGhlIHVzZSBtb2RlbHMgZm9yIHRo ZSB0aW1lci4gIE9uZSBpbnRlcmVzdGluZyBleGFtcGxlIGlzOg0KPj4+IC0gbGNvcmUgSSBlbnF1 ZXVlcyBhIG1lc3NhZ2UgdG8gaW5zdGFsbCBhIHRpbWVyIG9uIGxjb3JlIGsNCj4+PiAtIGxjb3Jl IGsgcnVucyBydGVfdGltZXJfbWFuYWdlLCBwcm9jZXNzZXMgaXRzIG1lc3NhZ2VzIGFuZCBhZGRz IHRoZQ0KPj4+IHRpbWVyIHRvIGl0cyBsaXN0DQo+Pj4gLSBsY29yZSBJIHRoZW4gZW5xdWV1ZXMg YSBtZXNzYWdlIHRvIHN0b3AgdGhlIHNhbWUgdGltZXIsIG5vdyBvd25lZCBieQ0KPj4+IGxjb3Jl IGsNCj4+PiAtIGxjb3JlIGsgZG9lcyBub3QgcnVuIHJ0ZV90aW1lcl9tYW5hZ2UgYWdhaW4NCj4+ PiAtIGxjb3JlIEkgd2FudHMgdG8gZnJlZSB0aGUgdGltZXIgYnV0IGl0IG1pZ2h0IG5vdCBiZSBz YWZlDQo+PiANCj4+IFRoaXMgY2FzZSBzZWVtcyBsaWtlIGEgbWlzdGFrZSB0byBtZSBhcyBsY29y ZSBrIHNob3VsZCBjb250aW51ZSB0byBjYWxsDQo+PiBydGVfdGltZXJfbWFuYWdlcigpIHRvIHBy b2Nlc3MgYW55IG5ldyB0aW1lcnMgZnJvbSBvdGhlciBsY29yZXMgbm90IGp1c3QNCj4+IHRoZSBj YXNlIHdoZXJlIHRoZSBsaXN0IGJlY29tZXMgZW1wdHkgYW5kIGxjb3JlIGsgZG9lcyBub3QgYWRk IHRpbWVyIHRvIGhpcw0KPj4gbGlzdC4NCj4+IA0KPj4+IA0KPj4+IEV2ZW4gdGhvdWdoIGxjb3Jl IEkgaGFzIHN1Y2Nlc3NmdWxseSBlbnF1ZXVlZCB0aGUgcmVxdWVzdCB0byBzdG9wIHRoZQ0KPj4g dGltZXIgKGFuZCBkZWxldGUgaXQgZnJvbSBsY29yZSBrJ3MgcGVuZGluZyBsaXN0KSwgaXQgaGFz bid0IGFjdHVhbGx5IGJlZW4NCj4+IGRlbGV0ZWQgZnJvbSB0aGUgbGlzdCB5ZXQsICBzbyBmcmVl aW5nIGl0IGNvdWxkIGNvcnJ1cHQgdGhlIGxpc3QuICBUaGlzIGNhc2UgZXhpc3RzDQo+PiBpbiB0 aGUgZXhpc3RpbmcgdGltZXIgc3RyZXNzIHRlc3RzLg0KPj4+IA0KPj4+IEFub3RoZXIgaW50ZXJl c3Rpbmcgc2NlbmFyaW8gaXM6DQo+Pj4gLSBsY29yZSBJIHJlc2V0cyBhIHRpbWVyIHRvIGluc3Rh bGwgaXQgb24gbGNvcmUgaw0KPj4+IC0gbGNvcmUgaiByZXNldHMgdGhlIHNhbWUgdGltZXIgdG8g aW5zdGFsbCBpdCBvbiBsY29yZSBrDQo+Pj4gLSB0aGVuLCBsY29yZSBrIHJ1bnMgdGltZXJfbWFu YWdlDQo+PiANCj4+IFRoaXMgb25lIGFsc28gc2VlbXMgbGlrZSBhIG1pc3Rha2UsIG1vcmUgdGhl biBvbmUgbGNvcmUgc2V0dGluZyB0aGUgc2FtZQ0KPj4gdGltZXIgc2VlbXMgbGlrZSBhIHByb2Js ZW0gYW5kIHNob3VsZCBub3QgYmUgZG9uZS4gQSBsY29yZSBzaG91bGQgb3duIGENCj4+IHRpbWVy IGFuZCBubyBvdGhlciBsY29yZSBzaG91bGQgYmUgYWJsZSB0byBjaGFuZ2UgdGhhdCB0aW1lci4g SWYgbXVsdGlwbGUNCj4+IGxjb3JlcyBuZWVkIGEgdGltZXIgdGhlbiB0aGV5IHNob3VsZCBub3Qg c2hhcmUgdGhlIHNhbWUgdGltZXIgc3RydWN0dXJlLg0KPj4gDQo+IA0KPiBCb3RoIG9mIHRoZSBh Ym92ZSBjYXNlcyBleGlzdCBpbiB0aGUgdGltZXIgbGlicmFyeSBzdHJlc3MgdGVzdHMsIHNvIGEg c29sdXRpb24gd291bGQgcHJlc3VtYWJseSBuZWVkIHRvIGFkZHJlc3MgdGhlbSBvciBpdCB3b3Vs ZCBiZSBsZXNzIGZsZXhpYmxlLiAgVGhlIG9yaWdpbmFsIGRlc2lnbiBwYXNzZWQgdGhlc2UgdGVz dHMsIGFzIGRvZXMgdGhlIHByb3Bvc2VkIG9uZS4NCg0KSSBnZXQgdGhpcyB0d2l0Y2ggd2hlbiBv bmUgbGNvcmUgaXMgYWRkaW5nIHRpbWVycyB0byBhbm90aGVyIGxjb3JlIGFzIEkgY29tZSBmcm9t IGEgcmVhbHRpbWUgT1MgYmFja2dyb3VuZCwgYnV0IEkgZ3Vlc3MgaWYgbm8gb25lIGVsc2UgY2Fy ZXMgb3IgZmluZHMgYSBwcm9ibGVtIEkgd2lsbCBoYXZlIHRvIGxpdmUgd2l0aCBpdC4gSGF2aW5n IGEgdGVzdCBmb3Igc29tZXRoaW5nIGRvZXMgbm90IG1ha2UgaXQgYSBnb29kIHRlc3Qgb3IgYSBy ZWFzb25hYmxlIHJlYXNvbiB0byBjb250aW51ZSBhIGRlc2lnbiBpc3N1ZS4gV2UgY2FuIG1ha2Ug YW55IHRlc3Qgd29yaywgYnV0IGlzIGl0IHJpZ2h0IGlzIHRoZSByZWFsIHF1ZXN0aW9uIGFuZCB3 ZSB3aWxsIGp1c3QgaGF2ZSB0byB3YWl0IGFuIHNlZSBJIGd1ZXNzLg0KDQo+IA0KPj4+IA0KPj4+ IExjb3JlIGoncyBtZXNzYWdlIG9idmlhdGVzIGxjb3JlIGkncyBtZXNzYWdlLCBhbmQgaXQgd291 bGQgYmUgd2FzdGVkIHdvcmsNCj4+IGZvciBsY29yZSBrIHRvIHByb2Nlc3MgaXQsIHNvIHdlIHNo b3VsZCBtYXJrIGl0IHRvIGJlIHNraXBwZWQgb3Zlci4gICBIYW5kbGluZyBhbGwNCj4+IHRoZSBl ZGdlIGNhc2VzIHdhcyBtb3JlIGNvbXBsZXggdGhhbiB0aGUgc29sdXRpb24gcHJvcG9zZWQuDQo+ PiANCj4+IEhtbW0sIHRvIG1lIGl0IHNlZW1zIHNpbXBsZSBoZXJlIGFzIGxvbmcgYXMgdGhlIGxj b3JlcyBmb2xsb3cgdGhlIHNhbWUNCj4+IHJ1bGVzIGFuZCBzaGFyaW5nIGEgdGltZXIgc3RydWN0 dXJlIGlzIHZlcnkgcmlza3kgYW5kIGF2b2lkYWJsZSBJTU8uDQo+PiANCj4+IE9uY2UgeW91IGhh dmUgbGNvcmVzIGFkZGluZyB0aW1lcnMgdG8gYW5vdGhlciBsY29yZSB0aGVuIGFsbCBhY2Nlc3Nl cyB0byB0aGF0DQo+PiBza2lwIGxpc3QgbXVzdCBiZSBzZXJpYWxpemVkIG9yIHlvdSBnZXQgdW5w cmVkaWN0YWJsZSByZXN1bHRzLiBUaGlzIHNob3VsZCBhbHNvDQo+PiBmaXggbW9zdCBvZiB0aGUg ZWRnZSBjYXNlcyB5b3UgYXJlIHRhbGtpbmcgYWJvdXQuDQo+PiANCj4+IEFsc28gaXQgc2VlbXMg dG8gbWUgdGhlIGNhc2Ugd2l0aCBhbiBsY29yZSBhZGRpbmcgdGltZXJzIHRvIGFub3RoZXIgbGNv cmUNCj4+IHRpbWVyIGxpc3QgaXMgYSBzcGVjaWZpYyB1c2UgY2FzZSBhbmQgY291bGQgYmUgaGFu ZGxlZCBieSBhIGRpZmZlcmVudCBzZXQgb2YgQVBJcw0KPj4gZm9yIHRoYXQgc3BlY2lmaWMgdXNl IGNhc2UuIFRoZW4gd2UgZG8gbm90IG5lZWQgdG8gY2hhbmdlIHRoZSBjdXJyZW50IGRlc2lnbg0K Pj4gYW5kIGFsbCBvZiB0aGUgb3ZlcmhlYWQgaXMgcGxhY2VkIG9uIHRoZSBuZXcgQVBJcy9kZXNp Z24uIElNTyB3ZSBhcmUNCj4+IHR1cm5pbmcgdGhlIGN1cnJlbnQgdGltZXIgZGVzaWduIGludG8g YSBnbG9iYWwgdGltZXIgZGVzaWduIGFzIGl0IHJlYWxseSBpcyBhIHBlcg0KPj4gbGNvcmUgZGVz aWduIHRvZGF5IGFuZCBJIGJlbGVpdmUgdGhhdCBpcyBhIG1pc3Rha2UuDQo+PiANCj4gDQo+IFdl bGwsIHRoZSBvcmlnaW5hbCBBUEkgZXhwbGljaXRseSBzdXBwb3J0cyBpbnN0YWxsaW5nIGEgdGlt ZXIgdG8gYmUgZXhlY3V0ZWQgb24gYSBkaWZmZXJlbnQgbGNvcmUsIGFuZCB0aGVyZSBhcmUgbm8g QVBJIGNoYW5nZXMgaW4gdGhlIHBhdGNoc2V0LiAgQWxzbywgdGhlIHByb3Bvc2VkIGRlc2lnbiBr ZWVwcyB0aGUgcGVyLWxjb3JlIGRlc2lnbiBpbnRhY3Q7ICBpdCBvbmx5IHRha2VzIHdoYXQgdXNl ZCB0byBiZSBvbmUgbGFyZ2Ugc2tpcGxpc3QgdGhhdCBoZWxkIHRpbWVycyBmb3IgYWxsIGluc3Rh bGxpbmcgbGNvcmVzLCBhbmQgc2VwYXJhdGVzIGl0IGludG8gTiBza2lwbGlzdHMgdGhhdCBjb3Jy ZXNwb25kIDE6MSB0byBhbiBpbnN0YWxsaW5nIGxjb3JlLiAgV2hlbiBhbiBsY29yZSBwcm9jZXNz ZXMgdGltZXJzIG9uIGl0cyBsaXN0cyBpdCB3aWxsIHN0aWxsIG9ubHkgYmUgbWFuYWdpbmcgdGlt ZXJzIGl0IG93bnMsIGFuZCBubyBvdGhlcnMuDQoNCg0KSGF2aW5nIGFuIEFQSSB0byBleHBsaWNp dGx5IHN1cHBvcnQgc29tZSBmZWF0dXJlIGlzIG5vdCBhIHJlYXNvbiB0byBrZWVwIHNvbWV0aGlu ZywgYnV0IEkgdGhpbmsgeW91IGhhdmUgcmVkdWNlIG15IHR3aXRjaGluZyBzb21lIDotKSBzbyBJ IHdpbGwgbGV0IGl0IGdvLg0KDQpUaGFua3MgZm9yIHRoZSBpbmZvcm1hdGlvbi4NCg0KPiAgDQo+ IA0KPj4+IA0KPj4+Pj4gDQo+Pj4+PiBHYWJyaWVsIENhcnJpbGxvICgzKToNCj4+Pj4+IHRpbWVy OiBhZGQgcGVyLWluc3RhbGxlciBwZW5kaW5nIGxpc3RzIGZvciBlYWNoIGxjb3JlDQo+Pj4+PiB0 aW1lcjogaGFuZGxlIHRpbWVycyBpbnN0YWxsZWQgZnJvbSBub24tRUFMIHRocmVhZHMNCj4+Pj4+ IGRvYzogdXBkYXRlIHRpbWVyIGxpYiBkb2NzDQo+Pj4+PiANCj4+Pj4+IGRvYy9ndWlkZXMvcHJv Z19ndWlkZS90aW1lcl9saWIucnN0IHwgIDE5ICsrLQ0KPj4+Pj4gbGliL2xpYnJ0ZV90aW1lci9y dGVfdGltZXIuYyAgICAgICAgfCAzMjkgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0NCj4+ IC0tLQ0KPj4+PiAtLS0tDQo+Pj4+PiBsaWIvbGlicnRlX3RpbWVyL3J0ZV90aW1lci5oICAgICAg ICB8ICAgOSArLQ0KPj4+Pj4gMyBmaWxlcyBjaGFuZ2VkLCAyMzEgaW5zZXJ0aW9ucygrKSwgMTI2 IGRlbGV0aW9ucygtKQ0KPj4+Pj4gDQo+Pj4+PiAtLQ0KPj4+Pj4gMi42LjQNCj4+Pj4+IA0KPj4+ PiANCj4+Pj4gUmVnYXJkcywNCj4+Pj4gS2VpdGgNCj4+IA0KPj4gUmVnYXJkcywNCj4+IEtlaXRo DQoNClJlZ2FyZHMsDQpLZWl0aA0KDQo=