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: Mon, 20 Nov 2017 12:58:04 +0200 Message-ID: <20171120105804.GQ10981@intel.com> References: <20171117153756.33558-1-maarten.lankhorst@linux.intel.com> <20171117153756.33558-2-maarten.lankhorst@linux.intel.com> <20171117155257.GM10981@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 00D8F6E16B for ; Mon, 20 Nov 2017 10:58:07 +0000 (UTC) Content-Disposition: inline In-Reply-To: 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 T24gTW9uLCBOb3YgMjAsIDIwMTcgYXQgMTE6NDg6MjJBTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gT3AgMTctMTEtMTcgb20gMTY6NTIgc2NocmVlZiBWaWxsZSBTeXJqw6Rsw6Q6 Cj4gPiBPbiBGcmksIE5vdiAxNywgMjAxNyBhdCAwNDozNzo1NFBNICswMTAwLCBNYWFydGVuIExh bmtob3JzdCB3cm90ZToKPiA+PiBpcHNfZW5hYmxlZCB3YXMgdXNlZCBhcyBhIHZhcmlhYmxlIG9m IHdoZXRoZXIgSVBTIGNhbiBiZSBlbmFibGVkIG9yIG5vdCwKPiA+PiBidXQgc2hvdWxkIGJlIHVz ZWQgdG8gdGVzdCB3aGV0aGVyIElQUyBpcyBhY3R1YWxseSBlbmFibGVkLgo+ID4+Cj4gPj4gU2ln bmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4Lmlu dGVsLmNvbT4KPiA+PiAtLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jICB8IDc1ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCj4gPj4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMgfCAgMiAtCj4gPj4gIDIgZmlsZXMgY2hh bmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNDIgZGVsZXRpb25zKC0pCj4gPj4KPiA+PiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gPj4gaW5kZXggM2IzZGVjMWU2NjQwLi44MjgzZTgw NTk3YmQgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jCj4gPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gPj4g QEAgLTQ4NzAsNyArNDg3MCw3IEBAIHZvaWQgaHN3X2VuYWJsZV9pcHMoY29uc3Qgc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gPj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 ID0gY3J0Yy0+YmFzZS5kZXY7Cj4gPj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSB0b19pOTE1KGRldik7Cj4gPj4gIAo+ID4+IC0JaWYgKCFjcnRjLT5jb25maWctPmlwc19l bmFibGVkKQo+ID4+ICsJaWYgKCFjcnRjX3N0YXRlLT5pcHNfZW5hYmxlZCkKPiA+PiAgCQlyZXR1 cm47Cj4gPj4gIAo+ID4+ICAJLyoKPiA+PiBAQCAtNDk2NiwxNCArNDk2Niw2IEBAIGludGVsX3Bv c3RfZW5hYmxlX3ByaW1hcnkoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4+ICAJc3RydWN0IGlu dGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+ID4+ICAJaW50IHBp cGUgPSBpbnRlbF9jcnRjLT5waXBlOwo+ID4+ICAKPiA+PiAtCS8qCj4gPj4gLQkgKiBGSVhNRSBJ UFMgc2hvdWxkIGJlIGZpbmUgYXMgbG9uZyBhcyBvbmUgcGxhbmUgaXMKPiA+PiAtCSAqIGVuYWJs ZWQsIGJ1dCBpbiBwcmFjdGljZSBpdCBzZWVtcyB0byBoYXZlIHByb2JsZW1zCj4gPj4gLQkgKiB3 aGVuIGdvaW5nIGZyb20gcHJpbWFyeSBvbmx5IHRvIHNwcml0ZSBvbmx5IGFuZCB2aWNlCj4gPj4g LQkgKiB2ZXJzYS4KPiA+PiAtCSAqLwo+ID4+IC0JaHN3X2VuYWJsZV9pcHMobmV3X2NydGNfc3Rh dGUpOwo+ID4+IC0KPiA+PiAgCS8qCj4gPj4gIAkgKiBHZW4yIHJlcG9ydHMgcGlwZSB1bmRlcnJ1 bnMgd2hlbmV2ZXIgYWxsIHBsYW5lcyBhcmUgZGlzYWJsZWQuCj4gPj4gIAkgKiBTbyBkb24ndCBl bmFibGUgdW5kZXJydW4gcmVwb3J0aW5nIGJlZm9yZSBhdCBsZWFzdCBzb21lIHBsYW5lcwo+ID4+ IEBAIC00OTg5LDEwICs0OTgxLDkgQEAgaW50ZWxfcG9zdF9lbmFibGVfcHJpbWFyeShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCj4gPj4gIAlpbnRlbF9jaGVja19wY2hfZmlmb191bmRlcnJ1bnMoZGV2 X3ByaXYpOwo+ID4+ICB9Cj4gPj4gIAo+ID4+IC0vKiBGSVhNRSBtb3ZlIGFsbCB0aGlzIHRvIHBy ZV9wbGFuZV91cGRhdGUoKSB3aXRoIHByb3BlciBzdGF0ZSB0cmFja2luZyAqLwo+ID4+ICsvKiBG SVhNRSBnZXQgcmlkIG9mIHRoaXMgYW5kIHVzZSBwcmVfcGxhbmVfdXBkYXRlICovCj4gPj4gIHN0 YXRpYyB2b2lkCj4gPj4gLWludGVsX3ByZV9kaXNhYmxlX3ByaW1hcnkoc3RydWN0IGRybV9jcnRj ICpjcnRjLAo+ID4+IC0JCQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0 Y19zdGF0ZSkKPiA+PiAraW50ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeV9ub2F0b21pYyhzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMpCj4gPj4gIHsKPiA+PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBj cnRjLT5kZXY7Cj4gPj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19p OTE1KGRldik7Cj4gPj4gQEAgLTUwMDEsMzIgKzQ5OTIsMTIgQEAgaW50ZWxfcHJlX2Rpc2FibGVf cHJpbWFyeShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gPj4gIAo+ID4+ICAJLyoKPiA+PiAgCSAq IEdlbjIgcmVwb3J0cyBwaXBlIHVuZGVycnVucyB3aGVuZXZlciBhbGwgcGxhbmVzIGFyZSBkaXNh YmxlZC4KPiA+PiAtCSAqIFNvIGRpYXNibGUgdW5kZXJydW4gcmVwb3J0aW5nIGJlZm9yZSBhbGwg dGhlIHBsYW5lcyBnZXQgZGlzYWJsZWQuCj4gPj4gLQkgKiBGSVhNRTogTmVlZCB0byBmaXggdGhl IGxvZ2ljIHRvIHdvcmsgd2hlbiB3ZSB0dXJuIG9mZiBhbGwgcGxhbmVzCj4gPj4gLQkgKiBidXQg bGVhdmUgdGhlIHBpcGUgcnVubmluZy4KPiA+PiArCSAqIFNvIGRpc2FibGUgdW5kZXJydW4gcmVw b3J0aW5nIGJlZm9yZSBhbGwgdGhlIHBsYW5lcyBnZXQgZGlzYWJsZWQuCj4gPj4gIAkgKi8KPiA+ PiAgCWlmIChJU19HRU4yKGRldl9wcml2KSkKPiA+PiAgCQlpbnRlbF9zZXRfY3B1X2ZpZm9fdW5k ZXJydW5fcmVwb3J0aW5nKGRldl9wcml2LCBwaXBlLCBmYWxzZSk7Cj4gPj4gIAo+ID4+IC0JLyoK PiA+PiAtCSAqIEZJWE1FIElQUyBzaG91bGQgYmUgZmluZSBhcyBsb25nIGFzIG9uZSBwbGFuZSBp cwo+ID4+IC0JICogZW5hYmxlZCwgYnV0IGluIHByYWN0aWNlIGl0IHNlZW1zIHRvIGhhdmUgcHJv YmxlbXMKPiA+PiAtCSAqIHdoZW4gZ29pbmcgZnJvbSBwcmltYXJ5IG9ubHkgdG8gc3ByaXRlIG9u bHkgYW5kIHZpY2UKPiA+PiAtCSAqIHZlcnNhLgo+ID4+IC0JICovCj4gPj4gLQloc3dfZGlzYWJs ZV9pcHMob2xkX2NydGNfc3RhdGUpOwo+ID4+IC19Cj4gPj4gLQo+ID4+IC0vKiBGSVhNRSBnZXQg cmlkIG9mIHRoaXMgYW5kIHVzZSBwcmVfcGxhbmVfdXBkYXRlICovCj4gPj4gLXN0YXRpYyB2b2lk Cj4gPj4gLWludGVsX3ByZV9kaXNhYmxlX3ByaW1hcnlfbm9hdG9taWMoc3RydWN0IGRybV9jcnRj ICpjcnRjKQo+ID4+IC17Cj4gPj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2 Owo+ID4+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYp Owo+ID4+IC0Jc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNy dGMpOwo+ID4+IC0JaW50IHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwo+ID4+IC0KPiA+PiAtCWlu dGVsX3ByZV9kaXNhYmxlX3ByaW1hcnkoY3J0YywgdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5z dGF0ZSkpOwo+ID4+ICsJaHN3X2Rpc2FibGVfaXBzKHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+ c3RhdGUpKTsKPiA+IEJUVyB0aGlua2luZyBhYm91dCB0aGUgbGFjayBvZiByZWFkb3V0IG9uIEJE Vy4gSW4gY2FzZSB0aGUgQklPUyBldmVyCj4gPiBlbmFibGVzIElQUywgSSB0aGluayB3ZSBzaG91 bGQgc2FuaXRpemUgaXBzX2VuYWJsZWQgdG8gdHJ1ZSBvbiBCRFcuCj4gPiBPciBtYXliZSBqdXN0 IGhhdmUgdGhlIHJlZGFvdXQgY29kZSBhbHdheXMgc2V0IGlwc19lbmFibGVkPXRydWUgb24gQkRX Pwo+ID4gVGhhdCB3YXkgdGhlIGZpcnN0IG1vZGVzZXQgd2lsbCB0cnkgdG8gdHVybiBpdCBvZmYg cmVnYXJkbGVzcyBvZiB3aGV0aGVyIGl0Cj4gPiB3YXMgZW5hYmxlZCBvciBub3QuCj4gWWVzLCBn b29kIGlkZWEuIDopCj4gPj4gIAo+ID4+ICAJLyoKPiA+PiAgCSAqIFZibGFuayB0aW1lIHVwZGF0 ZXMgZnJvbSB0aGUgc2hhZG93IHRvIGxpdmUgcGxhbmUgY29udHJvbCByZWdpc3Rlcgo+ID4+IEBA IC01MDU4LDYgKzUwMjksMTEgQEAgc3RhdGljIHZvaWQgaW50ZWxfcG9zdF9wbGFuZV91cGRhdGUo c3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlKQo+ID4+ICAJaWYgKHBpcGVf Y29uZmlnLT51cGRhdGVfd21fcG9zdCAmJiBwaXBlX2NvbmZpZy0+YmFzZS5hY3RpdmUpCj4gPj4g IAkJaW50ZWxfdXBkYXRlX3dhdGVybWFya3MoY3J0Yyk7Cj4gPj4gIAo+ID4+ICsJaWYgKCFvbGRf Y3J0Y19zdGF0ZS0+aXBzX2VuYWJsZWQgfHwKPiA+PiArCSAgICBuZWVkc19tb2Rlc2V0KCZvbGRf Y3J0Y19zdGF0ZS0+YmFzZSkgfHwKPiA+IFNob3VkbGRuJ3QgdGhhdCBiZSBuZWVkc19tb2Rlc2V0 KG5ld19jcnRjX3N0YXRlKT8KPiBZZXMsIG9vcHMuLgo+ID4+ICsJICAgIHBpcGVfY29uZmlnLT51 cGRhdGVfcGlwZSkKPiA+IFdoeSBkbyB3ZSBoYXZlIHRvIGNoZWNrIHRoYXQ/Cj4gSW4gY2FzZSB3 ZSB0YWtlIG92ZXIgdGhlIGh3IHN0YXRlIGZyb20gYmlvcy4uCj4gCj4gSWYgd2UgZGVmYXVsdCBp cHNfZW5hYmxlZCB0byB0cnVlIG9uIEJEVyBhbmQgcmVhZCBvdXQgb24gSFNXIGFnYWluLCB0aGVu IHRoaXMKPiBjaGVjayB3aWxsIG1ha2UgSVBTIHdvcmssIHJlZ2FyZGxlc3Mgb2YgYmlvcyBzZXR0 aW5nLi4KCldoeSBhcmVuJ3Qgd2UganVzdCBjaGVja2luZyBzb21ldGhpbmcgbGlrZQppZiAoKCFv bGRfc3RhdGUtPmlwc19lbmFibGVkIHx8IG5lZWRzX21vZGVzZXQoKSkgJiYgbmV3X3N0YXRlLT5p cHNfZW5hYmxlZCkgPwoKSVBTIHN0YXRlIG1heSBoYXZlIHRvIGNoYW5nZSB3aGVuZXZlciBwbGFu ZSB2aXNpYmlsaXR5IGNoYW5nZXMsIHNvIEkgZG9uJ3QKc2VlIGFueSByZXNvbiB0byBpbnZvbHZl IC0+dXBkYXRlX3BpcGUgaW4gdGhlc2UgZGVjaXNpb24uCgoKPiAKPiA+PiArCQloc3dfZW5hYmxl X2lwcyhwaXBlX2NvbmZpZyk7Cj4gPj4gKwo+ID4+ICAJaWYgKG9sZF9wcmlfc3RhdGUpIHsKPiA+ PiAgCQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnByaW1hcnlfc3RhdGUgPQo+ID4+ICAJCQlp bnRlbF9hdG9taWNfZ2V0X25ld19wbGFuZV9zdGF0ZSh0b19pbnRlbF9hdG9taWNfc3RhdGUob2xk X3N0YXRlKSwKPiA+PiBAQCAtNTA4OCw2ICs1MDY0LDkgQEAgc3RhdGljIHZvaWQgaW50ZWxfcHJl X3BsYW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUsCj4g Pj4gIAlzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpvbGRfaW50ZWxfc3RhdGUgPQo+ID4+ICAJ CXRvX2ludGVsX2F0b21pY19zdGF0ZShvbGRfc3RhdGUpOwo+ID4+ICAKPiA+PiArCWlmIChuZWVk c19tb2Rlc2V0KCZwaXBlX2NvbmZpZy0+YmFzZSkgfHwgIXBpcGVfY29uZmlnLT5pcHNfZW5hYmxl ZCkKPiA+PiArCQloc3dfZGlzYWJsZV9pcHMob2xkX2NydGNfc3RhdGUpOwo+ID4+ICsKPiA+PiAg CWlmIChvbGRfcHJpX3N0YXRlKSB7Cj4gPj4gIAkJc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpw cmltYXJ5X3N0YXRlID0KPiA+PiAgCQkJaW50ZWxfYXRvbWljX2dldF9uZXdfcGxhbmVfc3RhdGUo b2xkX2ludGVsX3N0YXRlLAo+ID4+IEBAIC01MDk2LDEwICs1MDc1LDEzIEBAIHN0YXRpYyB2b2lk IGludGVsX3ByZV9wbGFuZV91cGRhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRj X3N0YXRlLAo+ID4+ICAJCQl0b19pbnRlbF9wbGFuZV9zdGF0ZShvbGRfcHJpX3N0YXRlKTsKPiA+ PiAgCj4gPj4gIAkJaW50ZWxfZmJjX3ByZV91cGRhdGUoY3J0YywgcGlwZV9jb25maWcsIHByaW1h cnlfc3RhdGUpOwo+ID4+IC0KPiA+PiAtCQlpZiAob2xkX3ByaW1hcnlfc3RhdGUtPmJhc2Uudmlz aWJsZSAmJgo+ID4+ICsJCS8qCj4gPj4gKwkJICogR2VuMiByZXBvcnRzIHBpcGUgdW5kZXJydW5z IHdoZW5ldmVyIGFsbCBwbGFuZXMgYXJlIGRpc2FibGVkLgo+ID4+ICsJCSAqIFNvIGRpc2FibGUg dW5kZXJydW4gcmVwb3J0aW5nIGJlZm9yZSBhbGwgdGhlIHBsYW5lcyBnZXQgZGlzYWJsZWQuCj4g Pj4gKwkJICovCj4gPj4gKwkJaWYgKElTX0dFTjIoZGV2X3ByaXYpICYmIG9sZF9wcmltYXJ5X3N0 YXRlLT5iYXNlLnZpc2libGUgJiYKPiA+PiAgCQkgICAgKG1vZGVzZXQgfHwgIXByaW1hcnlfc3Rh dGUtPmJhc2UudmlzaWJsZSkpCj4gPj4gLQkJCWludGVsX3ByZV9kaXNhYmxlX3ByaW1hcnkoJmNy dGMtPmJhc2UsIG9sZF9jcnRjX3N0YXRlKTsKPiA+PiArCQkJaW50ZWxfc2V0X2NwdV9maWZvX3Vu ZGVycnVuX3JlcG9ydGluZyhkZXZfcHJpdiwgY3J0Yy0+cGlwZSwgZmFsc2UpOwo+ID4+ICAJfQo+ ID4+ICAKPiA+PiAgCS8qCj4gPj4gQEAgLTYyMzEsMTIgKzYyMTMsMjUgQEAgc3RhdGljIGludCBp cm9ubGFrZV9mZGlfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMs Cj4gPj4gIHN0YXRpYyBib29sIHBpcGVfY29uZmlnX3N1cHBvcnRzX2lwcyhzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPj4gIAkJCQkgICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpwaXBlX2NvbmZpZykKPiA+PiAgewo+ID4+ICsJdTggdmlzaWJsZV9wbGFuZXM7Cj4gPj4g Kwo+ID4+ICAJaWYgKHBpcGVfY29uZmlnLT5pcHNfZm9yY2VfZGlzYWJsZSkKPiA+PiAgCQlyZXR1 cm4gZmFsc2U7Cj4gPj4gIAo+ID4+ICAJaWYgKHBpcGVfY29uZmlnLT5waXBlX2JwcCA+IDI0KQo+ ID4+ICAJCXJldHVybiBmYWxzZTsKPiA+PiAgCj4gPj4gKwl2aXNpYmxlX3BsYW5lcyA9IHBpcGVf Y29uZmlnLT5hY3RpdmVfcGxhbmVzICYgfkJJVChQTEFORV9DVVJTT1IpOwo+ID4+ICsKPiA+PiAr CS8qCj4gPj4gKwkgKiBGSVhNRSBJUFMgc2hvdWxkIGJlIGZpbmUgYXMgbG9uZyBhcyBvbmUgcGxh bmUgaXMKPiA+PiArCSAqIGVuYWJsZWQsIGJ1dCBpbiBwcmFjdGljZSBpdCBzZWVtcyB0byBoYXZl IHByb2JsZW1zCj4gPj4gKwkgKiB3aGVuIGdvaW5nIGZyb20gcHJpbWFyeSBvbmx5IHRvIHNwcml0 ZSBvbmx5IGFuZCB2aWNlCj4gPj4gKwkgKiB2ZXJzYS4KPiA+PiArCSAqLwo+ID4+ICsJaWYgKHZp c2libGVfcGxhbmVzICE9IEJJVChQTEFORV9QUklNQVJZKSkKPiA+PiArCQlyZXR1cm4gZmFsc2U7 Cj4gPiBJIHRoaW5rIHRoYXQgc2hvdWxkIGJlICcoYWN0aXZlX3BsYW5lcyAmIFBSSU1BUlkpID09 IDAnLiBBcyBpbiB3ZSBkb24ndAo+ID4gY2FyZSB3aGF0IHRoZSBvdGhlciBwbGFuZXMgYXJlIGRv aW5nLCBJUFMganVzdCB0cmFja3MgdGhlIHByaW1hcnkgc3RhdGUKPiA+IChmb3IgdGhlIHRpbWUg YmVpbmcpLgo+IE9vcHMsIGZhdWx0aWx5IGFzc3VtZWQgZnJvbSB0aGUgY29tbWVudCB0aGF0IElQ UyBvbmx5IHdvcmtlZCB3aXRoIHRoZSBwcmltYXJ5IHBsYW5lCj4gb3Igc3ByaXRlIHBsYW5lLCBu b3QgYm90aC4gSSdsbCBjb3JyZWN0IGl0Lgo+ID4gV2hhdCdzIG1pc3NpbmcgZnJvbSB0aGlzIHBh dGNoIGlzIGNoYW5naW5nIHRoZSBjZGNsayB2cy4gaXBzIHdvcmthcm91bmQKPiA+IHRvIG5vdCBh c3N1bWUgdGhhdCBjZGNsayBjYW4gYmUgaW5jcmVhc2VkIHRvIGFjY29tb2RhdGUgaXBzLgo+IEht IHRydWUsIEkgbWlzc2VkIHRoYXQuLgo+IAo+IFdpbGwgc2VuZCBhIG5ldyB2ZXJzaW9uIGluIGEg Yml0Lgo+ID4+ICsKPiA+PiAgCS8qIEhTVyBjYW4gaGFuZGxlIHBpeGVsIHJhdGUgdXAgdG8gY2Rj bGs/ICovCj4gPj4gIAlpZiAoSVNfSEFTV0VMTChkZXZfcHJpdikpCj4gPj4gIAkJcmV0dXJuIHRy dWU7Cj4gPj4gQEAgLTYzNzgsOSArNjM3Myw2IEBAIHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19jb21w dXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiA+PiAgCj4gPj4gIAlpbnRlbF9j cnRjX2NvbXB1dGVfcGl4ZWxfcmF0ZShwaXBlX2NvbmZpZyk7Cj4gPj4gIAo+ID4+IC0JaWYgKEhB U19JUFMoZGV2X3ByaXYpKQo+ID4+IC0JCWhzd19jb21wdXRlX2lwc19jb25maWcoY3J0YywgcGlw ZV9jb25maWcpOwo+ID4+IC0KPiA+PiAgCWlmIChwaXBlX2NvbmZpZy0+aGFzX3BjaF9lbmNvZGVy KQo+ID4+ICAJCXJldHVybiBpcm9ubGFrZV9mZGlfY29tcHV0ZV9jb25maWcoY3J0YywgcGlwZV9j b25maWcpOwo+ID4+ICAKPiA+PiBAQCAtMTA0ODgsNiArMTA0ODAsOSBAQCBzdGF0aWMgaW50IGlu dGVsX2NydGNfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+PiAgCQkJCQkJ CSBwaXBlX2NvbmZpZyk7Cj4gPj4gIAl9Cj4gPj4gIAo+ID4+ICsJaWYgKEhBU19JUFMoZGV2X3By aXYpKQo+ID4+ICsJCWhzd19jb21wdXRlX2lwc19jb25maWcoaW50ZWxfY3J0YywgcGlwZV9jb25m aWcpOwo+ID4+ICsKPiA+PiAgCXJldHVybiByZXQ7Cj4gPj4gIH0KPiA+PiAgCj4gPj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9waXBlX2NyYy5jCj4gPj4gaW5kZXggNjE2NDFkNDc5YjkzLi4xZjVj ZDU3MmE3ZmYgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlw ZV9jcmMuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMK PiA+PiBAQCAtNTQxLDggKzU0MSw2IEBAIHN0YXRpYyB2b2lkIGhzd19waXBlX0FfY3JjX3dhKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiA+PiAgCQkgKiBjb21wbGV0ZWx5IGRp c2FibGUgaXQuCj4gPj4gIAkJICovCj4gPj4gIAkJcGlwZV9jb25maWctPmlwc19mb3JjZV9kaXNh YmxlID0gZW5hYmxlOwo+ID4+IC0JCWlmIChwaXBlX2NvbmZpZy0+aXBzX2VuYWJsZWQgPT0gZW5h YmxlKQo+ID4+IC0JCQlwaXBlX2NvbmZpZy0+YmFzZS5jb25uZWN0b3JzX2NoYW5nZWQgPSB0cnVl Owo+ID4+ICAJfQo+ID4+ICAKPiA+PiAgCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSkgewo+ID4+ IC0tIAo+ID4+IDIuMTUuMAo+ID4+Cj4gPj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KPiA+PiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gPj4gSW50ZWwt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cj4gCgotLSAKVmlsbGUgU3lyasOkbMOkCklu dGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK