From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kazlauskas, Nicholas" Subject: Re: [PATCH v4 3/4] drm: Document variable refresh properties Date: Thu, 1 Nov 2018 17:19:48 +0000 Message-ID: <04cd8cf3-7aea-b81b-b737-d46b4be1ae47@amd.com> References: <20181011163942.28267-1-nicholas.kazlauskas@amd.com> <20181011163942.28267-4-nicholas.kazlauskas@amd.com> <20181026143719.01381cdd@eldfell> <20181026145321.GV9144@intel.com> <20181026175924.GH9144@intel.com> <481ae686-adda-5857-5538-2b0af2e25427@daenzer.net> <20181029180341.GN9144@intel.com> <13a934a2-5cea-3d1b-ec57-bf5488698129@daenzer.net> <1c1c0f6f-ccbd-bfc2-f249-a01f6fc997ec@amd.com> <311638a8-eb8a-cb8d-3f7a-109aaa4b046b@amd.com> <31902d88-aa0c-a7de-a17b-6e5e6ec23f56@amd.com> <689846fa-7315-1fe4-77e5-4651bf6a21b5@daenzer.net> <87bcab42-e377-259c-13ea-0cfe9c675cf9@amd.com> <99214cf0-9717-3c23-9457-791288d4d252@daenzer.net> <70d948e9-672b-df05-71cc-448d11fbb173@amd.com> <8617ac72-ec32-8146-cead-e28e78067ec0@daenzer.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <8617ac72-ec32-8146-cead-e28e78067ec0-otUistvHUpPR7s880joybQ@public.gmane.org> Content-Language: en-US Content-ID: <5998204247273A4BAE57E052ED0B01D2-asWib9pRmPqcE4WynfumptQqCkab/8FMAL8bYrjMMd8@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: =?utf-8?B?TWljaGVsIETDpG56ZXI=?= , =?utf-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: "daniel.vetter-/w4YWyX8dFk@public.gmane.org" , "Olsak, Marek" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , "manasi.d.navare-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org" , "dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , "Deucher, Alexander" List-Id: dri-devel@lists.freedesktop.org T24gMTEvMS8xOCAxOjA1IFBNLCBNaWNoZWwgRMOkbnplciB3cm90ZToNCj4gT24gMjAxOC0xMS0w MSAzOjU4IHAubS4sIEthemxhdXNrYXMsIE5pY2hvbGFzIHdyb3RlOg0KPj4gT24gMTEvMS8xOCA2 OjU4IEFNLCBNaWNoZWwgRMOkbnplciB3cm90ZToNCj4+PiBPbiAyMDE4LTEwLTMxIDY6NTQgcC5t LiwgS2F6bGF1c2thcywgTmljaG9sYXMgd3JvdGU6DQo+Pj4+IE9uIDEwLzMxLzE4IDEyOjIwIFBN LCBNaWNoZWwgRMOkbnplciB3cm90ZToNCj4+Pj4+IE9uIDIwMTgtMTAtMzEgMzo0MSBwLm0uLCBL YXpsYXVza2FzLCBOaWNob2xhcyB3cm90ZToNCj4+Pj4+PiBPbiAxMC8zMS8xOCAxMDoxMiBBTSwg TWljaGVsIETDpG56ZXIgd3JvdGU6DQo+Pj4+Pj4+IE9uIDIwMTgtMTAtMzEgMjozOCBwLm0uLCBL YXpsYXVza2FzLCBOaWNob2xhcyB3cm90ZToNCj4+Pj4+Pj4+DQo+Pj4+Pj4+PiBJIGRpZCBzb21l IG1vcmUgaW52ZXN0aWdhdGlvbiBpbnRvIHdoZW4gYW1kZ3B1IGdldHMgdGhlIHNjYW5vdXQgcG9z aXRpb24NCj4+Pj4+Pj4+IGFuZCB3aGF0IHZhbHVlcyB3ZSBnZXQgYmFjayBvdXQgb2YgaXQuIFRo ZSB0aW1lc3RhbXAgaXMgdXBkYXRlZCBzaG9ydGx5DQo+Pj4+Pj4+PiBhZnRlciB0aGUgY3J0YyBp cnEgdmJsYW5rIHdoaWNoIGlzIHR5cGljYWxseSB3aXRoaW4gYSBmZXcgbGluZXMgb2YNCj4+Pj4+ Pj4+IHZibF9zdGFydC4gVGhpcyBtYWtlcyBzZW5zZSwgc2luY2Ugd2UgY2FuIHByb3ZpZGUgdGhl IHByZWRpY3Rpb24NCj4+Pj4+Pj4+IHRpbWVzdGFtcCBlYXJseS4gV2FpdGluZyBmb3IgdGhlIHZi bGFuayB0byB3cmFwIGFyb3VuZCB0byAwIGRvZXNuJ3QNCj4+Pj4+Pj4+IHJlYWxseSBtYWtlIHNl bnNlIGhlcmUgc2luY2UgdGhhdCB3b3VsZCBtZWFuIHdlIGFscmVhZHkgaGl0IHRpbWVvdXQgb3IN Cj4+Pj4+Pj4+IHRoZSBmbGlwIG9jY3VycmVkDQo+Pj4+Pj4+DQo+Pj4+Pj4+IFNvdW5kcyBsaWtl IHlvdSdyZSBtaXhpbmcgdXAgdGhlIHR3byBjYXNlcyBvZiAiYWN0dWFsIiB2YmxhbmsgZXZlbnRz DQo+Pj4+Pj4+ICh0cmlnZ2VyZWQgYnkgdGhlICJ2YmxhbmsiIGludGVycnVwdCA9PiBkcm1fKGNy dGNfKWhhbmRsZV92YmxhbmspIGFuZA0KPj4+Pj4+PiBmbGlwIGNvbXBsZXRpb24gZXZlbnRzICh0 cmlnZ2VyZWQgYnkgdGhlIFBGTElQIGludGVycnVwdCB3aXRoIG91cg0KPj4+Pj4+PiBoYXJkd2Fy ZSA9PiBkcm1fY3J0Y19zZW5kX3ZibGFua19ldmVudCkuDQo+Pj4+Pj4+DQo+Pj4+Pj4+IEFjdHVh bCB2YmxhbmsgZXZlbnRzIG5lZWQgdG8gYmUgZGVsaXZlcmVkIHRvIHVzZXJzcGFjZSBhdCB0aGUg c3RhcnQgb2YNCj4+Pj4+Pj4gdmJsYW5rLCBzbyB3ZSBpbmRlZWQgY2FuJ3Qgd2FpdCB1bnRpbCB0 aGUgdGltZXN0YW1wIGlzIGFjY3VyYXRlIGZvcg0KPj4+Pj4+PiB0aGVtLiBXZSBqdXN0IG5lZWQg dG8gZG9jdW1lbnQgdGhlIGV4YWN0IHNlbWFudGljcyBvZiB0aGVpciB0aW1lc3RhbXANCj4+Pj4+ Pj4gd2l0aCBWUlIuDQo+Pj4+Pj4+DQo+Pj4+Pj4+IEZvciBwYWdlIGZsaXAgY29tcGxldGlvbiBl dmVudHMgdGhvdWdoLCB0aGUgdGltZXN0YW1wIG5lZWRzIHRvIGJlDQo+Pj4+Pj4+IGFjY3VyYXRl IGFuZCBjb3JyZXNwb25kIHRvIHdoZW4gdGhlIGZsaXBwZWQgZnJhbWUgc3RhcnRzIGJlaW5nIHNj YW5uZWQNCj4+Pj4+Pj4gb3V0LCBvdGhlcndpc2Ugd2UnbGwgc3VyZWx5IGJyZWFrIGF0IGxlYXN0 IHNvbWUgdXNlcnNwYWNlIHJlbHlpbmcgb24NCj4+Pj4+Pj4gdGhpcyBpbmZvcm1hdGlvbi4NCj4+ Pj4+Pj4NCj4+Pj4+PiBZZWFoLCBJIHdhcy4gSSBndWVzcyB3aGF0J3Mgc2VudCBpcyB0aGUgZXN0 aW1hdGVkIHZibGFuayB0aW1lc3RhbXANCj4+Pj4+PiBjYWxjdWxhdGVkIGF0IHRoZSBzdGFydCBv ZiB0aGUgaW50ZXJydXB0Lg0KPj4+Pj4NCj4+Pj4+IHMvaW50ZXJydXB0L3ZibGFuay8sIHllYWgu DQo+Pj4+Pg0KPj4+Pj4NCj4+Pj4+PiBBbmQgc2luY2UgdGhhdCdzIGp1c3QgYSBndWVzcyByYXRo ZXIgdGhhbiB3aGF0J3MgYWN0dWFsbHkgZ29pbmcgdG8NCj4+Pj4+PiBoYXBwZW4gaXQncyBnb2lu ZyB0byBiZSB3cm9uZyBpbiBhIGxvdCBvZiBjYXNlcy4NCj4+Pj4+Pg0KPj4+Pj4+IEkgY291bGQg c2VlIHRoZSB3cmFwLWFyb3VuZCBtZXRob2Qgd29ya2luZyBpZiB0aGUgdmJsYW5rIHRpbWVzdGFt cCB3YXMNCj4+Pj4+PiBzb21laG93IHVwZGF0ZWQgaW4gYW1kZ3B1IG9yIGluIGRybV9jcnRjX3Nl bmRfdmJsYW5rX2V2ZW50Lg0KPj4+Pj4NCj4+Pj4+IERDIGFscmVhZHkgY2FsbHMgZHJtX2NydGNf YWNjdXJhdGVfdmJsYW5rX2NvdW50IGJlZm9yZQ0KPj4+Pj4gZHJtX2NydGNfc2VuZF92Ymxhbmtf ZXZlbnQsIHdlICJqdXN0IiBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHJlc3VsdHMgaW4NCj4+Pj4+ IGFuIGFjY3VyYXRlIHRpbWVzdGFtcC4NCj4+Pj4+DQo+Pj4+Pg0KPj4+Pj4+IFRoaXMgd291bGQg YmUgYSByZWxhdGl2ZWx5IHNpbXBsZSBmaXggYnV0IHdvdWxkIGJyZWFrIGFueXRoaW5nIGluDQo+ Pj4+Pj4gdXNlcnNwYWNlIHRoYXQgcmVsaWVkIG9uIHRoZSB0aW1lc3RhbXAgZm9yIHZibGFuayBp bnRlcnJ1cHQgYW5kIHRoZQ0KPj4+Pj4+IGZsaXAgY29tcGxldGlvbiBiZWluZyB0aGUgc2FtZSB2 YWx1ZS4NCj4+Pj4+DQo+Pj4+PiBIbW0sIHRoYXQncyBhIGdvb2QgcG9pbnQuIFNvIHdoaWxlIFZS UiBpcyBlbmFibGVkLCBtYXliZSBpdCBpcyBzYWZlciB0bw0KPj4+Pj4gZGVmZXIgZGVsaXZlcnkg b2YgdmJsYW5rIGV2ZW50cyB1bnRpbCB0aGUgYWNjdXJhdGUgdGltZXN0YW1wIGlzIGtub3duIGFz DQo+Pj4+PiB3ZWxsLCBhdCBsZWFzdCBieSBkZWZhdWx0LiBJZiB0aGVyZSBpcyB1c2Vyc3BhY2Ug d2hpY2ggbmVlZHMgdGhlIGV2ZW50cw0KPj4+Pj4gZWFybGllciBldmVuIHdpdGggVlJSIGJ1dCBj YW4gbGl2ZSB3aXRoIHRoZSBndWVzc2VkIHRpbWVzdGFtcCwgYSBmbGFnIG9yDQo+Pj4+PiBzb21l dGhpbmcgY291bGQgYmUgYWRkZWQgZm9yIHRoYXQuDQo+Pj4+DQo+Pj4+IEkgd2FzIHVuZGVyIHRo ZSBpbXByZXNzaW9uIHRoYXQgdGhlIHZibGFuayB0aW1lc3RhbXAgd2FzIHJldXNlZCBidXQgaXQn cw0KPj4+PiBhbHJlYWR5IGdvaW5nIHRvIGRpZmZlciBzaW5jZSB3ZSBjYWxsIGRybV9jcnRjX2Fj Y3VyYXRlX3ZibGFua19jb3VudA0KPj4+PiBiZWZvcmUgZHJtX2NydGNfc2VuZF92YmxhbmtfZXZl bnQuIFRoYW5rcyBmb3IgcG9pbnRpbmcgdGhhdCBvdXQuDQo+Pj4+DQo+Pj4+IFNpbmNlIHRoYXQg d29ya3MgZm9yIHVwZGF0aW5nIHRpbWVzdGFtcCB3aGF0J3MgbGVmdCBpcyBtYWtpbmcgc3VyZSB0 aGF0DQo+Pj4+IGl0IHdhaXRzIGZvciB0aGUgd3JhcCBhcm91bmQgaWYgaXQncyBhYm92ZSBjcnRj X3Z0b3RhbC4gSXQgbWlnaHQgbWFrZQ0KPj4+PiBzZW5zZSB0byBhZGQgYSBuZXcgZmxhZyBmb3Ig dGhpcyB0aGF0J3Mgb25seSB1c2VkIHdpdGhpbg0KPj4+PiBhbWRncHVfZ2V0X2NydGNfc2Nhbm91 dF9wb3NpdGlvbiBzbyB0aGUgb3RoZXIgY2FsbCBzaXRlcyBhcmVuJ3QgYWZmZWN0ZWQuDQo+Pj4+ DQo+Pj4+IFRoZXJlIGlzbid0IGEgd2F5IHRvIGdldCBhbiBhY2N1cmF0ZSB0aW1lc3RhbXAgd2l0 aCBWUlIgZW5hYmxlZCB1bnRpbA0KPj4+PiBhZnRlciB0aGUgZmxpcCBoYXBwZW5zLiBTbyBkZWZl cnJpbmcgaXQga2luZCBvZiBkZWZlYXRzIHRoZSBwdXJwb3NlIG9mIGENCj4+Pj4gY2xpZW50IHVz aW5nIGl0IHRvIG1ha2UgcHJlZGljdGlvbnMgYmVmb3JlIHRoZSBmbGlwIGZvciBkaXNwbGF5aW5n IHRoZWlyDQo+Pj4+IGNvbnRlbnQuDQo+Pj4NCj4+PiBUaGF0J3MgZ2VuZXJhbGx5IG5vdCBhIHZh bGlkIHVzZS1jYXNlLiBUaGUgS01TIEFQSSBpcyBkZWZpbmVkIHN1Y2ggdGhhdA0KPj4+IGlmIHVz ZXJzcGFjZSByZWNlaXZlcyB0aGUgdmJsYW5rIGV2ZW50IGZvciB2YmxhbmsgcGVyaW9kIE4gYW5k IHRoZW4NCj4+PiBzdWJtaXRzIGEgcGFnZSBmbGlwLCB0aGUgcGFnZSBmbGlwIGNhbm5vdCAobm9y bWFsbHlbMF0pIHRha2UgZWZmZWN0DQo+Pj4gYmVmb3JlIHZibGFuayBwZXJpb2QgTisxLg0KPj4+ DQo+Pj4NCj4+PiBUaGVyZSBhcmUgbWFpbmx5IHR3byB2YWxpZCB1c2UtY2FzZXMgZm9yIHdhaXRp bmcgZm9yIHZibGFuazoNCj4+Pg0KPj4+IDEuIFdhaXQgZm9yIHZibGFuayBOLCB0aGVuIHN1Ym1p dCBwYWdlIGZsaXAgZm9yIHZibGFuayBOKzEuDQo+Pj4NCj4+PiAyLiBXYWl0IGZvciB2Ymxhbmsg TiwgdGhlbiB0cnkgdG8gZG8gc29tZXRoaW5nIGJlZm9yZSB2YmxhbmsgTiBlbmRzLA0KPj4+IGUu Zy4gZHJhdyBkaXJlY3RseSB0byB0aGUgZnJvbnQgYnVmZmVyLCBhcyBhIHBvb3IgbWFuJ3Mgd2F5 IG9mIGF2b2lkaW5nDQo+Pj4gdGVhcmluZyBvciBzaW1pbGFyIGFydGlmYWN0cy4NCj4+Pg0KPj4+ DQo+Pj4gVXNlLWNhc2UgMSBpcyB1c2VkIGJ5IFhvcmcgKGJvdGggZm9yIFByZXNlbnQgYW5kIERS STIpIGFuZCBhdCBsZWFzdA0KPj4+IFdlc3RvbiwgYnV0IHByZXN1bWFibHkgbW9zdCBpZiBub3Qg YWxsIFdheWxhbmQgY29tcG9zaXRvcnMuIEZyb20gUGVra2Encw0KPj4+IGRlc2NyaXB0aW9uIG9m IGhvdyBXZXN0b24gdXNlcyBpdCAodGhhbmtzISksIGl0J3MgY2xlYXIgdGhhdCB0aGUNCj4+PiB0 aW1lc3RhbXAgb2YgdmJsYW5rIGV2ZW50cyBkb2VzIG5lZWQgdG8gYWNjdXJhdGVseSBjb3JyZXNw b25kIHRvIHRoZSBlbmQNCj4+PiBvZiB0aGUgdmJsYW5rIHBlcmlvZC4NCj4+Pg0KPj4+IFVzZS1j YXNlIDIgaXMgYWxzbyB1c2VkIGJ5IFhvcmcsIGJ1dCBvbmx5IHdoZW4gbm90IGZsaXBwaW5nLCB3 aGljaCBydWxlcw0KPj4+IG91dCBWUlIuIEFsc28sIEknZCBhcmd1ZSB0aGF0IGJsb2NraW5nIHdh aXRzIGZvciB2YmxhbmsgYXJlIG1vcmUNCj4+PiBzdWl0YWJsZSBmb3IgdGhpcyB1c2UtY2FzZSB0 aGFuIHZibGFuayBldmVudHMuDQo+Pj4NCj4+PiBUaGVyZWZvcmUsIGluIHN1bW1hcnkgSSBwcm9w b3NlIHRoaXMgaXMgaG93IGl0IGNvdWxkIHdvcms6DQo+Pj4NCj4+PiAqIFdpdGhvdXQgVlJSLCB0 aW1lc3RhbXBzIGNvbnRpbnVlIHRvIHdvcmsgdGhlIHNhbWUgd2F5IHRoZXkgZG8gbm93Lg0KPj4+ DQo+Pj4gKiBXaXRoIFZSUiwgZGVsaXZlcnkgb2YgYm90aCB2YmxhbmsgYW5kIHBhZ2UgZmxpcCBj b21wbGV0aW9uIGV2ZW50cyBtdXN0DQo+Pj4gYmUgZGVmZXJyZWQgdW50aWwgdGhlIHRpbWVzdGFt cCBhY2N1cmF0ZWx5IGNvcnJlc3BvbmRzIHRvIHRoZSBhY3R1YWwgZW5kDQo+Pj4gb2YgdmJsYW5r LiBGb3IgYmxvY2tpbmcgdmJsYW5rIHdhaXRzLCBJJ20gbm90IHN1cmUsIGJ1dCBJJ20gbGVhbmlu Zw0KPj4+IHRvd2FyZHMgY29udGludWluZyB0byByZXR1cm4gdG8gdXNlcnNwYWNlIGF0IHRoZSBi ZWdpbm5pbmcgb2YgdmJsYW5rIGJ5DQo+Pj4gZGVmYXVsdCwgZXZlbiBpZiB0aGUgdGltZXN0YW1w IGlzIGluYWNjdXJhdGUuDQo+Pj4NCj4+PiBEZWZlcnJpbmcgZGVsaXZlcnkgb2YgZXZlbnRzIHNo b3VsZCBhdm9pZCBidXN5LWxvb3BzLiBCb251cyBwb2ludHMgZm9yDQo+Pj4gbWluaW1pemluZyB0 aGUgbnVtYmVyIG9mIGludGVycnVwdHMgbmVlZGVkLiA6KQ0KPj4+DQo+Pj4gTm90ZSB0aGF0IGJv dGggYmxvY2tpbmcgdmJsYW5rIHdhaXRzIGFuZCB2YmxhbmsgZXZlbnRzIGFyZSBjdXJyZW50bHkN Cj4+PiB0cmlnZ2VyZWQgZnJvbSBkcm1fKGNydGNfKWhhbmRsZV92YmxhbmssIHNvIHNvbWUgcmV3 b3JrIHdvdWxkIGJlDQo+Pj4gcmVxdWlyZWQgZm9yIHRoaXMuDQo+Pj4NCj4+PiBJdCdzIHBvc3Np YmxlIHRoYXQgdGhlcmUncyBvdGhlciB1c2Vyc3BhY2Ugd2hpY2ggZG9lc24ndCBjYXJlIGFib3V0 IHRoZQ0KPj4+IGFjY3VyYWN5IG9mIHRoZSB0aW1lc3RhbXBzLCBidXQgY2FyZXMgYWJvdXQgZ2V0 dGluZyBldmVudHMgYXMgZWFybHkgYXMNCj4+PiBwb3NzaWJsZS4gSW4gdGhhdCBjYXNlLCBmbGFn cyBtaWdodCBuZWVkIHRvIGJlIGFkZGVkLg0KPj4+DQo+Pj4NCj4+PiBbMF0gT3VyIGRyaXZlcnMg Y2FuIGNvbXBsZXRlIHRoZSBmbGlwIGluIHRoZSBzYW1lIHZibGFuayBwZXJpb2QgdW5kZXINCj4+ PiBzb21lIGNpcmN1bXN0YW5jZXMgaWYgdXNlcnNwYWNlIHNwZWNpZmllcyBpdCBhcyB0aGUgdGFy Z2V0IHVzaW5nIHRoZQ0KPj4+IERSTV9NT0RFX1BBR0VfRkxJUF9UQVJHRVRfQUJTT0xVVEUvUkVM QVRJVkUgZmxhZywgYnV0IHRoZXJlJ3Mgbm8NCj4+PiBndWFyYW50ZWUgZm9yIGl0IHRvIHdvcmsu IEFuZCBubyBvdGhlciBkcml2ZXIgc3VwcG9ydHMgdGhpcyB5ZXQuIFdpdGhvdXQNCj4+PiB0aG9z ZSBmbGFncywgdGhlIGZsaXAgY2Fubm90IGNvbXBsZXRlIGluIHRoZSBzYW1lIHZibGFuayBwZXJp b2QsIG9yIGl0DQo+Pj4gd291bGQgYnJlYWsgZXhpc3RpbmcgdXNlcnNwYWNlIHVzaW5nIHVzZS1j YXNlIDEgYWJvdmUuDQo+Pj4NCj4+IERlZmVycmluZyB0aGUgcGFnZWZsaXAgdGltZXN0YW1wIGlz IHNvbWV0aGluZyB3ZSBjYW4gZG8gdG9kYXkgaW4gdGhlDQo+PiBkcml2ZXIgd2l0aCBubyBpbXBh Y3Qgb24gZXhpc3RpbmcgYmVoYXZpb3Ivc2VtYW50aWNzLiBTaW5jZSBocG9zIGlzIHVzZWQNCj4+ IGluIHRoZSBjYWxjdWxhdGlvbiBhcyB3ZWxsIEkgdGhpbmsgd2UgZG9uJ3QgbmVlZCBldmVuIG5l ZWQgdG8gd2FpdCBmb3INCj4+IHRoZSByb2xsLW92ZXIgbmVjZXNzYXJpbHkuDQo+IA0KPiBOb3Qg c3VyZSBvZmZoYW5kIGhvdyBocG9zIGhlbHBzIGZvciB0aGlzLCBidXQgSSdsbCB0cnVzdCB5b3Vy IHdvcmQgZm9yDQo+IGl0LiA6KQ0KDQpJZiB3ZSdyZSBzdGlsbCBpbiB0aGUgdmZyb250IHBvcmNo IHdoZW4gb24gdGhlIHBhZ2VmbGlwIGlycSB0aW1lc3RhbXAgDQpxdWVyeSB0aGVuIGl0IHNob3Vs ZCBiZSBnb2luZyBvdmVyIHRvIHRoZSBiYWNrIHBvcmNoIG9uIHRoZSBuZXh0IGxpbmUuDQoNClNv IHRoZXJlJ3Mgc3RpbGwgdGhlIGZ1bGwgYmFjayBwb3JjaCB0byBnbyB0aHJvdWdoLCBwbHVzIGEg bGl0dGxlIGJpdCBvZiANCnRoZSBjdXJyZW50IGxpbmUgaG9yaXpvbnRhbGx5LiBUaGF0IGhvcml6 b250YWwgYml0IGlzIGluY2x1ZGVkIGluIHRoZSANCnRpbWVzdGFtcCBjYWxjdWxhdGlvbiBhbHJl YWR5IHNvIGl0IHNob3VsZCBiZSBmaW5lLg0KDQo+IA0KPiANCj4+IERlZmVycmluZyB0aGUgZXZl bnQgdGhhdCBjb21lcyBmcm9tIGRybV9oYW5kbGVfdmJsYW5rIHdvcnJpZXMgbWUgdGhvdWdoLg0K Pj4gVGhlIGltcGxlbWVudGF0aW9uIGZvciB0aGF0IHdvdWxkIGJlIHNlbmRpbmcgdGhhdCBldmVu dCBvbiB0aGUgcm9sbC1vdmVyDQo+PiBhdCB0aW1lb3V0IG9yIGdyb3VwaW5nIGl0IHRvZ2V0aGVy IG9uIHRoZSBwYWdlZmxpcC4gVGhvc2UgYXJlIHByZXR0eQ0KPj4gbG9uZyBkZWxheXMgZm9yIGJv dGguDQo+Pg0KPj4gVG8gbWUgaXQgc3RpbGwgbWFrZXMgbW9yZSBzZW5zZSB0byBqdXN0IGRlZmlu ZSB0aGUgdmJsYW5rIHRpbWVzdGFtcA0KPj4gY29taW5nIG91dCBvZiBkcm1fY3J0Y19oYW5kbGVf dmJsYW5rIGFzIGFuIGVzdGltYXRlIHdoZW4gVlJSIGlzIGVuYWJsZWQuDQo+PiBBbiBlc3RpbWF0 aW9uIHdoaWNoIGVuZHMgdXAgYmVpbmcgdGhlIHNhbWUgdmFsdWUgYXMgd2hhdCB1c2Vyc3BhY2Ug Z2V0cw0KPj4gdG9kYXksIHRoZSBlc3RpbWF0aW9uIGZvciB0aGUgY3VycmVudCBtb2RlLg0KPj4N Cj4+IEkgdGhpbmsgbXkgb3BpbmlvbiB3b3VsZCBiZSBkaWZmZXJlbnQgaWYgdGhlIHRpbWVzdGFt cHMgd2VyZSBzdXBwb3NlZCB0bw0KPj4gYmUgdGhlIHNhbWUgdmFsdWUgYnV0IHRoYXQncyBpbmNy ZWRpYmx5IHVubGlrZWx5IGdpdmVuIHRoYXQgdGhleSdyZQ0KPj4gb2Zmc2V0IGZyb20gdGhlIGt0 aW1lX2dldCBpbiBtb3N0IGNhc2VzLg0KPiANCj4gUmlnaHQgbm93LCB3aXRob3V0IFZSUiwgdGhl eSdyZSBzdXBwb3NlZCB0byBiZSB0aGUgc2FtZSB3aXRoaW4gbWVhc3VyaW5nDQo+IGFjY3VyYWN5 LiBJZiB5b3UncmUgc2VlaW5nIGJpZ2dlciBkaWZmZXJlbmNlcyB0aGFuIHRoYXQsIGNhbiB5b3Ug cHJvdmlkZQ0KPiBzb21lIGV4YW1wbGVzPyBZb3UgbWlnaHQgaGF2ZSBkaXNjb3ZlcmVkIGEgYnVn Lg0KDQpUaGVyZSdzIGEgbGl0dGxlIGJpdCBvZiB1bmNlcnRhaW50eSBzaW5jZSBpdCdzIHR3byBz ZXBhcmF0ZSBjYWxscyB0byANCmdldF9jcnRjX3NjYW5vdXRwb3MgYW5kIHR3byBkaWZmZXJlbnQg Y2FsbHMgdG8ga3RpbWVfZ2V0IGZvciB0aGUgZW5kIA0KdGltZS4gVGhlIG51bWJlcnMgZGlmZmVy IGJ1dCBub3QgYnkgYSBzaWduaWZpY2FudCBhbW91bnQuIEkgd291bGRuJ3QgDQpjb25zaWRlciBp dCBhIGJ1ZyBhdCBsZWFzdC4NCg0KPiANCj4gDQo+IEFueXdheSwgSSByZS1yZWFkIFBla2thJ3Mg ZGVzY3JpcHRpb24sIGFuZCBpdCBzb3VuZHMgbGlrZSBXZXN0b24gb25seQ0KPiB1c2VzIHRoZSB2 YmxhbmsgdGltZXN0YW1wIGlmIG5vIGZsaXAgY29tcGxldGVkIGluIHRoZSBsYXN0IHZibGFuaw0K PiBwZXJpb2QsIHdoaWNoIG5vcm1hbGx5IHNob3VsZG4ndCBoYXBwZW4gd2l0aCBWUlIuIE90aGVy d2lzZSBpdCB1c2VzIHRoZQ0KPiB0aW1lc3RhbXAgZnJvbSB0aGUgZmxpcCBjb21wbGV0aW9uIGV2 ZW50Lg0KPiANCj4gU28sIGl0IHNvdW5kcyBsaWtlIGhhdmluZyBkaWZmZXJlbnQgdGltZXN0YW1w cyBiZXR3ZWVuIHRoZSB0d28gY2FzZXMNCj4gc2hvdWxkIGJlIGZpbmUgZm9yIFdlc3RvbiBhZnRl ciBhbGwuIFNvcnJ5IGZvciB0aGUgY29uZnVzaW9uIGFib3ZlLg0KPiANCj4gU28sIEknbSBva2F5 IHdpdGggdHJ5aW5nIHRvIGNoYW5nZSBvbmx5IHRoZSB0aW1lc3RhbXBzIG9mIHRoZSBmbGlwDQo+ IGNvbXBsZXRpb24gZXZlbnRzLiBUaGF0J2xsIGNlcnRhaW5seSBtYWtlIHRoaW5ncyBlYXNpZXIu IDopDQo+IA0KPiANCg0KU291bmRzIGdvb2QuDQoNClRoZSBvbmx5IGNoYW5nZSBuZWVkZWQgdG8g aGFuZGxlIHRoaXMgaW4gdGhlIHBhZ2VmbGlwIGlzIGEgc21hbGwgYnVnZml4IA0KZm9yIHRoZSBj YXNlIHdoZXJlIHZwb3MgPj0gY3J0Y192dG90YWwgb24gdGhlIHBhZ2VmbGlwIHF1ZXJ5LiBJJ2xs IA0KaW5jbHVkZSBpdCBhcyBwYXJ0IG9mIHRoZSBuZXh0IHBhdGNoIHNlcmllcyB3aXRoIHRoZSB1 cGRhdGVkIGRvY3VtZW50YXRpb24uDQoNCk5pY2hvbGFzIEthemxhdXNrYXMNCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0 CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=