From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rogozhkin, Dmitry V" Subject: Re: [PATCH v5] drm/i915: Restore GT performance in headless mode with DMC loaded Date: Fri, 1 Dec 2017 23:58:12 +0000 Message-ID: <1512143740.3309.4.camel@intel.com> References: <20171129143030.3973-1-tvrtko.ursulin@linux.intel.com> <20171130091820.25667-1-tvrtko.ursulin@linux.intel.com> <151203512510.10143.7337589278020185018@mail.alporthouse.com> <20171130111955.xfmt754iotkdm2g3@ideak-desk.fi.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 345A66E127 for ; Fri, 1 Dec 2017 23:58:13 +0000 (UTC) In-Reply-To: <20171130111955.xfmt754iotkdm2g3@ideak-desk.fi.intel.com> Content-Language: en-US Content-ID: <18704362558F14488130FEDA232C9148@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Deak, Imre" Cc: "Intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCAyMDE3LTExLTMwIGF0IDEzOjE5ICswMjAwLCBJbXJlIERlYWsgd3JvdGU6DQo+IE9u IFRodSwgTm92IDMwLCAyMDE3IGF0IDA5OjQ1OjI1QU0gKzAwMDAsIENocmlzIFdpbHNvbiB3cm90 ZToNCj4gPiBRdW90aW5nIFR2cnRrbyBVcnN1bGluICgyMDE3LTExLTMwIDA5OjE4OjIwKQ0KPiA+ ID4gRnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4NCj4gPiA+ IA0KPiA+ID4gSXQgc2VlbXMgdGhhdCB0aGUgRE1DIGxpa2VzIHRvIHRyYW5zaXRpb24gYmV0d2Vl biB0aGUgREMgc3RhdGVzIGEgbG90IHdoZW4NCj4gPiA+IHRoZXJlIGFyZSBubyBjb25uZWN0ZWQg ZGlzcGxheXMgKG5vIGFjdGl2ZSBwb3dlciBkb21haW5zKSBkdXJpbmcgY29tbWFuZA0KPiA+ID4g c3VibWlzc2lvbi4NCj4gPiA+IA0KPiA+ID4gVGhpcyBhY3Rpdml0eSBvbiBEQyBzdGF0ZXMgaGFz IGEgbmVnYXRpdmUgaW1wYWN0IG9uIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUNCj4gPiA+IGNoaXAg d2l0aCBodWdlIGxhdGVuY2llcyBvYnNlcnZlZCBpbiB0aGUgaW50ZXJydXB0IGhhbmRsZXJzIGFu ZCBlbHNld2hlcmUuDQo+ID4gPiBTaW1wbGUgdGVzdHMgbGlrZSBpZ3QvZ2VtX2xhdGVuY3kgLW4g MCBhcmUgc2xvd2VkIGRvd24gYnkgYSBmYWN0b3Igb2YNCj4gPiA+IGVpZ2h0Lg0KPiA+ID4gDQo+ ID4gPiBXb3JrIGFyb3VuZCBpdCBieSBpbnRyb2R1Y2luZyBhIG5ldyBwb3dlciBkb21haW4gbmFt ZWQsDQo+ID4gPiBQT1dFUl9ET01BSU5fR1RfSVJRLCBhc3NvY2l0YXRlZCB3aXRoIHRoZSAiREMg b2ZmIiBwb3dlciB3ZWxsLCB3aGljaCBpcw0KPiA+ID4gaGVsZCBmb3IgdGhlIGR1cmF0aW9uIG9m IGNvbW1hbmQgc3VibWlzc2lvbiBhY3Rpdml0eS4NCj4gPiA+IA0KPiA+ID4gdjI6DQo+ID4gPiAg KiBBZGQgY29tbWl0IHRleHQgYXMgY29tbWVudCBpbiBpOTE1X2dlbV9tYXJrX2J1c3kuIChDaHJp cyBXaWxzb24pDQo+ID4gPiAgKiBQcm90ZWN0IG1hY3JvIGJvZHkgd2l0aCBicmFjZXMuIChKYW5p IE5pa3VsYSkNCj4gPiA+IA0KPiA+ID4gdjM6DQo+ID4gPiAgKiBBZGQgZGVkaWNhdGVkIHBvd2Vy IGRvbWFpbiBmb3IgY2xhcml0eS4gKENocmlzLCBJbXJlKQ0KPiA+ID4gICogQ29tbWl0IG1lc3Nh Z2UgYW5kIGNvbW1lbnQgdGV4dCB1cGRhdGVzLg0KPiA+ID4gICogQXBwbHkgdG8gYWxsIGJpZy1j b3JlIEdFTjkgcGFydHMgYXBhcnQgZm9yIFNreWxha2Ugd2hpY2ggaXMgcGVuZGluZyBETUMNCj4g PiA+ICAgIGZpcm13YXJlIHJlbGVhc2UuDQo+ID4gPiANCj4gPiA+IHY0Og0KPiA+ID4gICogUG93 ZXIgZG9tYWluIHNob3VsZCBiZSBpbm5lciB0byBkZXZpY2UgcnVudGltZSBwbS4gKENocmlzKQ0K PiA+ID4gICogU2ltcGxpZnkgTkVFRFNfQ1NSX0dUX1BFUkZfV0EgbWFjcm8uIChDaHJpcykNCj4g PiA+ICAqIEhhbmRsZSBhc3luYyBETUMgbG9hZGluZyBieSBtb3ZpbmcgdGhlIEdUX0lSUSBwb3dl ciBkb21haW4gbG9naWMgaW50bw0KPiA+ID4gICAgaW50ZWxfcnVudGltZV9wbS4gKERhbmllbCwg Q2hyaXMpDQo+ID4gPiAgKiBJbmNsdWRlIHNtYWxsIGNvcmUgR0VOOSBhcyB3ZWxsLiAoSW1yZSkN Cj4gPiA+IA0KPiA+ID4gdjUNCj4gPiA+ICAqIFNwZWNpYWwgaGFuZGxpbmcgZm9yIGFzeW5jIERN QyBsb2FkIGlzIG5vdCBuZWVkZWQgc2luY2Ugb24gZmFpbHVyZSB0aGUNCj4gPiA+ICAgIHBvd2Vy IGRvbWFpbiByZWZlcmVuY2UgaXMga2VwdCBwZXJtYW5lbnRseSB0YWtlbi4gKEltcmUpDQo+ID4g PiANCj4gPiA+IFNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBp bnRlbC5jb20+DQo+ID4gPiBCdWd6aWxsYTogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9z aG93X2J1Zy5jZ2k/aWQ9MTAwNTcyDQo+ID4gPiBUZXN0Y2FzZTogaWd0L2dlbV9leGVjX25vcC9o ZWFkbGVzcw0KPiA+ID4gQ2M6IEltcmUgRGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4NCj4gPiA+ IEFja2VkLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4gKHYyKQ0K PiA+ID4gQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPg0KPiA+ID4g Q2M6IERtaXRyeSBSb2dvemhraW4gPGRtaXRyeS52LnJvZ296aGtpbkBpbnRlbC5jb20+DQo+ID4g PiAtLS0NCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgfCAg NCArKysrDQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyAgICAgICAgIHwg IDMgKysrDQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jIHwg MTQgKysrKysrKysrKysrKysNCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50 aW1lX3BtLmMgfCAxNCArKysrKysrKysrKysrKw0KPiA+ID4gIDQgZmlsZXMgY2hhbmdlZCwgMzUg aW5zZXJ0aW9ucygrKQ0KPiA+ID4gDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgNCj4gPiA+ IGluZGV4IGJkZGQ2NTgzOWY2MC4uNTljZjExZGQ1ZDNiIDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaA0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaA0KPiA+ID4gQEAgLTM5OCw2ICszOTgsNyBAQCBlbnVtIGludGVsX2Rp c3BsYXlfcG93ZXJfZG9tYWluIHsNCj4gPiA+ICAgICAgICAgUE9XRVJfRE9NQUlOX0FVWF9ELA0K PiA+ID4gICAgICAgICBQT1dFUl9ET01BSU5fR01CVVMsDQo+ID4gPiAgICAgICAgIFBPV0VSX0RP TUFJTl9NT0RFU0VULA0KPiA+ID4gKyAgICAgICBQT1dFUl9ET01BSU5fR1RfSVJRLA0KPiA+ID4g ICAgICAgICBQT1dFUl9ET01BSU5fSU5JVCwNCj4gPiA+ICANCj4gPiA+ICAgICAgICAgUE9XRVJf RE9NQUlOX05VTSwNCj4gPiA+IEBAIC0zMjg1LDYgKzMyODYsOSBAQCBpbnRlbF9pbmZvKGNvbnN0 IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikNCj4gPiA+ICAjZGVmaW5lIEdUX0ZS RVFVRU5DWV9NVUxUSVBMSUVSIDUwDQo+ID4gPiAgI2RlZmluZSBHRU45X0ZSRVFfU0NBTEVSIDMN Cj4gPiA+ICANCj4gPiA+ICsjZGVmaW5lIE5FRURTX0NTUl9HVF9QRVJGX1dBKGRldl9wcml2KSBc DQo+ID4gPiArICAgICAgIChIQVNfQ1NSKGRldl9wcml2KSAmJiBJU19HRU45KGRldl9wcml2KSAm JiAhSVNfU0tZTEFLRShkZXZfcHJpdikpDQo+IA0KPiBOaXRwaWNrOiBjb3VsZCBiZSBqdXN0ICFJ U19TS1lMQUtFKCksIGJ1dCB3b3JrcyBpbiB0aGUgYWJvdmUgd2F5IHRvby4NCj4gRm9yIGFsbCBv dGhlciBwbGF0Zm9ybXMgdGhlIEdUX0lSUSBkb21haW4gd29uJ3QgYmUgbWFwcGVkIG1ha2luZw0K PiBkaXNwbGF5X3Bvd2VyX2dldC9wdXQgb24gdGhvc2UganVzdCBhIGRvbWFpbiByZWYgaW5jL2Rl Yywgb3RoZXJ3aXNlIGENCj4gbm9wLg0KDQpGb2xrcywgaXMgbXkgdW5kZXJzdGFuZGluZyBjb3Jy ZWN0IHRoYXQgb25jZSBTS0wgRE1DIHdpbGwgYmUgbWVyZ2VkIHdlDQpqdXN0IHJlbW92ZSAhSVNf U0tZTEFLRSBmcm9tIHRoZSBhYm92ZSBjaGVjayB0byBnZXQgdGhlIHBlcmZvcm1hbmNlIGZpeA0K Zm9yIFNLTCBhbmQgbm90aGluZyBtb3JlIGNoYW5nZXMgaW4gdGhlIHBhdGNoPyBJIGFtIGFza2lu ZyBiZWNhdXNlIHRoZXJlDQppcyBhIG5lZWQgdG8gaGF2ZSBTS0wgcGF0Y2ggb24gdGhlIHBsYXRl IGFscmVhZHkgdG8gdmVyaWZ5IHRoZSBmaXgNCnNvb25lciByYXRoZXIgdGhhbiBsYXRlci4gRnJv bSB0aGlzIHBlcnNwZWN0aXZlLCBjYW4gd2UgaGF2ZSBvbmUgbW9yZQ0KcGF0Y2ggaW4gdGhlIHNl cmllcyBkZWRpY2F0ZWQgdG8gZml4IFNLTCByaWdodCBub3c/IEFmdGVyIGFsbCwgU0tMIERNQw0K aXMgYXZhaWxhYmxlIGluIGRybS1maXJtd2FyZSBhbHJlYWR5LCB0aG9zZSB3aG8gbmVlZCBjYW4g dHJ5IGl0Lg0KDQo+IA0KPiA+ID4gKw0KPiA+ID4gICNpbmNsdWRlICJpOTE1X3RyYWNlLmgiDQo+ ID4gPiAgDQo+ID4gPiAgc3RhdGljIGlubGluZSBib29sIGludGVsX3Z0ZF9hY3RpdmUodm9pZCkN Cj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYw0KPiA+ID4gaW5kZXggMzU0YjA1NDZhMTkxLi5j NjA2N2NiYTFkY2EgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jDQo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jDQo+ID4g PiBAQCAtMzM4MSw2ICszMzgxLDkgQEAgaTkxNV9nZW1faWRsZV93b3JrX2hhbmRsZXIoc3RydWN0 IHdvcmtfc3RydWN0ICp3b3JrKQ0KPiA+ID4gIA0KPiA+ID4gICAgICAgICBpZiAoSU5URUxfR0VO KGRldl9wcml2KSA+PSA2KQ0KPiA+ID4gICAgICAgICAgICAgICAgIGdlbjZfcnBzX2lkbGUoZGV2 X3ByaXYpOw0KPiA+ID4gKw0KPiA+ID4gKyAgICAgICBpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChk ZXZfcHJpdiwgUE9XRVJfRE9NQUlOX0dUX0lSUSk7DQo+ID4gPiArDQo+ID4gPiAgICAgICAgIGlu dGVsX3J1bnRpbWVfcG1fcHV0KGRldl9wcml2KTsNCj4gPiA+ICBvdXRfdW5sb2NrOg0KPiA+ID4g ICAgICAgICBtdXRleF91bmxvY2soJmRldl9wcml2LT5kcm0uc3RydWN0X211dGV4KTsNCj4gPiA+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZXF1ZXN0LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZXF1ZXN0LmMNCj4gPiA+IGluZGV4IGE5MGJk ZDI2NTcxZi4uYzI4YTRjZWIwMTZkIDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jDQo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9yZXF1ZXN0LmMNCj4gPiA+IEBAIC0yNTIsNiArMjUyLDIwIEBAIHN0YXRpYyB2 b2lkIG1hcmtfYnVzeShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkNCj4gPiA+ICAgICAg ICAgR0VNX0JVR19PTighaTkxNS0+Z3QuYWN0aXZlX3JlcXVlc3RzKTsNCj4gPiA+ICANCj4gPiA+ ICAgICAgICAgaW50ZWxfcnVudGltZV9wbV9nZXRfbm9yZXN1bWUoaTkxNSk7DQo+ID4gPiArDQo+ ID4gPiArICAgICAgIC8qDQo+ID4gPiArICAgICAgICAqIEl0IHNlZW1zIHRoYXQgdGhlIERNQyBs aWtlcyB0byB0cmFuc2l0aW9uIGJldHdlZW4gdGhlIERDIHN0YXRlcyBhIGxvdA0KPiA+ID4gKyAg ICAgICAgKiB3aGVuIHRoZXJlIGFyZSBubyBjb25uZWN0ZWQgZGlzcGxheXMgKG5vIGFjdGl2ZSBw b3dlciBkb21haW5zKSBkdXJpbmcNCj4gPiA+ICsgICAgICAgICogY29tbWFuZCBzdWJtaXNzaW9u Lg0KPiA+ID4gKyAgICAgICAgKg0KPiA+ID4gKyAgICAgICAgKiBUaGlzIGFjdGl2aXR5IGhhcyBu ZWdhdGl2ZSBpbXBhY3Qgb24gdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBjaGlwIHdpdGgNCj4gPiA+ ICsgICAgICAgICogaHVnZSBsYXRlbmNpZXMgb2JzZXJ2ZWQgaW4gdGhlIGludGVycnVwdCBoYW5k bGVyIGFuZCBlbHNld2hlcmUuDQo+ID4gPiArICAgICAgICAqDQo+ID4gPiArICAgICAgICAqIFdv cmsgYXJvdW5kIGl0IGJ5IGdyYWJiaW5nIGEgR1QgSVJRIHBvd2VyIGRvbWFpbiB3aGlsc3QgdGhl cmUgaXMgYW55DQo+ID4gPiArICAgICAgICAqIEdUIGFjdGl2aXR5LCBwcmV2ZW50aW5nIGFueSBE QyBzdGF0ZSB0cmFuc2l0aW9ucy4NCj4gPiA+ICsgICAgICAgICovDQo+ID4gPiArICAgICAgIGlu dGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGk5MTUsIFBPV0VSX0RPTUFJTl9HVF9JUlEpOw0KPiA+ID4g Kw0KPiA+ID4gICAgICAgICBpOTE1LT5ndC5hd2FrZSA9IHRydWU7DQo+ID4gPiAgDQo+ID4gPiAg ICAgICAgIGludGVsX2VuYWJsZV9ndF9wb3dlcnNhdmUoaTkxNSk7DQo+ID4gPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGltZV9wbS5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcnVudGltZV9wbS5jDQo+ID4gPiBpbmRleCA4MzE1NDk5NDUyZGMuLjQ4 YWQwODI4YWNlNyAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3J1bnRpbWVfcG0uYw0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVu dGltZV9wbS5jDQo+ID4gPiBAQCAtMTMwLDYgKzEzMCw4IEBAIGludGVsX2Rpc3BsYXlfcG93ZXJf ZG9tYWluX3N0cihlbnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIGRvbWFpbikNCj4gPiA+ ICAgICAgICAgICAgICAgICByZXR1cm4gIklOSVQiOw0KPiA+ID4gICAgICAgICBjYXNlIFBPV0VS X0RPTUFJTl9NT0RFU0VUOg0KPiA+ID4gICAgICAgICAgICAgICAgIHJldHVybiAiTU9ERVNFVCI7 DQo+ID4gPiArICAgICAgIGNhc2UgUE9XRVJfRE9NQUlOX0dUX0lSUToNCj4gPiA+ICsgICAgICAg ICAgICAgICByZXR1cm4gIkdUX0lSUSI7DQo+ID4gPiAgICAgICAgIGRlZmF1bHQ6DQo+ID4gPiAg ICAgICAgICAgICAgICAgTUlTU0lOR19DQVNFKGRvbWFpbik7DQo+ID4gPiAgICAgICAgICAgICAg ICAgcmV0dXJuICI/IjsNCj4gPiA+IEBAIC0xNDcxLDYgKzE0NzMsOSBAQCB2b2lkIGludGVsX2Rp c3BsYXlfcG93ZXJfZ2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwNCj4gPiA+ ICB7DQo+ID4gPiAgICAgICAgIHN0cnVjdCBpOTE1X3Bvd2VyX2RvbWFpbnMgKnBvd2VyX2RvbWFp bnMgPSAmZGV2X3ByaXYtPnBvd2VyX2RvbWFpbnM7DQo+ID4gPiAgDQo+ID4gPiArICAgICAgIGlm IChkb21haW4gPT0gUE9XRVJfRE9NQUlOX0dUX0lSUSAmJiAhTkVFRFNfQ1NSX0dUX1BFUkZfV0Eo ZGV2X3ByaXYpKQ0KPiA+ID4gKyAgICAgICAgICAgICAgIHJldHVybjsNCj4gPiANCj4gPiBJIHdh cyBob3BpbmcgdGhhdCBpbiB0aGUgbWFnaWMgb2YgdGhlIHBvd2VyZG9tYWlucywgdGhpcyB3b3Vs ZCBqdXN0DQo+ID4gZXZhcG9yYXRlIChvciBhdCBsZWFzdCBmaW5kIGl0cyBvd24gcGxhY2Ugd2l0 aGluIHRoZSBwb3dlcndlbGwgZW5hYmxpbmcpLg0KPiANCj4gWWVwLCB0aGF0IHdvdWxkIGJlICJu b3JtYWxseSIgdGhlIGNhc2UuIEJ1dCBzaW5jZSB3ZSBoYXZlIG9ubHkgYSBzaW5nbGUNCj4gc2V0 IG9mIGRvbWFpbnMtPnBvd2Vyd2VsbHMgbWFwcGluZyBmb3IgYWxsIEdFTjlfQkMgd2UgY2FuJ3Qg aXNvbGF0ZSBTS0wNCj4gdGhhdCB3YXkgdy9vIGR1cGxpY2F0aW5nIHRoZSBtYXBwaW5nIGZvciBT S0wuIEFsdGhvdWdoIGFsbCBHRU45X0JDIGFyZQ0KPiB0aGUgc2FtZSBmcm9tIHBvd2VyIHdlbGwg aGFuZGxpbmcgUE9WIGZvciBzb21lIHJlYXNvbiB0aGVyZSBhcmUgc3RpbGwNCj4gc2VwYXJhdGUg RE1DIGZpcm13YXJlcyBmb3IgS0JML0NGTCBhbmQgU0tMLiBUaGUgY29ycnVwdGlvbiBwcm9ibGVt IGlzDQo+IG9ubHkgZml4ZWQgaW4gdGhlIEtCTC9DRkwgZmlybXdhcmUgdGhlIFNLTCBvbmUgc3Rp bGwgdG8gYmUgYWRkZWQgdG8NCj4gbGludXgtZmlybXdhcmUuZ2l0IC4uIEF0IHRoYXQgcG9pbnQg d2UgY2FuIGFsc28gcmVtb3ZlIHRoZXNlIGNoZWNrcy4NCj4gDQo+ID4gDQo+ID4gSWYgSW1yZSBp cyBoYXBweSB3aXRoIHBsb25raW5nIHRoaXMgaGVyZSwNCj4gPiBSZXZpZXdlZC1ieTogQ2hyaXMg V2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+DQo+ID4gDQo+ID4gT3IgYXQgbGVhc3Qg Z29vZCBlbm91Z2ggZm9yIG5vdyBhbmQgY2FuIGJlIGltcHJvdmVkIHVwb24/DQo+IA0KPiBZZXMs IGxvb2tzIG9rIGFuZCBjYW4gYWRqdXN0IGZvciBTS0wgbGF0ZXIuDQo+IA0KPiA+IC1DaHJpcw0K DQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK