From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH v2 2/2] drm/i915: Try to print INSTDONE bits for all slice/subslice Date: Thu, 15 Sep 2016 17:30:10 +0300 Message-ID: <871t0l6xsd.fsf@gaia.fi.intel.com> References: <1473087178-4847-1-git-send-email-imre.deak@intel.com> <1473087178-4847-3-git-send-email-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id C2AB06E89C for ; Thu, 15 Sep 2016 14:31:17 +0000 (UTC) In-Reply-To: <1473087178-4847-3-git-send-email-imre.deak@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Imre Deak , intel-gfx@lists.freedesktop.org Cc: Ben Widawsky List-Id: intel-gfx@lists.freedesktop.org SW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPiB3cml0ZXM6Cgo+IEZyb206IEJlbiBXaWRh d3NreSA8YmVuamFtaW4ud2lkYXdza3lAaW50ZWwuY29tPgo+Cj4gdjI6IChJbXJlKQo+IC0gQWNj ZXNzIG9ubHkgc3Vic2xpY2VzIHRoYXQgYXJlIGtub3duIHRvIGV4aXN0Lgo+IC0gUmVzZXQgZXhw bGljdGx5IHRoZSBNQ1Igc2VsZWN0b3IgdG8gc2xpY2Uvc3ViLXNsaWNlIElEIDAgYWZ0ZXIgdGhl Cj4gICByZWFkb3V0Lgo+IC0gVXNlIHRoZSBzdWJzbGljZSBJTlNURE9ORSBiaXRzIGZvciB0aGUg aGFuZ2NoZWNrL3N1YnVuaXRzLXN0dWNrCj4gICBkZXRlY3Rpb24gdG9vLgo+IC0gVGFrZSB0aGUg dW5jb3JlIGxvY2sgZm9yIHRoZSBNQ1Itc2VsZWN0L3N1YnNsaWNlLXJlYWRvdXQgc2VxdWVuY2Uu Cj4KPiBTaWduZWQtb2ZmLWJ5OiBCZW4gV2lkYXdza3kgPGJlbkBid2lkYXdzay5uZXQ+Cj4gU2ln bmVkLW9mZi1ieTogSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyAgICAgfCAxNCArKysrLS0KPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3IuYyAgIHwgNzYgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgICAgICAg ICB8IDI1ICsrKysrKysrLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAg ICAgICB8ICA1ICsrKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgg fCAyMyArKysrKysrKystCj4gIDUgZmlsZXMgY2hhbmdlZCwgMTI1IGluc2VydGlvbnMoKyksIDE4 IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBpbmRleCA0 NTI0NGY5Li4wZjg0MTY1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZGVidWdmcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBA QCAtMTI4MSw2ICsxMjgxLDkgQEAgc3RhdGljIHZvaWQgaTkxNV9pbnN0ZG9uZV9pbmZvKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkJICAgICAgIHN0cnVjdCBzZXFfZmls ZSAqbSwKPiAgCQkJICAgICAgIHN0cnVjdCBpbnRlbF9pbnN0ZG9uZSAqaW5zdGRvbmUpCj4gIHsK PiArCWludCBzbGljZTsKPiArCWludCBzdWJzbGljZTsKPiArCj4gIAlzZXFfcHJpbnRmKG0sICJc dFx0SU5TVERPTkU6IDB4JTA4eFxuIiwKPiAgCQkgICBpbnN0ZG9uZS0+aW5zdGRvbmUpOwo+ICAK PiBAQCAtMTI5MywxMCArMTI5NiwxMyBAQCBzdGF0aWMgdm9pZCBpOTE1X2luc3Rkb25lX2luZm8o c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJaWYgKElOVEVMX0dFTihkZXZf cHJpdikgPD0gNikKPiAgCQlyZXR1cm47Cj4gIAo+IC0Jc2VxX3ByaW50ZihtLCAiXHRcdFNBTVBM RVJfSU5TVERPTkU6IDB4JTA4eFxuIiwKPiAtCQkgICBpbnN0ZG9uZS0+c2FtcGxlcik7Cj4gLQlz ZXFfcHJpbnRmKG0sICJcdFx0Uk9XX0lOU1RET05FOiAweCUwOHhcbiIsCj4gLQkJICAgaW5zdGRv bmUtPnJvdyk7Cj4gKwlmb3JfZWFjaF9pbnN0ZG9uZV9zbGljZV9zdWJzbGljZShkZXZfcHJpdiwg c2xpY2UsIHN1YnNsaWNlKQo+ICsJCXNlcV9wcmludGYobSwgIlx0XHRTQU1QTEVSX0lOU1RET05F WyVkXVslZF06IDB4JTA4eFxuIiwKPiArCQkJICAgc2xpY2UsIHN1YnNsaWNlLCBpbnN0ZG9uZS0+ c2FtcGxlcltzbGljZV1bc3Vic2xpY2VdKTsKPiArCj4gKwlmb3JfZWFjaF9pbnN0ZG9uZV9zbGlj ZV9zdWJzbGljZShkZXZfcHJpdiwgc2xpY2UsIHN1YnNsaWNlKQo+ICsJCXNlcV9wcmludGYobSwg Ilx0XHRST1dfSU5TVERPTkVbJWRdWyVkXTogMHglMDh4XG4iLAo+ICsJCQkgICBzbGljZSwgc3Vi c2xpY2UsIGluc3Rkb25lLT5yb3dbc2xpY2VdW3N1YnNsaWNlXSk7Cj4gIH0KPiAgCj4gIHN0YXRp YyBpbnQgaTkxNV9oYW5nY2hlY2tfaW5mbyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnVudXNl ZCkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3IuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMKPiBpbmRleCA4MGZlMTAxLi4w NmQ0MzA5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9y LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJvci5jCj4gQEAgLTIz MSw2ICsyMzEsOSBAQCBzdGF0aWMgY29uc3QgY2hhciAqaGFuZ2NoZWNrX2FjdGlvbl90b19zdHIo ZW51bSBpbnRlbF9lbmdpbmVfaGFuZ2NoZWNrX2FjdGlvbiBhKQo+ICBzdGF0aWMgdm9pZCBlcnJv cl9wcmludF9pbnN0ZG9uZShzdHJ1Y3QgZHJtX2k5MTVfZXJyb3Jfc3RhdGVfYnVmICptLAo+ICAJ CQkJIHN0cnVjdCBkcm1faTkxNV9lcnJvcl9lbmdpbmUgKmVlKQo+ICB7Cj4gKwlpbnQgc2xpY2U7 Cj4gKwlpbnQgc3Vic2xpY2U7Cj4gKwo+ICAJZXJyX3ByaW50ZihtLCAiICBJTlNURE9ORTogMHgl MDh4XG4iLAo+ICAJCSAgIGVlLT5pbnN0ZG9uZS5pbnN0ZG9uZSk7Cj4gIAo+IEBAIC0yNDMsMTAg KzI0NiwxNSBAQCBzdGF0aWMgdm9pZCBlcnJvcl9wcmludF9pbnN0ZG9uZShzdHJ1Y3QgZHJtX2k5 MTVfZXJyb3Jfc3RhdGVfYnVmICptLAo+ICAJaWYgKElOVEVMX0dFTihtLT5pOTE1KSA8PSA2KQo+ ICAJCXJldHVybjsKPiAgCj4gLQllcnJfcHJpbnRmKG0sICIgIFNBTVBMRVJfSU5TVERPTkU6IDB4 JTA4eFxuIiwKPiAtCQkgICBlZS0+aW5zdGRvbmUuc2FtcGxlcik7Cj4gLQllcnJfcHJpbnRmKG0s ICIgIFJPV19JTlNURE9ORTogMHglMDh4XG4iLAo+IC0JCSAgIGVlLT5pbnN0ZG9uZS5yb3cpOwo+ ICsJZm9yX2VhY2hfaW5zdGRvbmVfc2xpY2Vfc3Vic2xpY2UobS0+aTkxNSwgc2xpY2UsIHN1YnNs aWNlKQo+ICsJCWVycl9wcmludGYobSwgIiAgU0FNUExFUl9JTlNURE9ORVslZF1bJWRdOiAweCUw OHhcbiIsCj4gKwkJCSAgIHNsaWNlLCBzdWJzbGljZSwKPiArCQkJICAgZWUtPmluc3Rkb25lLnNh bXBsZXJbc2xpY2VdW3N1YnNsaWNlXSk7Cj4gKwo+ICsJZm9yX2VhY2hfaW5zdGRvbmVfc2xpY2Vf c3Vic2xpY2UobS0+aTkxNSwgc2xpY2UsIHN1YnNsaWNlKQo+ICsJCWVycl9wcmludGYobSwgIiAg Uk9XX0lOU1RET05FWyVkXVslZF06IDB4JTA4eFxuIiwKPiArCQkJICAgc2xpY2UsIHN1YnNsaWNl LAo+ICsJCQkgICBlZS0+aW5zdGRvbmUucm93W3NsaWNlXVtzdWJzbGljZV0pOwo+ICB9Cj4gIAo+ ICBzdGF0aWMgdm9pZCBlcnJvcl9wcmludF9lbmdpbmUoc3RydWN0IGRybV9pOTE1X2Vycm9yX3N0 YXRlX2J1ZiAqbSwKPiBAQCAtMTUzNCwxMiArMTU0Miw1MiBAQCBjb25zdCBjaGFyICppOTE1X2Nh Y2hlX2xldmVsX3N0cihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgaW50IHR5cGUpCj4g IAl9Cj4gIH0KPiAgCj4gK3N0YXRpYyBpbmxpbmUgdWludDMyX3QKPiArcmVhZF9zdWJzbGljZV9y ZWcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBpbnQgc2xpY2UsCj4gKwkJICBp bnQgc3Vic2xpY2UsIGk5MTVfcmVnX3QgcmVnKQo+ICt7Cj4gKwl1aW50MzJfdCBtY3I7Cj4gKwl1 aW50MzJfdCByZXQ7Cj4gKwllbnVtIGZvcmNld2FrZV9kb21haW5zIGZ3X2RvbWFpbnM7Cj4gKwo+ ICsJZndfZG9tYWlucyA9IGludGVsX3VuY29yZV9mb3JjZXdha2VfZm9yX3JlZyhkZXZfcHJpdiwg cmVnLAo+ICsJCQkJCQkgICAgRldfUkVHX1JFQUQpOwo+ICsJZndfZG9tYWlucyB8PSBpbnRlbF91 bmNvcmVfZm9yY2V3YWtlX2Zvcl9yZWcoZGV2X3ByaXYsCj4gKwkJCQkJCSAgICAgR0VOOF9NQ1Jf U0VMRUNUT1IsCj4gKwkJCQkJCSAgICAgRldfUkVHX1JFQUQgfCBGV19SRUdfV1JJVEUpOwo+ICsK PiArCXNwaW5fbG9ja19pcnEoJmRldl9wcml2LT51bmNvcmUubG9jayk7Cj4gKwlpbnRlbF91bmNv cmVfZm9yY2V3YWtlX2dldF9fbG9ja2VkKGRldl9wcml2LCBmd19kb21haW5zKTsKPiArCj4gKwlt Y3IgPSBJOTE1X1JFQURfRlcoR0VOOF9NQ1JfU0VMRUNUT1IpOwo+ICsJLyoKPiArCSAqIFRoZSBI VyBleHBlY3RzIHRoZSBzbGljZSBhbmQgc3VibGljZSBzZWxlY3RvcnMgdG8gYmUgcmVzZXQgdG8g MAo+ICsJICogYWZ0ZXIgcmVhZGluZyBvdXQgdGhlIHJlZ2lzdGVycy4KPiArCSAqLwo+ICsJV0FS Tl9PTl9PTkNFKG1jciAmIChHRU44X01DUl9TTElDRV9NQVNLIHwgR0VOOF9NQ1JfU1VCU0xJQ0Vf TUFTSykpOwo+ICsJbWNyICY9IH4oR0VOOF9NQ1JfU0xJQ0VfTUFTSyB8IEdFTjhfTUNSX1NVQlNM SUNFX01BU0spOwo+ICsJbWNyIHw9IEdFTjhfTUNSX1NMSUNFKHNsaWNlKSB8IEdFTjhfTUNSX1NV QlNMSUNFKHN1YnNsaWNlKTsKPiArCUk5MTVfV1JJVEVfRlcoR0VOOF9NQ1JfU0VMRUNUT1IsIG1j cik7Cj4gKwo+ICsJcmV0ID0gSTkxNV9SRUFEX0ZXKHJlZyk7Cj4gKwo+ICsJbWNyICY9IH4oR0VO OF9NQ1JfU0xJQ0VfTUFTSyB8IEdFTjhfTUNSX1NVQlNMSUNFX01BU0spOwo+ICsJSTkxNV9XUklU RV9GVyhHRU44X01DUl9TRUxFQ1RPUiwgbWNyKTsKPiArCj4gKwlpbnRlbF91bmNvcmVfZm9yY2V3 YWtlX3B1dF9fbG9ja2VkKGRldl9wcml2LCBmd19kb21haW5zKTsKPiArCXNwaW5fdW5sb2NrX2ly cSgmZGV2X3ByaXYtPnVuY29yZS5sb2NrKTsKPiArCj4gKwlyZXR1cm4gcmV0Owo+ICt9Cj4gKwo+ ICAvKiBOQjogcGxlYXNlIG5vdGljZSB0aGUgbWVtc2V0ICovCj4gIHZvaWQgaTkxNV9nZXRfZW5n aW5lX2luc3Rkb25lKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkJICAg ICAgZW51bSBpbnRlbF9lbmdpbmVfaWQgZW5naW5lX2lkLAo+ICAJCQkgICAgICBzdHJ1Y3QgaW50 ZWxfaW5zdGRvbmUgKmluc3Rkb25lKQo+ICB7Cj4gIAl1MzIgbW1pb19iYXNlID0gZGV2X3ByaXYt PmVuZ2luZVtlbmdpbmVfaWRdLm1taW9fYmFzZTsKPiArCWludCBzbGljZTsKPiArCWludCBzdWJz bGljZTsKPiAgCj4gIAltZW1zZXQoaW5zdGRvbmUsIDAsIHNpemVvZigqaW5zdGRvbmUpKTsKPiAg Cj4gQEAgLTE1NTEsOCArMTU5OSwyNCBAQCB2b2lkIGk5MTVfZ2V0X2VuZ2luZV9pbnN0ZG9uZShz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAkJCWJyZWFrOwo+ICAKPiAgCQlp bnN0ZG9uZS0+c2xpY2VfY29tbW9uID0gSTkxNV9SRUFEKEdFTjdfU0NfSU5TVERPTkUpOwo+IC0J CWluc3Rkb25lLT5zYW1wbGVyID0gSTkxNV9SRUFEKEdFTjdfU0FNUExFUl9JTlNURE9ORSk7Cj4g LQkJaW5zdGRvbmUtPnJvdyA9IEk5MTVfUkVBRChHRU43X1JPV19JTlNURE9ORSk7Cj4gKwkJZm9y X2VhY2hfaW5zdGRvbmVfc2xpY2Vfc3Vic2xpY2UoZGV2X3ByaXYsIHNsaWNlLCBzdWJzbGljZSkg ewo+ICsJCQlpbnN0ZG9uZS0+c2FtcGxlcltzbGljZV1bc3Vic2xpY2VdID0KPiArCQkJCXJlYWRf c3Vic2xpY2VfcmVnKGRldl9wcml2LCBzbGljZSwgc3Vic2xpY2UsCj4gKwkJCQkJCSAgR0VON19T QU1QTEVSX0lOU1RET05FKTsKPiArCQkJaW5zdGRvbmUtPnJvd1tzbGljZV1bc3Vic2xpY2VdID0K PiArCQkJCXJlYWRfc3Vic2xpY2VfcmVnKGRldl9wcml2LCBzbGljZSwgc3Vic2xpY2UsCj4gKwkJ CQkJCSAgR0VON19ST1dfSU5TVERPTkUpOwo+ICsJCX0KPiArCQlicmVhazsKPiArCWNhc2UgNzoK PiArCQlpbnN0ZG9uZS0+aW5zdGRvbmUgPSBJOTE1X1JFQUQoUklOR19JTlNURE9ORShtbWlvX2Jh c2UpKTsKPiArCj4gKwkJaWYgKGVuZ2luZV9pZCAhPSBSQ1MpCj4gKwkJCWJyZWFrOwo+ICsKPiAr CQlpbnN0ZG9uZS0+c2xpY2VfY29tbW9uID0gSTkxNV9SRUFEKEdFTjdfU0NfSU5TVERPTkUpOwo+ ICsJCWluc3Rkb25lLT5zYW1wbGVyWzBdWzBdID0gSTkxNV9SRUFEKEdFTjdfU0FNUExFUl9JTlNU RE9ORSk7Cj4gKwkJaW5zdGRvbmUtPnJvd1swXVswXSA9IEk5MTVfUkVBRChHRU43X1JPV19JTlNU RE9ORSk7Cj4gIAo+ICAJCWJyZWFrOwo+ICAJY2FzZSA2Ogo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEu Ywo+IGluZGV4IDgyY2Y4MjMuLmQ0NGY0ZDggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9pcnEuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMK PiBAQCAtMjU1NCw2ICsyNTU0LDkgQEAgc3RhdGljIGlubGluZSB2b2lkCj4gIGk5MTVfZXJyX3By aW50X2luc3Rkb25lKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkJc3Ry dWN0IGludGVsX2luc3Rkb25lICppbnN0ZG9uZSkKPiAgewo+ICsJaW50IHNsaWNlOwo+ICsJaW50 IHN1YnNsaWNlOwo+ICsKPiAgCXByX2VycigiICBJTlNURE9ORTogMHglMDh4XG4iLCBpbnN0ZG9u ZS0+aW5zdGRvbmUpOwo+ICAKPiAgCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDw9IDMpCj4gQEAg LTI1NjQsOCArMjU2NywxMyBAQCBpOTE1X2Vycl9wcmludF9pbnN0ZG9uZShzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA8PSA2KQo+ ICAJCXJldHVybjsKPiAgCj4gLQlwcl9lcnIoIiAgU0FNUExFUl9JTlNURE9ORTogMHglMDh4XG4i LCBpbnN0ZG9uZS0+c2FtcGxlcik7Cj4gLQlwcl9lcnIoIiAgUk9XX0lOU1RET05FOiAweCUwOHhc biIsIGluc3Rkb25lLT5yb3cpOwo+ICsJZm9yX2VhY2hfaW5zdGRvbmVfc2xpY2Vfc3Vic2xpY2Uo ZGV2X3ByaXYsIHNsaWNlLCBzdWJzbGljZSkKPiArCQlwcl9lcnIoIiAgU0FNUExFUl9JTlNURE9O RVslZF1bJWRdOiAweCUwOHhcbiIsCj4gKwkJICAgICAgIHNsaWNlLCBzdWJzbGljZSwgaW5zdGRv bmUtPnNhbXBsZXJbc2xpY2VdW3N1YnNsaWNlXSk7Cj4gKwo+ICsJZm9yX2VhY2hfaW5zdGRvbmVf c2xpY2Vfc3Vic2xpY2UoZGV2X3ByaXYsIHNsaWNlLCBzdWJzbGljZSkKPiArCQlwcl9lcnIoIiAg Uk9XX0lOU1RET05FWyVkXVslZF06IDB4JTA4eFxuIiwKPiArCQkgICAgICAgc2xpY2UsIHN1YnNs aWNlLCBpbnN0ZG9uZS0+cm93W3NsaWNlXVtzdWJzbGljZV0pOwo+ICB9Cj4gIAo+ICBzdGF0aWMg dm9pZCBpOTE1X3JlcG9ydF9hbmRfY2xlYXJfZWlyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKPiBAQCAtMjk4Miw2ICsyOTkwLDggQEAgc3RhdGljIGJvb2wgc3VidW5pdHNfc3R1 Y2soc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAJc3RydWN0IGludGVsX2luc3Rk b25lIGluc3Rkb25lOwo+ICAJc3RydWN0IGludGVsX2luc3Rkb25lICphY2N1X2luc3Rkb25lID0g JmVuZ2luZS0+aGFuZ2NoZWNrLmluc3Rkb25lOwo+ICAJYm9vbCBzdHVjazsKPiArCWludCBzbGlj ZTsKPiArCWludCBzdWJzbGljZTsKPiAgCj4gIAlpZiAoZW5naW5lLT5pZCAhPSBSQ1MpCj4gIAkJ cmV0dXJuIHRydWU7Cj4gQEAgLTI5OTcsMTAgKzMwMDcsMTMgQEAgc3RhdGljIGJvb2wgc3VidW5p dHNfc3R1Y2soc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAJCQkJICAgJmFjY3Vf aW5zdGRvbmUtPmluc3Rkb25lKTsKPiAgCXN0dWNrICY9IGluc3Rkb25lX3VuY2hhbmdlZChpbnN0 ZG9uZS5zbGljZV9jb21tb24sCj4gIAkJCQkgICAgJmFjY3VfaW5zdGRvbmUtPnNsaWNlX2NvbW1v bik7Cj4gLQlzdHVjayAmPSBpbnN0ZG9uZV91bmNoYW5nZWQoaW5zdGRvbmUuc2FtcGxlciwKPiAt CQkJCSAgICAmYWNjdV9pbnN0ZG9uZS0+c2FtcGxlcik7Cj4gLQlzdHVjayAmPSBpbnN0ZG9uZV91 bmNoYW5nZWQoaW5zdGRvbmUucm93LAo+IC0JCQkJICAgICZhY2N1X2luc3Rkb25lLT5yb3cpOwo+ ICsKPiArCWZvcl9lYWNoX2luc3Rkb25lX3NsaWNlX3N1YnNsaWNlKGRldl9wcml2LCBzbGljZSwg c3Vic2xpY2UpIHsKPiArCQlzdHVjayAmPSBpbnN0ZG9uZV91bmNoYW5nZWQoaW5zdGRvbmUuc2Ft cGxlcltzbGljZV1bc3Vic2xpY2VdLAo+ICsJCQkJCSAgICAmYWNjdV9pbnN0ZG9uZS0+c2FtcGxl cltzbGljZV1bc3Vic2xpY2VdKTsKPiArCQlzdHVjayAmPSBpbnN0ZG9uZV91bmNoYW5nZWQoaW5z dGRvbmUucm93W3NsaWNlXVtzdWJzbGljZV0sCj4gKwkJCQkJICAgICZhY2N1X2luc3Rkb25lLT5y b3dbc2xpY2VdW3N1YnNsaWNlXSk7Cj4gKwl9Cj4gIAo+ICAJcmV0dXJuIHN0dWNrOwo+ICB9Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gaW5kZXggZTg0YmMyZS4uMjRlNzQxZCAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC0xNzA4LDYgKzE3MDgsMTEgQEAgZW51bSBza2xfZGlz cF9wb3dlcl93ZWxscyB7Cj4gICNkZWZpbmUgR0VON19TQ19JTlNURE9ORQlfTU1JTygweDcxMDAp Cj4gICNkZWZpbmUgR0VON19TQU1QTEVSX0lOU1RET05FCV9NTUlPKDB4ZTE2MCkKPiAgI2RlZmlu ZSBHRU43X1JPV19JTlNURE9ORQlfTU1JTygweGUxNjQpCj4gKyNkZWZpbmUgR0VOOF9NQ1JfU0VM RUNUT1IJCV9NTUlPKDB4ZmRjKQo+ICsjZGVmaW5lICAgR0VOOF9NQ1JfU0xJQ0Uoc2xpY2UpCQko KChzbGljZSkgJiAzKSA8PCAyNikKPiArI2RlZmluZSAgIEdFTjhfTUNSX1NMSUNFX01BU0sJCUdF TjhfTUNSX1NMSUNFKDMpCj4gKyNkZWZpbmUgICBHRU44X01DUl9TVUJTTElDRShzdWJzbGljZSkJ KCgoc3Vic2xpY2UpICYgMykgPDwgMjQpCgpUaGVyZSBpcyBzb21lIGNvbmZsaWN0aW5nIGluZm8g YWJvdXQgdGhlc2UgY2hhbmdpbmcgb24gZ2VuOSB0byB3aWRlbgphbmQgc2hpZnQgdGhlIG1hc2tz LiBTbyBJIGFtIGNvbmZ1c2VkLgoKQ2FuIHdlIGVhc2lseSB0ZXN0IGlmIHdlIGdldCBzYW5lIHNs aWNlL3N1YnNsaWNlIHN0YXRlcz8KCi1NaWthCgo+ICsjZGVmaW5lICAgR0VOOF9NQ1JfU1VCU0xJ Q0VfTUFTSwlHRU44X01DUl9TVUJTTElDRSgzKQo+ICAjZGVmaW5lIFJJTkdfSVBFSVIoYmFzZSkJ X01NSU8oKGJhc2UpKzB4NjQpCj4gICNkZWZpbmUgUklOR19JUEVIUihiYXNlKQlfTU1JTygoYmFz ZSkrMHg2OCkKPiAgLyoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4g aW5kZXggYWZjM2YxZS4uOTgzZDdkYSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9yaW5nYnVmZmVyLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmgKPiBAQCAtNzMsMTIgKzczLDMxIEBAIGVudW0gaW50ZWxfZW5naW5lX2hhbmdj aGVja19hY3Rpb24gewo+ICAKPiAgI2RlZmluZSBIQU5HQ0hFQ0tfU0NPUkVfUklOR19IVU5HIDMx Cj4gIAo+ICsjZGVmaW5lIEk5MTVfTUFYX1NMSUNFUwkzCj4gKyNkZWZpbmUgSTkxNV9NQVhfU1VC U0xJQ0VTIDMKPiArCj4gKyNkZWZpbmUgaW5zdGRvbmVfc2xpY2VfbWFzayhkZXZfcHJpdl9fKSBc Cj4gKwkoSU5URUxfR0VOKGRldl9wcml2X18pID09IDcgPyBcCj4gKwkgMSA6IElOVEVMX0lORk8o ZGV2X3ByaXZfXyktPnNzZXUuc2xpY2VfbWFzaykKPiArCj4gKyNkZWZpbmUgaW5zdGRvbmVfc3Vi c2xpY2VfbWFzayhkZXZfcHJpdl9fKSBcCj4gKwkoSU5URUxfR0VOKGRldl9wcml2X18pID09IDcg PyBcCj4gKwkgMSA6IElOVEVMX0lORk8oZGV2X3ByaXZfXyktPnNzZXUuc3Vic2xpY2VfbWFzaykK PiArCj4gKyNkZWZpbmUgZm9yX2VhY2hfaW5zdGRvbmVfc2xpY2Vfc3Vic2xpY2UoZGV2X3ByaXZf Xywgc2xpY2VfXywgc3Vic2xpY2VfXykgXAo+ICsJZm9yICgoc2xpY2VfXykgPSAwLCAoc3Vic2xp Y2VfXykgPSAwOyBcCj4gKwkgICAgIChzbGljZV9fKSA8IEk5MTVfTUFYX1NMSUNFUzsgXAo+ICsJ ICAgICAoc3Vic2xpY2VfXykgPSAoKHN1YnNsaWNlX18pICsgMSkgPCBJOTE1X01BWF9TVUJTTElD RVMgPyAoc3Vic2xpY2VfXykgKyAxIDogMCwgXAo+ICsJICAgICAgIChzbGljZV9fKSArPSAoKHN1 YnNsaWNlX18pID09IDApKSBcCj4gKwkJZm9yX2VhY2hfaWYoKEJJVChzbGljZV9fKSAmIGluc3Rk b25lX3NsaWNlX21hc2soZGV2X3ByaXZfXykpICYmIFwKPiArCQkJICAgIChCSVQoc3Vic2xpY2Vf XykgJiBpbnN0ZG9uZV9zdWJzbGljZV9tYXNrKGRldl9wcml2X18pKSkKPiArCj4gIHN0cnVjdCBp bnRlbF9pbnN0ZG9uZSB7Cj4gIAl1MzIgaW5zdGRvbmU7Cj4gIAkvKiBUaGUgZm9sbG93aW5nIGV4 aXN0IG9ubHkgaW4gdGhlIFJDUyBlbmdpbmUgKi8KPiAgCXUzMiBzbGljZV9jb21tb247Cj4gLQl1 MzIgc2FtcGxlcjsKPiAtCXUzMiByb3c7Cj4gKwl1MzIgc2FtcGxlcltJOTE1X01BWF9TTElDRVNd W0k5MTVfTUFYX1NVQlNMSUNFU107Cj4gKwl1MzIgcm93W0k5MTVfTUFYX1NMSUNFU11bSTkxNV9N QVhfU1VCU0xJQ0VTXTsKPiAgfTsKPiAgCj4gIHN0cnVjdCBpbnRlbF9lbmdpbmVfaGFuZ2NoZWNr IHsKPiAtLSAKPiAyLjUuMApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK