From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lionel Landwerlin Subject: Re: [PATCH 4/7] drm/i915/perf: lock powergating configuration to default when active Date: Fri, 7 Sep 2018 10:55:46 +0100 Message-ID: <9f0c7d11-73df-0bb3-296c-1fb3ce9a36ee@intel.com> References: <20180905142222.3251-1-tvrtko.ursulin@linux.intel.com> <20180905142222.3251-5-tvrtko.ursulin@linux.intel.com> <9450ba2c-0f62-88d9-de26-a82dc61cf0f8@intel.com> <153622864574.3050.17378497295783267410@skylake-alporthouse-com> <153622933425.3050.656484604120089123@skylake-alporthouse-com> <3f14bd57-3a23-7208-6072-6d51892994ca@intel.com> <4bfe6648-203f-fbc8-9bcd-7b4e28279d02@linux.intel.com> <6c567d44-6edd-0bc4-ccd7-dc678b6e5006@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 96ACA6E8BD for ; Fri, 7 Sep 2018 09:55:49 +0000 (UTC) In-Reply-To: <6c567d44-6edd-0bc4-ccd7-dc678b6e5006@linux.intel.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tvrtko Ursulin , Chris Wilson , Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-Id: intel-gfx@lists.freedesktop.org T24gMDcvMDkvMjAxOCAxMDozOSwgVHZydGtvIFVyc3VsaW4gd3JvdGU6Cj4KPiBPbiAwNy8wOS8y MDE4IDEwOjIzLCBMaW9uZWwgTGFuZHdlcmxpbiB3cm90ZToKPj4gT24gMDcvMDkvMjAxOCAwOToy NiwgVHZydGtvIFVyc3VsaW4gd3JvdGU6Cj4+Pgo+Pj4gT24gMDYvMDkvMjAxOCAxMTozNiwgTGlv bmVsIExhbmR3ZXJsaW4gd3JvdGU6Cj4+Pj4gT24gMDYvMDkvMjAxOCAxMToyMiwgQ2hyaXMgV2ls c29uIHdyb3RlOgo+Pj4+PiBRdW90aW5nIExpb25lbCBMYW5kd2VybGluICgyMDE4LTA5LTA2IDEx OjE4OjAxKQo+Pj4+Pj4gT24gMDYvMDkvMjAxOCAxMToxMCwgQ2hyaXMgV2lsc29uIHdyb3RlOgo+ Pj4+Pj4+IFF1b3RpbmcgTGlvbmVsIExhbmR3ZXJsaW4gKDIwMTgtMDktMDYgMTA6NTc6NDcpCj4+ Pj4+Pj4+IE9uIDA1LzA5LzIwMTggMTU6MjIsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+Pj4+Pj4+ Pj4gRnJvbTogTGlvbmVsIExhbmR3ZXJsaW4gPGxpb25lbC5nLmxhbmR3ZXJsaW5AaW50ZWwuY29t Pgo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+IElmIHNvbWUgb2YgdGhlIGNvbnRleHRzIHN1Ym1pdHRpbmcg d29ya2xvYWRzIHRvIHRoZSBHUFUgaGF2ZSBiZWVuCj4+Pj4+Pj4+PiBjb25maWd1cmVkIHRvIHNo dXRkb3duIHNsaWNlcy9zdWJzbGljZXMsIHdlIG1pZ2h0IGxvb3NlIHRoZSBOT0EKPj4+Pj4+Pj4+ IGNvbmZpZ3VyYXRpb25zIHdyaXR0ZW4gaW4gdGhlIE5PQSBtdXhlcy4KPj4+Pj4+Pj4+Cj4+Pj4+ Pj4+PiBPbmUgcG9zc2libGUgc29sdXRpb24gdG8gdGhpcyBwcm9ibGVtIGlzIHRvIHJlcHJvZ3Jh bSB0aGUgTk9BIAo+Pj4+Pj4+Pj4gbXV4ZXMKPj4+Pj4+Pj4+IHdoZW4gd2Ugc3dpdGNoIHRvIGEg bmV3IGNvbnRleHQuIFdlIGluaXRpYWxseSB0cmllZCB0aGlzIGluIHRoZQo+Pj4+Pj4+Pj4gd29y a2Fyb3VuZCBiYXRjaGJ1ZmZlciBidXQgc29tZSBjb25jZXJucyB3aGVyZSByYWlzZWQgYWJvdXQg Cj4+Pj4+Pj4+PiB0aGUgY29zdAo+Pj4+Pj4+Pj4gb2YgcmVwcm9ncmFtbWluZyBhdCBldmVyeSBj b250ZXh0IHN3aXRjaC4gVGhpcyBzb2x1dGlvbiBpcyAKPj4+Pj4+Pj4+IGFsc28gbm90Cj4+Pj4+ Pj4+PiB3aXRob3V0IGNvbnNlcXVlbmNlcyBmcm9tIHRoZSB1c2Vyc3BhY2UgcG9pbnQgb2Ygdmll dy4gCj4+Pj4+Pj4+PiBSZXByb2dyYW1taW5nCj4+Pj4+Pj4+PiBvZiB0aGUgbXV4ZXMgY2FuIG9u bHkgaGFwcGVuIG9uY2UgdGhlIHBvd2VyZ2F0aW5nIAo+Pj4+Pj4+Pj4gY29uZmlndXJhdGlvbiBo YXMKPj4+Pj4+Pj4+IGNoYW5nZWQgKHdoaWNoIGhhcHBlbnMgYWZ0ZXIgY29udGV4dCBzd2l0Y2gp LiBUaGlzIG1lYW5zIGZvciBhIAo+Pj4+Pj4+Pj4gd2luZG93Cj4+Pj4+Pj4+PiBvZiB0aW1lIGR1 cmluZyB0aGUgcmVjb3JkaW5nLCBjb3VudGVycyByZWNvcmRlZCBieSB0aGUgT0EgdW5pdCAKPj4+ Pj4+Pj4+IG1pZ2h0Cj4+Pj4+Pj4+PiBiZSBpbnZhbGlkLiBUaGlzIHJlcXVpcmVzIHVzZXJzcGFj ZSBkZWFsaW5nIHdpdGggT0EgcmVwb3J0cyB0byAKPj4+Pj4+Pj4+IGRpc2NhcmQKPj4+Pj4+Pj4+ IHRoZSBpbnZhbGlkIHZhbHVlcy4KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiBNaW5pbWl6aW5nIHRoZSBy ZXByb2dyYW1taW5nIGNvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHRyYWNraW5nIAo+Pj4+Pj4+Pj4g b2YgdGhlCj4+Pj4+Pj4+PiBsYXN0IHByb2dyYW1tZWQgY29uZmlndXJhdGlvbiBzb21ld2hlcmUg aW4gR0dUVCBhbmQgdXNlIAo+Pj4+Pj4+Pj4gTUlfUFJFRElDQVRFCj4+Pj4+Pj4+PiB0byBkaXNj YXJkIHNvbWUgb2YgdGhlIHByb2dyYW1taW5nIGNvbW1hbmRzLCBidXQgdGhlIGNvbW1hbmQgCj4+ Pj4+Pj4+PiBzdHJlYW1lcgo+Pj4+Pj4+Pj4gd291bGQgc3RpbGwgaGF2ZSB0byBwYXJzZSBhbGwg dGhlIE1JX0xSSSBpbnN0cnVjdGlvbnMgaW4gdGhlCj4+Pj4+Pj4+PiB3b3JrYXJvdW5kIGJhdGNo YnVmZmVyLgo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+IEFub3RoZXIgc29sdXRpb24sIHdoaWNoIHRoaXMg Y2hhbmdlIGltcGxlbWVudHMsIGlzIHRvIHNpbXBseSAKPj4+Pj4+Pj4+IGRpc3JlZ2FyZAo+Pj4+ Pj4+Pj4gdGhlIHVzZXIgcmVxdWVzdGVkIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBwZXJpb2Qgb2Yg dGltZSB3aGVuIAo+Pj4+Pj4+Pj4gaTkxNS9wZXJmCj4+Pj4+Pj4+PiBpcyBhY3RpdmUuIFRoZXJl IGlzIG5vIGtub3duIGlzc3VlIHdpdGggdGhpcyBhcGFydCBmcm9tIGEgCj4+Pj4+Pj4+PiBwZXJm b3JtYW5jZQo+Pj4+Pj4+Pj4gcGVuYWxpdHkgZm9yIHNvbWUgbWVkaWEgd29ya2xvYWRzIHRoYXQg YmVuZWZpdCBmcm9tIHJ1bm5pbmcgb24gYQo+Pj4+Pj4+Pj4gcGFydGlhbGx5IHBvd2VyZ2F0ZWQg R1BVLiBXZSBhbHJlYWR5IHByZXZlbnQgUkM2IGZyb20gCj4+Pj4+Pj4+PiBhZmZlY3RpbmcgdGhl Cj4+Pj4+Pj4+PiBwcm9ncmFtbWluZyBzbyBpdCBkb2Vzbid0IHNvdW5kIGNvbXBsZXRlbHkgdW5y ZWFzb25hYmxlIHRvIAo+Pj4+Pj4+Pj4gaG9sZCBvbgo+Pj4+Pj4+Pj4gcG93ZXJnYXRpbmcgZm9y IHRoZSBzYW1lIHJlYXNvbi4KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiB2MjogTGVhdmUgUlBDUyBwcm9n cmFtbWluZyBpbiBpbnRlbF9scmMuYyAoTGlvbmVsKQo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+IHYzOiBV cGRhdGUgZm9yIHMvdW5pb24gaW50ZWxfc3NldS9zdHJ1Y3QgaW50ZWxfc3NldS8gKExpb25lbCkK Pj4+Pj4+Pj4+IMKgwqDCoMKgwqDCoCBNb3JlIHRvX2ludGVsX2NvbnRleHQoKSAoVHZydGtvKQo+ Pj4+Pj4+Pj4gwqDCoMKgwqDCoMKgIHMvZGV2X3ByaXYvaTkxNS8gKFR2cnRrbykKPj4+Pj4+Pj4+ Cj4+Pj4+Pj4+PiBUdnJ0a28gVXJzdWxpbjoKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiB2NDoKPj4+Pj4+ Pj4+IMKgwqDCoCAqIFJlYmFzZSBmb3IgbWFrZV9ycGNzIGNoYW5nZXMuCj4+Pj4+Pj4+Pgo+Pj4+ Pj4+Pj4gdjU6Cj4+Pj4+Pj4+PiDCoMKgwqAgKiBBcHBseSBPQSByZXN0cmljdGlvbiBmcm9tIG1h a2VfcnBjcyBkaXJlY3RseS4KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiB2NjoKPj4+Pj4+Pj4+IMKgwqDC oCAqIFJlYmFzZSBmb3IgY29udGV4dCBpbWFnZSBzZXR1cCBjaGFuZ2VzLgo+Pj4+Pj4+Pj4KPj4+ Pj4+Pj4+IFNpZ25lZC1vZmYtYnk6IExpb25lbCBMYW5kd2VybGluIDxsaW9uZWwuZy5sYW5kd2Vy bGluQGludGVsLmNvbT4KPj4+Pj4+Pj4+IFNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0 dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4+Pj4+Pj4+PiAtLS0KPj4+Pj4+Pj4+IMKgwqDCoCBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BlcmYuYyB8wqAgNSArKysrKwo+Pj4+Pj4+Pj4gwqDC oMKgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIHwgMzAgCj4+Pj4+Pj4+PiArKysr KysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KPj4+Pj4+Pj4+IMKgwqDCoCBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9scmMuaCB8wqAgMyArKysKPj4+Pj4+Pj4+IMKgwqDCoCAzIGZpbGVzIGNo YW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQo+Pj4+Pj4+Pj4KPj4+Pj4+ Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BlcmYuYyAKPj4+Pj4+ Pj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wZXJmLmMKPj4+Pj4+Pj4+IGluZGV4IGNj YjIwMjMwZGYyYy4uZGQ2NWI3MmJkZGQ0IDEwMDY0NAo+Pj4+Pj4+Pj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9wZXJmLmMKPj4+Pj4+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcGVyZi5jCj4+Pj4+Pj4+PiBAQCAtMTY3Nyw2ICsxNjc3LDExIEBAIHN0YXRpYyB2 b2lkIAo+Pj4+Pj4+Pj4gZ2VuOF91cGRhdGVfcmVnX3N0YXRlX3VubG9ja2VkKHN0cnVjdCBpOTE1 X2dlbV9jb250ZXh0ICpjdHgsCj4+Pj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgQ1RYX1JFRyhyZWdfc3RhdGUsIHN0YXRlX29mZnNldCwgZmxleF9yZWdzW2ldLCAKPj4+Pj4+ Pj4+IHZhbHVlKTsKPj4+Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgIH0KPj4+Pj4+Pj4+ICsKPj4+Pj4+ Pj4+ICvCoMKgwqDCoCBDVFhfUkVHKHJlZ19zdGF0ZSwgQ1RYX1JfUFdSX0NMS19TVEFURSwgCj4+ Pj4+Pj4+PiBHRU44X1JfUFdSX0NMS19TVEFURSwKPj4+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgZ2VuOF9tYWtlX3JwY3MoZGV2X3ByaXYsCj4+Pj4+Pj4+PiArICZ0b19pbnRlbF9j b250ZXh0KGN0eCwKPj4+Pj4+Pj4+ICsgZGV2X3ByaXYtPmVuZ2luZVtSQ1NdKS0+c3NldSkpOwo+ Pj4+Pj4+PiBJIHRoaW5rIHRoZXJlIGlzIG9uZSBpc3N1ZSBJIG1pc3NlZCBvbiB0aGUgcHJldmlv dXMgaXRlcmF0aW9ucyAKPj4+Pj4+Pj4gb2YgdGhpcwo+Pj4+Pj4+PiBwYXRjaC4KPj4+Pj4+Pj4K Pj4+Pj4+Pj4gVGhpcyBnZW44X3VwZGF0ZV9yZWdfc3RhdGVfdW5sb2NrZWQoKSBpcyBjYWxsZWQg d2hlbiB0aGUgR1BVIGlzIAo+Pj4+Pj4+PiBwYXJrZWQKPj4+Pj4+Pj4gb24gdGhlIGtlcm5lbCBj b250ZXh0Lgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBJdCdzIHN1cHBvc2VkIHRvIHVwZGF0ZSBhbGwgY29u dGV4dHMsIGJ1dCBJIHRoaW5rIHdlIG1pZ2h0IG5vdCAKPj4+Pj4+Pj4gYmUgYWJsZQo+Pj4+Pj4+ PiB0byB1cGRhdGUgdGhlIGtlcm5lbCBjb250ZXh0IGltYWdlIHdoaWxlIHRoZSBHUFUgaXMgdXNp bmcgaXQuCj4+Pj4+Pj4gVGhlIGtlcm5lbCBjb250ZXh0IGlzIG9ubHkgZXZlciB0YWtlbiBpbiBl eHRyZW1pcyAoeW91IGFyZSBlaXRoZXIKPj4+Pj4+PiBwYXJraW5nIG9yIHN0YWxsaW5nIHVzZXJz cGFjZSkgc28gSSBkb24ndCBjYXJlLgo+Pj4+Pj4KPj4+Pj4+IFRoZSBwYXRjaCBleHBvc2luZyB0 aGUgUlBDUyBjb25maWd1cmF0aW9uIHRvIHVzZXJzcGFjZSB3aWxsIG1ha2UgCj4+Pj4+PiB1c2Ug b2YKPj4+Pj4+IHRoZSBrZXJuZWwgY29udGV4dCB3aGlsZSBPQS9wZXJmIGlzIGVuYWJsZWQuIEV2 ZW4gaWYgaXQgCj4+Pj4+PiByZXByb2dyYW1zIHRoZQo+Pj4+Pj4gbG9ja2VkIHZhbHVlIHRoYXQg d2lsbCBicmVhayB0aGUgcG93ZXIgY29uZmlndXJhdGlvbiBzdGFiaWxpdHkgb24gCj4+Pj4+PiBH ZW4xMQo+Pj4+Pj4gKGJlY2F1c2UgdGhlIGxvY2tlZCBjb25maWd1cmF0aW9uIHdpbGwgYmUgZGlm ZmVyZW50IGZyb20gdGhlIGtlcm5lbAo+Pj4+Pj4gY29udGV4dCBjb25maWd1cmF0aW9uKS4KPj4+ Pj4gU3VyZSwgYnV0IGFzIHlvdSBwb2ludCBvdXQgdGhhdCdzIG9ubHkgb24gY2hhbmdpbmcgY29u ZmlndXJhdGlvbi4KPj4+Pj4KPj4+Pj4gV2hhdCdzIG1pc3NpbmcgaW4gdGhlIHBhdGNoIGlzIHRo YXQgd2Ugb25seSBiYWlsIGVhcmx5IGlmIHRoZSBuZXcgCj4+Pj4+IHNzZXUKPj4+Pj4gbWF0Y2hl cyB0aGUgY2UtPnNzZXUsIGJ1dCB0aGF0IGRvZXNuJ3QgbmVjZXNzYXJpbHkgbWF0Y2ggd2hhdHMg aW4gdGhlCj4+Pj4+IGNvbnRleHQgZHVlIHRvIE9BLiAoT3IgbWF5YmUgSSBtaXNzZWQgdGhlIGNv bnZlcnNpb24gdG8gcnBjcyB2YWx1ZSAKPj4+Pj4gYW5kCj4+Pj4+IGNoZWNraW5nLikKPj4+Pj4g LUNocmlzCj4+Pj4+Cj4+Pj4KPj4+PiBZZXAsIGJlY2F1c2UgdGhlIGdlbjhfbWFrZV9ycGNzKCkg cG9zdCBwcm9jZXNzZXMgdGhlIHZhbHVlcyBzdG9yZSAKPj4+PiBhdCB0aGUgZ2VtIGNvbnRleHQg bGV2ZWwsIHdlIHJpc2sgcmVydW5uaW5nIHRoZSBrZXJuZWwgY29udGV4dCB0byAKPj4+PiB3cml0 ZSB0aGUgZXhpdGluZyB2YWx1ZS4KPj4+PiBTb3JyeSB0aGlzIGlzIGFsbCBzbyBtZXNzeSA6KAo+ Pj4KPj4+IExldHMgc2VlIGlmIEkgbWFuYWdlZCB0byBmb2xsb3cgaGVyZS4KPj4+Cj4+PiBUaGUg Y3VycmVudCBjb2RlIGluZGVlZCBiYWlscyBvdXQgYXQgdGhlIHNldCBjdHggcGFyYW0gbGV2ZWwg aWYgdGhlIAo+Pj4gcmVxdWVzdGVkIHN0YXRlIG1hdGNoZXMgdGhlIGNlLT5zdGF0ZS4gTXkgdGhp bmtpbmcgd2FzIHRoYXQgCj4+PiBjZS0+c3RhdGUgaXMgdGhlIG1hc3RlciBzdGF0ZSBhbmQgd2hh dGV2ZXIgaGFwcGVucyBpbiAicG9zdCAKPj4+IHByb2Nlc3NpbmciIHZpYSBnZW44X21ha2VfcnBj cyBzaG91bGQgYmUgaGlkZGVuIGZyb20gaXQgc2luY2UgdGhlIAo+Pj4gZGVzaWduIGlzIHRoYXQg dGhlIGk5MTVfcGVyZi5jIHdpbGwgcmUtY29uZmlndXJlIGFsbCBjb250ZXh0cyB3aGVuIAo+Pj4g dGhlIE9BIGFjdGl2ZSBzdGF0dXMgY2hhbmdlcyAodG8gZWl0aGVyIGRpcmVjdGlvbikuCj4+Pgo+ Pj4gU28gSSBkb24ndCBzZWUgYSBwcm9ibGVtIGluIHRob3NlIHR3byBpbnRlcmFjdGlvbnMuCj4+ Cj4+Cj4+IExldCdzIHNheSB5b3UgaGF2ZSBjb250ZXh0QSB3aXRoIHNzZXUoc2xpY2Usc3Vic2xp Y2UpPSgweDEvMHhmZikgZm9yIAo+PiBJQ0wuCj4+Cj4+IFlvdSB0aGVuIGVuYWJsZSBPQSB3aGlj aCBsb2NrcyB0aGUgY29uZmlndXJhdGlvbiBhdCAoMHgxLDB4ZikuCj4+Cj4+IFRoZSBrZXJuZWwg Y29udGV4dCBoYXMgcmV0YWluZWQgaXRzICgweDEvMHhmZikgY29uZmlndXJhdGlvbi4KPj4KPj4K Pj4gQW5kIGFmdGVyIHlvdSBjaGFuZ2UgdGhlIGNvbmZpZyBvZiBjb250ZXh0QSB0byAoMHgxLDB4 NykuCj4+Cj4+Cj4+IFRoaXMgd291bGQgbGVhZCB0byB0aGUga2VybmVsIGNvbnRleHQgc2NoZWR1 bGVkIHdpdGggKDB4MSwweGZmKSB3aGlsZSAKPj4gT0EgaXMgYWN0aXZlLgo+Cj4gT2theSB0aGF0 J3MgYSBwcm9ibGVtIGRpc2N1c3NlZCBpbiB0aGUgcGFyYWdyYXBoIGJlbG93IC0gdGhhdCB0aGUg Cj4ga2VybmVsIGNvbnRleHQgaXMgbm90IHVwZGF0ZWQgYXQgYWxsLiBCdXQgaXMgaXQgYSBwcm9i bGVtIGZvciBPQT8gV2lsbCAKPiBpdCBtZXNzIHVwIHNvbWUgY291bnRlcnMgZXZlbiBpZiBrZXJu ZWwgY29udGV4dCBpc24ndCBleGVjdXRpbmcgCj4gYW55dGhpbmcgaW50ZXJhY3Rpbmcgd2l0aCB0 aGVtPyBPciBpcyBpdD8KCgpXaGF0IHRoZSBIVyBpcyBnb2luZyB0byBkbyB0byB0aGUgTk9BIGxv Z2ljIGluIHBvd2VyIGNvbmZpZ3VyYXRpb24gCmNoYW5nZXMgaXMgbm90IHJlYWxseSBkb2N1bWVu dGVkLgpFeHBlcmltZW50YWxseSBvbiBTS0wgR1Q0LCBpdCBzZWVtcyBhIGNoYW5nZSBpbiBwb3dl ciBjb25maWd1cmF0aW9uIHdpbGwgCnRyaWdnZXIgYSBwb3dlciBvZmYgb2YgZXZlcnl0aGluZyBi ZWZvcmUgYXBwbHlpbmcgdGhlIHBvd2VyIGF0IHRoZSBuZXcgCmNvbmZpZ3VyYXRpb24uClNvIHRo YXQgd291bGQgaW1wbHkgbG9vc2luZyB0aGUgTk9BIHByb2dyYW1taW5nIHdoZW4gd2Ugc3dpdGNo IHRvIHRoZSAKa2VybmVsIGNvbnRleHQgd2hpY2ggbWVhbnMgaW52YWxpZCB2YWx1ZXMgaW4gdGhl IGNvdW50ZXJzLgoKCj4KPj4KPj4+Cj4+PiBBcGFydCBmcm9tIG9uZSwgZ2V0X3BhcmFtX3NzZXUg d2lsbCBsaWUgYSBiaXQgLSB3ZSBjYW4gZGlzY3VzcyBhYm91dCAKPj4+IHRoaXMgb25lIG1vcmUu IEF0IG9uZSBwb2ludCBJIHN1Z2dlc3RlZCB3ZSBoYXZlIHR3byBzZXRzIG9mIG1hc2tzIGluIAo+ Pj4gdGhlIHVBUEksIHJlcXVlc3RlZCBhbmQgYWN0aXZlIGluIGEgd2F5LiBTbyB1c2Vyc3BhY2Ug Y291bGQgcXVlcnkgCj4+PiB3aGF0IGl0IHNldCBhbmQgd2hhdCBpcyBhY3R1YWxseSBhY3RpdmUu Cj4+Pgo+Pj4gTm93IHNlY29uZCBpc3N1ZSBpcyBpZiBpOTE1X3BlcmYuYyBpcyBhYmxlIHRvIHJl cHJvZ3JhbSB0aGUga2VybmVsIAo+Pj4gY29uZmlnLgo+Pj4KPj4+IEhlcmUgaXRzIHRydWUsIGl0 IHdpbGwgd3JpdGUgdG8gdGhlIGNvbnRleHQgaW1hZ2UgYW5kIHRoYXQgd2lsbCBnZXQgCj4+PiBv dmVyd3JpdHRlbiBieSBjb250ZXh0IHNhdmUuCj4+Pgo+Pj4gSWYgdGhhdCBpcyBhIHByb2JsZW0g Zm9yIE9BLCBJIHdhcyBpbml0aWFsbHkgaWYgYSB0aHJvdy1hd2F5IHNlY29uZCAKPj4+ICJrZXJu ZWwiIGNvbnRleHQgY291bGQgYmUgdXNlIHRvIHJlLXByb2dyYW0gdGhlIHJlYWwgb25lLCBidXQg Cj4+PiBwZXJoYXBzIGV2ZW4gc2ltcGxlciAtIHdoYXQgYWJvdXQgYSBtbWlvIHdyaXRlIHRvIHBy b2dyYW0gdGhlIFJQQ1MgCj4+PiB3aGlsZSBrZXJuZWwgY29udGV4dCBpcyBhY3RpdmU/Cj4+Cj4+ Cj4+IERvY3VtZW50YXRpb24gc2F5cyA6ICJUaGlzIHJlZ2lzdGVyIG11c3Qgbm90IGJlIHByb2dy YW1tZWQgZGlyZWN0bHkgCj4+IHRocm91Z2ggQ1BVIE1NSU8gY3ljbGUuIgo+Pgo+Pgo+PiBTb3Jy eSA6KAo+Cj4gVWdoLi4gb2theSwgaGVscCBtZSB1bmRlcnN0YW5kIGlmIGtlcm5lbCBjb250ZXh0 IGFic29sdXRlbHkgbmVlZHMgdG8gCj4gZm9sbG93IHRoZSAibG9jayIgZm9yIE9BIHRvIHdvcmsg YW5kIHRoZW4gd2UnbGwgc2VlIHdoYXQgdG8gZG8uCgpJIHRoaW5rIHNvLgoKWW91ciBpZGVhIG9m IGEgdGhyb3cgYXdheSBjb250ZXh0IHRvIHJlcHJvZ3JhbW1pbmcgZXZlcnkgc2VlbXMgc291bmQu CgpUaGFua3MsCgotCkxpb25lbAoKCj4KPiBSZWdhcmRzLAo+Cj4gVHZydGtvCj4KCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=