From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 1/3] drm/i915: Make ips_enabled a property depending on whether IPS is enabled. Date: Fri, 17 Nov 2017 17:52:57 +0200 Message-ID: <20171117155257.GM10981@intel.com> References: <20171117153756.33558-1-maarten.lankhorst@linux.intel.com> <20171117153756.33558-2-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 296D56E39D for ; Fri, 17 Nov 2017 15:53:01 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20171117153756.33558-2-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBOb3YgMTcsIDIwMTcgYXQgMDQ6Mzc6NTRQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gaXBzX2VuYWJsZWQgd2FzIHVzZWQgYXMgYSB2YXJpYWJsZSBvZiB3aGV0aGVy IElQUyBjYW4gYmUgZW5hYmxlZCBvciBub3QsCj4gYnV0IHNob3VsZCBiZSB1c2VkIHRvIHRlc3Qg d2hldGhlciBJUFMgaXMgYWN0dWFsbHkgZW5hYmxlZC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBNYWFy dGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+IC0tLQo+ ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgIHwgNzUgKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlw ZV9jcmMuYyB8ICAyIC0KPiAgMiBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCA0MiBk ZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXgg M2IzZGVjMWU2NjQwLi44MjgzZTgwNTk3YmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jCj4gQEAgLTQ4NzAsNyArNDg3MCw3IEBAIHZvaWQgaHN3X2VuYWJsZV9pcHMoY29u c3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gIAlzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2ID0gY3J0Yy0+YmFzZS5kZXY7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gIAo+IC0JaWYgKCFjcnRjLT5jb25maWctPmlwc19l bmFibGVkKQo+ICsJaWYgKCFjcnRjX3N0YXRlLT5pcHNfZW5hYmxlZCkKPiAgCQlyZXR1cm47Cj4g IAo+ICAJLyoKPiBAQCAtNDk2NiwxNCArNDk2Niw2IEBAIGludGVsX3Bvc3RfZW5hYmxlX3ByaW1h cnkoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJc3RydWN0IGludGVsX2NydGMgKmludGVsX2Ny dGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+ICAJaW50IHBpcGUgPSBpbnRlbF9jcnRjLT5waXBl Owo+ICAKPiAtCS8qCj4gLQkgKiBGSVhNRSBJUFMgc2hvdWxkIGJlIGZpbmUgYXMgbG9uZyBhcyBv bmUgcGxhbmUgaXMKPiAtCSAqIGVuYWJsZWQsIGJ1dCBpbiBwcmFjdGljZSBpdCBzZWVtcyB0byBo YXZlIHByb2JsZW1zCj4gLQkgKiB3aGVuIGdvaW5nIGZyb20gcHJpbWFyeSBvbmx5IHRvIHNwcml0 ZSBvbmx5IGFuZCB2aWNlCj4gLQkgKiB2ZXJzYS4KPiAtCSAqLwo+IC0JaHN3X2VuYWJsZV9pcHMo bmV3X2NydGNfc3RhdGUpOwo+IC0KPiAgCS8qCj4gIAkgKiBHZW4yIHJlcG9ydHMgcGlwZSB1bmRl cnJ1bnMgd2hlbmV2ZXIgYWxsIHBsYW5lcyBhcmUgZGlzYWJsZWQuCj4gIAkgKiBTbyBkb24ndCBl bmFibGUgdW5kZXJydW4gcmVwb3J0aW5nIGJlZm9yZSBhdCBsZWFzdCBzb21lIHBsYW5lcwo+IEBA IC00OTg5LDEwICs0OTgxLDkgQEAgaW50ZWxfcG9zdF9lbmFibGVfcHJpbWFyeShzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4gIAlpbnRlbF9jaGVja19wY2hfZmlmb191bmRlcnJ1bnMoZGV2X3ByaXYp Owo+ICB9Cj4gIAo+IC0vKiBGSVhNRSBtb3ZlIGFsbCB0aGlzIHRvIHByZV9wbGFuZV91cGRhdGUo KSB3aXRoIHByb3BlciBzdGF0ZSB0cmFja2luZyAqLwo+ICsvKiBGSVhNRSBnZXQgcmlkIG9mIHRo aXMgYW5kIHVzZSBwcmVfcGxhbmVfdXBkYXRlICovCj4gIHN0YXRpYyB2b2lkCj4gLWludGVsX3By ZV9kaXNhYmxlX3ByaW1hcnkoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+IC0JCQkgIGNvbnN0IHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSkKPiAraW50ZWxfcHJlX2Rpc2Fi bGVfcHJpbWFyeV9ub2F0b21pYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIHsKPiAgCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gQEAgLTUwMDEsMzIgKzQ5OTIsMTIgQEAgaW50 ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAo+ICAJLyoK PiAgCSAqIEdlbjIgcmVwb3J0cyBwaXBlIHVuZGVycnVucyB3aGVuZXZlciBhbGwgcGxhbmVzIGFy ZSBkaXNhYmxlZC4KPiAtCSAqIFNvIGRpYXNibGUgdW5kZXJydW4gcmVwb3J0aW5nIGJlZm9yZSBh bGwgdGhlIHBsYW5lcyBnZXQgZGlzYWJsZWQuCj4gLQkgKiBGSVhNRTogTmVlZCB0byBmaXggdGhl IGxvZ2ljIHRvIHdvcmsgd2hlbiB3ZSB0dXJuIG9mZiBhbGwgcGxhbmVzCj4gLQkgKiBidXQgbGVh dmUgdGhlIHBpcGUgcnVubmluZy4KPiArCSAqIFNvIGRpc2FibGUgdW5kZXJydW4gcmVwb3J0aW5n IGJlZm9yZSBhbGwgdGhlIHBsYW5lcyBnZXQgZGlzYWJsZWQuCj4gIAkgKi8KPiAgCWlmIChJU19H RU4yKGRldl9wcml2KSkKPiAgCQlpbnRlbF9zZXRfY3B1X2ZpZm9fdW5kZXJydW5fcmVwb3J0aW5n KGRldl9wcml2LCBwaXBlLCBmYWxzZSk7Cj4gIAo+IC0JLyoKPiAtCSAqIEZJWE1FIElQUyBzaG91 bGQgYmUgZmluZSBhcyBsb25nIGFzIG9uZSBwbGFuZSBpcwo+IC0JICogZW5hYmxlZCwgYnV0IGlu IHByYWN0aWNlIGl0IHNlZW1zIHRvIGhhdmUgcHJvYmxlbXMKPiAtCSAqIHdoZW4gZ29pbmcgZnJv bSBwcmltYXJ5IG9ubHkgdG8gc3ByaXRlIG9ubHkgYW5kIHZpY2UKPiAtCSAqIHZlcnNhLgo+IC0J ICovCj4gLQloc3dfZGlzYWJsZV9pcHMob2xkX2NydGNfc3RhdGUpOwo+IC19Cj4gLQo+IC0vKiBG SVhNRSBnZXQgcmlkIG9mIHRoaXMgYW5kIHVzZSBwcmVfcGxhbmVfdXBkYXRlICovCj4gLXN0YXRp YyB2b2lkCj4gLWludGVsX3ByZV9kaXNhYmxlX3ByaW1hcnlfbm9hdG9taWMoc3RydWN0IGRybV9j cnRjICpjcnRjKQo+IC17Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2Owo+ IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+IC0J c3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+IC0J aW50IHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwo+IC0KPiAtCWludGVsX3ByZV9kaXNhYmxlX3By aW1hcnkoY3J0YywgdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSkpOwo+ICsJaHN3X2Rp c2FibGVfaXBzKHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+c3RhdGUpKTsKCkJUVyB0aGlua2lu ZyBhYm91dCB0aGUgbGFjayBvZiByZWFkb3V0IG9uIEJEVy4gSW4gY2FzZSB0aGUgQklPUyBldmVy CmVuYWJsZXMgSVBTLCBJIHRoaW5rIHdlIHNob3VsZCBzYW5pdGl6ZSBpcHNfZW5hYmxlZCB0byB0 cnVlIG9uIEJEVy4KT3IgbWF5YmUganVzdCBoYXZlIHRoZSByZWRhb3V0IGNvZGUgYWx3YXlzIHNl dCBpcHNfZW5hYmxlZD10cnVlIG9uIEJEVz8KVGhhdCB3YXkgdGhlIGZpcnN0IG1vZGVzZXQgd2ls bCB0cnkgdG8gdHVybiBpdCBvZmYgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIGl0CndhcyBlbmFibGVk IG9yIG5vdC4KCj4gIAo+ICAJLyoKPiAgCSAqIFZibGFuayB0aW1lIHVwZGF0ZXMgZnJvbSB0aGUg c2hhZG93IHRvIGxpdmUgcGxhbmUgY29udHJvbCByZWdpc3Rlcgo+IEBAIC01MDU4LDYgKzUwMjks MTEgQEAgc3RhdGljIHZvaWQgaW50ZWxfcG9zdF9wbGFuZV91cGRhdGUoc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlKQo+ICAJaWYgKHBpcGVfY29uZmlnLT51cGRhdGVfd21f cG9zdCAmJiBwaXBlX2NvbmZpZy0+YmFzZS5hY3RpdmUpCj4gIAkJaW50ZWxfdXBkYXRlX3dhdGVy bWFya3MoY3J0Yyk7Cj4gIAo+ICsJaWYgKCFvbGRfY3J0Y19zdGF0ZS0+aXBzX2VuYWJsZWQgfHwK PiArCSAgICBuZWVkc19tb2Rlc2V0KCZvbGRfY3J0Y19zdGF0ZS0+YmFzZSkgfHwKClNob3VkbGRu J3QgdGhhdCBiZSBuZWVkc19tb2Rlc2V0KG5ld19jcnRjX3N0YXRlKT8KCj4gKwkgICAgcGlwZV9j b25maWctPnVwZGF0ZV9waXBlKQoKV2h5IGRvIHdlIGhhdmUgdG8gY2hlY2sgdGhhdD8KCj4gKwkJ aHN3X2VuYWJsZV9pcHMocGlwZV9jb25maWcpOwo+ICsKPiAgCWlmIChvbGRfcHJpX3N0YXRlKSB7 Cj4gIAkJc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpwcmltYXJ5X3N0YXRlID0KPiAgCQkJaW50 ZWxfYXRvbWljX2dldF9uZXdfcGxhbmVfc3RhdGUodG9faW50ZWxfYXRvbWljX3N0YXRlKG9sZF9z dGF0ZSksCj4gQEAgLTUwODgsNiArNTA2NCw5IEBAIHN0YXRpYyB2b2lkIGludGVsX3ByZV9wbGFu ZV91cGRhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAo+ICAJc3Ry dWN0IGludGVsX2F0b21pY19zdGF0ZSAqb2xkX2ludGVsX3N0YXRlID0KPiAgCQl0b19pbnRlbF9h dG9taWNfc3RhdGUob2xkX3N0YXRlKTsKPiAgCj4gKwlpZiAobmVlZHNfbW9kZXNldCgmcGlwZV9j b25maWctPmJhc2UpIHx8ICFwaXBlX2NvbmZpZy0+aXBzX2VuYWJsZWQpCj4gKwkJaHN3X2Rpc2Fi bGVfaXBzKG9sZF9jcnRjX3N0YXRlKTsKPiArCj4gIAlpZiAob2xkX3ByaV9zdGF0ZSkgewo+ICAJ CXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcHJpbWFyeV9zdGF0ZSA9Cj4gIAkJCWludGVsX2F0 b21pY19nZXRfbmV3X3BsYW5lX3N0YXRlKG9sZF9pbnRlbF9zdGF0ZSwKPiBAQCAtNTA5NiwxMCAr NTA3NSwxMyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wcmVfcGxhbmVfdXBkYXRlKHN0cnVjdCBpbnRl bF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSwKPiAgCQkJdG9faW50ZWxfcGxhbmVfc3RhdGUo b2xkX3ByaV9zdGF0ZSk7Cj4gIAo+ICAJCWludGVsX2ZiY19wcmVfdXBkYXRlKGNydGMsIHBpcGVf Y29uZmlnLCBwcmltYXJ5X3N0YXRlKTsKPiAtCj4gLQkJaWYgKG9sZF9wcmltYXJ5X3N0YXRlLT5i YXNlLnZpc2libGUgJiYKPiArCQkvKgo+ICsJCSAqIEdlbjIgcmVwb3J0cyBwaXBlIHVuZGVycnVu cyB3aGVuZXZlciBhbGwgcGxhbmVzIGFyZSBkaXNhYmxlZC4KPiArCQkgKiBTbyBkaXNhYmxlIHVu ZGVycnVuIHJlcG9ydGluZyBiZWZvcmUgYWxsIHRoZSBwbGFuZXMgZ2V0IGRpc2FibGVkLgo+ICsJ CSAqLwo+ICsJCWlmIChJU19HRU4yKGRldl9wcml2KSAmJiBvbGRfcHJpbWFyeV9zdGF0ZS0+YmFz ZS52aXNpYmxlICYmCj4gIAkJICAgIChtb2Rlc2V0IHx8ICFwcmltYXJ5X3N0YXRlLT5iYXNlLnZp c2libGUpKQo+IC0JCQlpbnRlbF9wcmVfZGlzYWJsZV9wcmltYXJ5KCZjcnRjLT5iYXNlLCBvbGRf Y3J0Y19zdGF0ZSk7Cj4gKwkJCWludGVsX3NldF9jcHVfZmlmb191bmRlcnJ1bl9yZXBvcnRpbmco ZGV2X3ByaXYsIGNydGMtPnBpcGUsIGZhbHNlKTsKPiAgCX0KPiAgCj4gIAkvKgo+IEBAIC02MjMx LDEyICs2MjEzLDI1IEBAIHN0YXRpYyBpbnQgaXJvbmxha2VfZmRpX2NvbXB1dGVfY29uZmlnKHN0 cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAo+ICBzdGF0aWMgYm9vbCBwaXBlX2NvbmZpZ19z dXBwb3J0c19pcHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCQkJICAg ICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4gIHsKPiArCXU4IHZpc2li bGVfcGxhbmVzOwo+ICsKPiAgCWlmIChwaXBlX2NvbmZpZy0+aXBzX2ZvcmNlX2Rpc2FibGUpCj4g IAkJcmV0dXJuIGZhbHNlOwo+ICAKPiAgCWlmIChwaXBlX2NvbmZpZy0+cGlwZV9icHAgPiAyNCkK PiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICsJdmlzaWJsZV9wbGFuZXMgPSBwaXBlX2NvbmZpZy0+ YWN0aXZlX3BsYW5lcyAmIH5CSVQoUExBTkVfQ1VSU09SKTsKPiArCj4gKwkvKgo+ICsJICogRklY TUUgSVBTIHNob3VsZCBiZSBmaW5lIGFzIGxvbmcgYXMgb25lIHBsYW5lIGlzCj4gKwkgKiBlbmFi bGVkLCBidXQgaW4gcHJhY3RpY2UgaXQgc2VlbXMgdG8gaGF2ZSBwcm9ibGVtcwo+ICsJICogd2hl biBnb2luZyBmcm9tIHByaW1hcnkgb25seSB0byBzcHJpdGUgb25seSBhbmQgdmljZQo+ICsJICog dmVyc2EuCj4gKwkgKi8KPiArCWlmICh2aXNpYmxlX3BsYW5lcyAhPSBCSVQoUExBTkVfUFJJTUFS WSkpCj4gKwkJcmV0dXJuIGZhbHNlOwoKSSB0aGluayB0aGF0IHNob3VsZCBiZSAnKGFjdGl2ZV9w bGFuZXMgJiBQUklNQVJZKSA9PSAwJy4gQXMgaW4gd2UgZG9uJ3QKY2FyZSB3aGF0IHRoZSBvdGhl ciBwbGFuZXMgYXJlIGRvaW5nLCBJUFMganVzdCB0cmFja3MgdGhlIHByaW1hcnkgc3RhdGUKKGZv ciB0aGUgdGltZSBiZWluZykuCgpXaGF0J3MgbWlzc2luZyBmcm9tIHRoaXMgcGF0Y2ggaXMgY2hh bmdpbmcgdGhlIGNkY2xrIHZzLiBpcHMgd29ya2Fyb3VuZAp0byBub3QgYXNzdW1lIHRoYXQgY2Rj bGsgY2FuIGJlIGluY3JlYXNlZCB0byBhY2NvbW9kYXRlIGlwcy4KCj4gKwo+ICAJLyogSFNXIGNh biBoYW5kbGUgcGl4ZWwgcmF0ZSB1cCB0byBjZGNsaz8gKi8KPiAgCWlmIChJU19IQVNXRUxMKGRl dl9wcml2KSkKPiAgCQlyZXR1cm4gdHJ1ZTsKPiBAQCAtNjM3OCw5ICs2MzczLDYgQEAgc3RhdGlj IGludCBpbnRlbF9jcnRjX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ ICAKPiAgCWludGVsX2NydGNfY29tcHV0ZV9waXhlbF9yYXRlKHBpcGVfY29uZmlnKTsKPiAgCj4g LQlpZiAoSEFTX0lQUyhkZXZfcHJpdikpCj4gLQkJaHN3X2NvbXB1dGVfaXBzX2NvbmZpZyhjcnRj LCBwaXBlX2NvbmZpZyk7Cj4gLQo+ICAJaWYgKHBpcGVfY29uZmlnLT5oYXNfcGNoX2VuY29kZXIp Cj4gIAkJcmV0dXJuIGlyb25sYWtlX2ZkaV9jb21wdXRlX2NvbmZpZyhjcnRjLCBwaXBlX2NvbmZp Zyk7Cj4gIAo+IEBAIC0xMDQ4OCw2ICsxMDQ4MCw5IEBAIHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19h dG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCQkJCQkJIHBpcGVfY29uZmln KTsKPiAgCX0KPiAgCj4gKwlpZiAoSEFTX0lQUyhkZXZfcHJpdikpCj4gKwkJaHN3X2NvbXB1dGVf aXBzX2NvbmZpZyhpbnRlbF9jcnRjLCBwaXBlX2NvbmZpZyk7Cj4gKwo+ICAJcmV0dXJuIHJldDsK PiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9j cmMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMKPiBpbmRleCA2MTY0 MWQ0NzliOTMuLjFmNWNkNTcyYTdmZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9waXBlX2NyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlw ZV9jcmMuYwo+IEBAIC01NDEsOCArNTQxLDYgQEAgc3RhdGljIHZvaWQgaHN3X3BpcGVfQV9jcmNf d2Eoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCSAqIGNvbXBsZXRlbHkg ZGlzYWJsZSBpdC4KPiAgCQkgKi8KPiAgCQlwaXBlX2NvbmZpZy0+aXBzX2ZvcmNlX2Rpc2FibGUg PSBlbmFibGU7Cj4gLQkJaWYgKHBpcGVfY29uZmlnLT5pcHNfZW5hYmxlZCA9PSBlbmFibGUpCj4g LQkJCXBpcGVfY29uZmlnLT5iYXNlLmNvbm5lY3RvcnNfY2hhbmdlZCA9IHRydWU7Cj4gIAl9Cj4g IAo+ICAJaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpKSB7Cj4gLS0gCj4gMi4xNS4wCj4gCj4gX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZngg bWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKVmls bGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK