From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Weinehall Subject: Re: [PATCH 03/19] drm/i915: Make HAS_GMCH_DISPLAY only take dev_priv Date: Wed, 12 Oct 2016 11:17:35 +0300 Message-ID: <20161012081735.puncak5zjdeesesn@boom> References: <1476192112-25336-1-git-send-email-tvrtko.ursulin@linux.intel.com> <1476192112-25336-4-git-send-email-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id CF8716E7DF for ; Wed, 12 Oct 2016 08:17:17 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1476192112-25336-4-git-send-email-tvrtko.ursulin@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: Tvrtko Ursulin Cc: Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBPY3QgMTEsIDIwMTYgYXQgMDI6MjE6MzZQTSArMDEwMCwgVHZydGtvIFVyc3VsaW4g d3JvdGU6Cj4gRnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4K PiAKPiBNb3JlIC5yb2RhdGEgc3RyaW5nIHNhdmluZyBieSBhdm9pZCBfX0k5MTVfXyBtYWdpYyBp bnNpZGUgV0FSTnMuCj4gCj4gdjI6IEFkZCBwYXJhbnRoZXNlcyBhcm91bmQgZGV2X3ByaXYuIChW aWxsZSBTeXJqYWxhKQo+IAo+IFNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28u dXJzdWxpbkBpbnRlbC5jb20+CgpSZXZpZXdlZC1ieTogRGF2aWQgV2VpbmVoYWxsIDxkYXZpZC53 ZWluZWhhbGxAbGludXguaW50ZWwuY29tPgoKTm90ZSB0aGF0IG9uY2UgdGhpcyBwYXRjaCBzZXJp ZXMgZ29lcyBpbiAob3IgYmVmb3JlKSwKd2Ugc2hvdWxkIGhhdmUgYSBwYXRjaCB0aGF0IHR1cm5z IGludGVsX2hkbWlfdG9fZGV2KCkgaW50bwppbnRlbF9oZG1pX3RvX2Rldl9wcml2KCkuICBJZiB5 b3UgbG9vayBhdCB0aGUgY29kZSBpbgppbnRlbF9oZG1pLmMsIGFsbW9zdCBldmVyeSAoYWZ0ZXIg dGhlIGRldiAtPiBkZXZfcHJpdiB0cmFuc2l0aW9uCkkgdGhpbmsgaXQncyBldmVyeSkgaW5zdGFu Y2Ugd2hlcmUgaXQncyB1c2VkIGNvbnZlcnRzCmRldiBpbW1lZGlhdGVseSBmdXJ0aGVyIHRvIGRl dl9wcml2LgoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAg ICAgIHwgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jICAgICAgICAg fCA2ICsrKy0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgICAgICAg fCA4ICsrKystLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgICAgICAgICAg ICB8IDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMgICAgICAgICAgIHwg MiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9maWZvX3VuZGVycnVuLmMgfCAyICst Cj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyAgICAgICAgICB8IDUgKysrLS0K PiAgNyBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKPiAK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRleCAzY2FhMWM3Njc1MTIuLjFhNDY5OGU2NjVi ZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC0yODYzLDcgKzI4NjMsNyBAQCBz dHJ1Y3QgZHJtX2k5MTVfY21kX3RhYmxlIHsKPiAgI2RlZmluZSBIQVNfUENIX05PUChkZXZfcHJp dikgKElOVEVMX1BDSF9UWVBFKGRldl9wcml2KSA9PSBQQ0hfTk9QKQo+ICAjZGVmaW5lIEhBU19Q Q0hfU1BMSVQoZGV2X3ByaXYpIChJTlRFTF9QQ0hfVFlQRShkZXZfcHJpdikgIT0gUENIX05PTkUp Cj4gIAo+IC0jZGVmaW5lIEhBU19HTUNIX0RJU1BMQVkoZGV2KSAoSU5URUxfSU5GTyhkZXYpLT5o YXNfZ21jaF9kaXNwbGF5KQo+ICsjZGVmaW5lIEhBU19HTUNIX0RJU1BMQVkoZGV2X3ByaXYpICgo ZGV2X3ByaXYpLT5pbmZvLmhhc19nbWNoX2Rpc3BsYXkpCj4gIAo+ICAvKiBEUEYgPT0gZHluYW1p YyBwYXJpdHkgZmVhdHVyZSAqLwo+ICAjZGVmaW5lIEhBU19MM19EUEYoZGV2KSAoSU5URUxfSU5G TyhkZXYpLT5oYXNfbDNfZHBmKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9jb2xvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwo+IGluZGV4 IDk1YTcyNzcxZWVhNi4uNTM2MmMwNzkzMmQzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2NvbG9yLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9j b2xvci5jCj4gQEAgLTI3Myw3ICsyNzMsNyBAQCBzdGF0aWMgdm9pZCBpOXh4X2xvYWRfbHV0c19p bnRlcm5hbChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAllbnVtIHBpcGUgcGlwZSA9IGludGVs X2NydGMtPnBpcGU7Cj4gIAlpbnQgaTsKPiAgCj4gLQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXYp KSB7Cj4gKwlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpIHsKPiAgCQlpZiAoaW50ZWxf Y3J0Y19oYXNfdHlwZShjcnRjX3N0YXRlLCBJTlRFTF9PVVRQVVRfRFNJKSkKPiAgCQkJYXNzZXJ0 X2RzaV9wbGxfZW5hYmxlZChkZXZfcHJpdik7Cj4gIAkJZWxzZQo+IEBAIC0yODgsNyArMjg4LDcg QEAgc3RhdGljIHZvaWQgaTl4eF9sb2FkX2x1dHNfaW50ZXJuYWwoc3RydWN0IGRybV9jcnRjICpj cnRjLAo+ICAJCQkJKGRybV9jb2xvcl9sdXRfZXh0cmFjdChsdXRbaV0uZ3JlZW4sIDgpIDw8IDgp IHwKPiAgCQkJCWRybV9jb2xvcl9sdXRfZXh0cmFjdChsdXRbaV0uYmx1ZSwgOCk7Cj4gIAo+IC0J CQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXYpKQo+ICsJCQlpZiAoSEFTX0dNQ0hfRElTUExBWShk ZXZfcHJpdikpCj4gIAkJCQlJOTE1X1dSSVRFKFBBTEVUVEUocGlwZSwgaSksIHdvcmQpOwo+ICAJ CQllbHNlCj4gIAkJCQlJOTE1X1dSSVRFKExHQ19QQUxFVFRFKHBpcGUsIGkpLCB3b3JkKTsKPiBA QCAtMjk3LDcgKzI5Nyw3IEBAIHN0YXRpYyB2b2lkIGk5eHhfbG9hZF9sdXRzX2ludGVybmFsKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgCQlmb3IgKGkgPSAwOyBpIDwgMjU2OyBpKyspIHsKPiAg CQkJdWludDMyX3Qgd29yZCA9IChpIDw8IDE2KSB8IChpIDw8IDgpIHwgaTsKPiAgCj4gLQkJCWlm IChIQVNfR01DSF9ESVNQTEFZKGRldikpCj4gKwkJCWlmIChIQVNfR01DSF9ESVNQTEFZKGRldl9w cml2KSkKPiAgCQkJCUk5MTVfV1JJVEUoUEFMRVRURShwaXBlLCBpKSwgd29yZCk7Cj4gIAkJCWVs c2UKPiAgCQkJCUk5MTVfV1JJVEUoTEdDX1BBTEVUVEUocGlwZSwgaSksIHdvcmQpOwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAwYTY5ZTgwODIxZWUuLmI3Njg1OTM2 ZDMyNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtNTAzNiw3 ICs1MDM2LDcgQEAgaW50ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeV9ub2F0b21pYyhzdHJ1Y3QgZHJt X2NydGMgKmNydGMpCj4gIAkgKiBldmVudCB3aGljaCBpcyBhZnRlciB0aGUgdmJsYW5rIHN0YXJ0 IGV2ZW50LCBzbyB3ZSBuZWVkIHRvIGhhdmUgYQo+ICAJICogd2FpdC1mb3ItdmJsYW5rIGJldHdl ZW4gZGlzYWJsaW5nIHRoZSBwbGFuZSBhbmQgdGhlIHBpcGUuCj4gIAkgKi8KPiAtCWlmIChIQVNf R01DSF9ESVNQTEFZKGRldikpIHsKPiArCWlmIChIQVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSkg ewo+ICAJCWludGVsX3NldF9tZW1vcnlfY3hzcihkZXZfcHJpdiwgZmFsc2UpOwo+ICAJCWRldl9w cml2LT53bS52bHYuY3hzciA9IGZhbHNlOwo+ICAJCWludGVsX3dhaXRfZm9yX3ZibGFuayhkZXYs IHBpcGUpOwo+IEBAIC01MTAxLDcgKzUxMDEsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wcmVfcGxh bmVfdXBkYXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSkKPiAgCQkJ aW50ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeSgmY3J0Yy0+YmFzZSk7Cj4gIAl9Cj4gIAo+IC0JaWYg KHBpcGVfY29uZmlnLT5kaXNhYmxlX2N4c3IgJiYgSEFTX0dNQ0hfRElTUExBWShkZXYpKSB7Cj4g KwlpZiAocGlwZV9jb25maWctPmRpc2FibGVfY3hzciAmJiBIQVNfR01DSF9ESVNQTEFZKGRldl9w cml2KSkgewo+ICAJCWNydGMtPndtLmN4c3JfYWxsb3dlZCA9IGZhbHNlOwo+ICAKPiAgCQkvKgo+ IEBAIC0xMDg5NSw3ICsxMDg5NSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2NydGNfdXBkYXRlX2N1 cnNvcihzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJcG9zIHw9IHkgPDwgQ1VSU09SX1lfU0hJ RlQ7Cj4gIAo+ICAJCS8qIElMSysgZG8gdGhpcyBhdXRvbWFnaWNhbGx5ICovCj4gLQkJaWYgKEhB U19HTUNIX0RJU1BMQVkoZGV2KSAmJgo+ICsJCWlmIChIQVNfR01DSF9ESVNQTEFZKGRldl9wcml2 KSAmJgo+ICAJCSAgICBwbGFuZV9zdGF0ZS0+YmFzZS5yb3RhdGlvbiA9PSBEUk1fUk9UQVRFXzE4 MCkgewo+ICAJCQliYXNlICs9IChwbGFuZV9zdGF0ZS0+YmFzZS5jcnRjX2ggKgo+ICAJCQkJIHBs YW5lX3N0YXRlLT5iYXNlLmNydGNfdyAtIDEpICogNDsKPiBAQCAtMTY1OTMsNyArMTY1OTMsNyBA QCBzdGF0aWMgdm9pZCBpbnRlbF9zYW5pdGl6ZV9jcnRjKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRj KQo+ICAJaWYgKGNydGMtPmFjdGl2ZSAmJiAhaW50ZWxfY3J0Y19oYXNfZW5jb2RlcnMoY3J0Yykp Cj4gIAkJaW50ZWxfY3J0Y19kaXNhYmxlX25vYXRvbWljKCZjcnRjLT5iYXNlKTsKPiAgCj4gLQlp ZiAoY3J0Yy0+YWN0aXZlIHx8IEhBU19HTUNIX0RJU1BMQVkoZGV2KSkgewo+ICsJaWYgKGNydGMt PmFjdGl2ZSB8fCBIQVNfR01DSF9ESVNQTEFZKGRldl9wcml2KSkgewo+ICAJCS8qCj4gIAkJICog V2Ugc3RhcnQgb3V0IHdpdGggdW5kZXJydW4gcmVwb3J0aW5nIGRpc2FibGVkIHRvIGF2b2lkIHJh Y2VzLgo+ICAJCSAqIEZvciBjb3JyZWN0IGJvb2trZWVwaW5nIG1hcmsgdGhpcyBvbiBhY3RpdmUg Y3J0Y3MuCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gaW5kZXggMGI2ZjFiYWI2NzFkLi41MWQ5 MmE5YzZjYjEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiBAQCAtMTU4Myw3ICsxNTgz LDcgQEAgaW50ZWxfZHBfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4gIAkJCQlyZXR1cm4gcmV0Owo+ICAJCX0KPiAgCj4gLQkJaWYgKEhBU19HTUNIX0RJU1BM QVkoZGV2KSkKPiArCQlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpCj4gIAkJCWludGVs X2dtY2hfcGFuZWxfZml0dGluZyhpbnRlbF9jcnRjLCBwaXBlX2NvbmZpZywKPiAgCQkJCQkJIGlu dGVsX2Nvbm5lY3Rvci0+cGFuZWwuZml0dGluZ19tb2RlKTsKPiAgCQllbHNlCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHNpLmMKPiBpbmRleCA3MjdhZGFhY2U5NmMuLjViMWU0NDVhODBkMCAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RzaS5jCj4gQEAgLTEzNDYsNyArMTM0Niw3IEBAIHN0YXRpYyBp bnQgaW50ZWxfZHNpX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LAo+ICAJCQlEUk1fREVCVUdfS01TKCJubyBzY2FsaW5nIG5vdCBzdXBwb3J0ZWRcbiIpOwo+ICAJ CQlyZXR1cm4gLUVJTlZBTDsKPiAgCQl9Cj4gLQkJaWYgKEhBU19HTUNIX0RJU1BMQVkoZGV2KSAm Jgo+ICsJCWlmIChIQVNfR01DSF9ESVNQTEFZKHRvX2k5MTUoZGV2KSkgJiYKPiAgCQkgICAgdmFs ID09IERSTV9NT0RFX1NDQUxFX0NFTlRFUikgewo+ICAJCQlEUk1fREVCVUdfS01TKCJjZW50ZXJp bmcgbm90IHN1cHBvcnRlZFxuIik7Cj4gIAkJCXJldHVybiAtRUlOVkFMOwo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9maWZvX3VuZGVycnVuLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9maWZvX3VuZGVycnVuLmMKPiBpbmRleCBlYmI0ZmVkODMyMmUuLjA3 Njg5M2NjMzg5MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9maWZv X3VuZGVycnVuLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9maWZvX3VuZGVy cnVuLmMKPiBAQCAtMjU0LDcgKzI1NCw3IEBAIHN0YXRpYyBib29sIF9faW50ZWxfc2V0X2NwdV9m aWZvX3VuZGVycnVuX3JlcG9ydGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJb2xkID0g IWludGVsX2NydGMtPmNwdV9maWZvX3VuZGVycnVuX2Rpc2FibGVkOwo+ICAJaW50ZWxfY3J0Yy0+ Y3B1X2ZpZm9fdW5kZXJydW5fZGlzYWJsZWQgPSAhZW5hYmxlOwo+ICAKPiAtCWlmIChIQVNfR01D SF9ESVNQTEFZKGRldikpCj4gKwlpZiAoSEFTX0dNQ0hfRElTUExBWShkZXZfcHJpdikpCj4gIAkJ aTl4eF9zZXRfZmlmb191bmRlcnJ1bl9yZXBvcnRpbmcoZGV2LCBwaXBlLCBlbmFibGUsIG9sZCk7 Cj4gIAllbHNlIGlmIChJU19HRU41KGRldikgfHwgSVNfR0VONihkZXYpKQo+ICAJCWlyb25sYWtl X3NldF9maWZvX3VuZGVycnVuX3JlcG9ydGluZyhkZXYsIHBpcGUsIGVuYWJsZSk7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2hkbWkuYwo+IGluZGV4IDM5N2UxMGY0YjZmMC4uYWQzZmY0ZmU2M2NmIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+IEBAIC0xMjY1LDYgKzEyNjUsNyBAQCBp bnRlbF9oZG1pX21vZGVfdmFsaWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAg ewo+ICAJc3RydWN0IGludGVsX2hkbWkgKmhkbWkgPSBpbnRlbF9hdHRhY2hlZF9oZG1pKGNvbm5l Y3Rvcik7Cj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfaGRtaV90b19kZXYoaGRt aSk7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7 Cj4gIAllbnVtIGRybV9tb2RlX3N0YXR1cyBzdGF0dXM7Cj4gIAlpbnQgY2xvY2s7Cj4gIAlpbnQg bWF4X2RvdGNsayA9IHRvX2k5MTUoY29ubmVjdG9yLT5kZXYpLT5tYXhfZG90Y2xrX2ZyZXE7Cj4g QEAgLTEyODcsNyArMTI4OCw3IEBAIGludGVsX2hkbWlfbW9kZV92YWxpZChzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLAo+ICAJc3RhdHVzID0gaGRtaV9wb3J0X2Nsb2NrX3ZhbGlkKGhk bWksIGNsb2NrLCB0cnVlKTsKPiAgCj4gIAkvKiBpZiB3ZSBjYW4ndCBkbyA4YnBjIHdlIG1heSBz dGlsbCBiZSBhYmxlIHRvIGRvIDEyYnBjICovCj4gLQlpZiAoIUhBU19HTUNIX0RJU1BMQVkoZGV2 KSAmJiBzdGF0dXMgIT0gTU9ERV9PSykKPiArCWlmICghSEFTX0dNQ0hfRElTUExBWShkZXZfcHJp dikgJiYgc3RhdHVzICE9IE1PREVfT0spCj4gIAkJc3RhdHVzID0gaGRtaV9wb3J0X2Nsb2NrX3Zh bGlkKGhkbWksIGNsb2NrICogMyAvIDIsIHRydWUpOwo+ICAKPiAgCXJldHVybiBzdGF0dXM7Cj4g QEAgLTEyOTcsNyArMTI5OCw3IEBAIHN0YXRpYyBib29sIGhkbWlfMTJicGNfcG9zc2libGUoc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gIHsKPiAgCXN0cnVjdCBkcm1fZGV2 aWNlICpkZXYgPSBjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRldjsKPiAgCj4gLQlpZiAoSEFTX0dN Q0hfRElTUExBWShkZXYpKQo+ICsJaWYgKEhBU19HTUNIX0RJU1BMQVkodG9faTkxNShkZXYpKSkK PiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICAJLyoKPiAtLSAKPiAyLjcuNAo+IAo+IF9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeApfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK