From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff McGee Subject: Re: [PATCH v4] drm/i915/bdw: Check for slice, subslice and EU count for BDW Date: Tue, 29 Sep 2015 12:58:34 -0700 Message-ID: <20150929195834.GB21462@jeffdesk> References: <1442490718-10052-1-git-send-email-lukasz.daniluk@intel.com> <1443174898-22670-1-git-send-email-lukasz.daniluk@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 ESMTP id 9DCBE6E10D for ; Tue, 29 Sep 2015 12:53:42 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1443174898-22670-1-git-send-email-lukasz.daniluk@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?utf-8?Q?=C5=81ukasz?= Daniluk Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBTZXAgMjUsIDIwMTUgYXQgMTE6NTQ6NThBTSArMDIwMCwgxYF1a2FzeiBEYW5pbHVr IHdyb3RlOgo+IEFkZGVkIGNoZWNrcyBmb3IgYXZhaWxhYmxlIHNsaWNlcywgc3Vic2xpY2VzIGFu ZCBFVXMgZm9yIEJyb2Fkd2VsbC4gVGhpcwo+IGluZm9ybWF0aW9uIGlzIGZpbGxlZCBpbiBpbnRl bF9kZXZpY2VfaW5mbyBhbmQgaXMgYXZhaWxhYmxlIHRvIHVzZXIgd2l0aAo+IEdFVF9QQVJBTS4K PiBBZGRlZCBjaGVja3MgZm9yIGVuYWJsZWQgc2xpY2VzLCBzdWJzbGljZXMgYW5kIEVVIGZvciBC cm9hZHdlbGwuIFRoaXMKPiBpbmZvcm1hdGlvbiBpcyBiYXNlZCBvbiBhdmFpbGFibGUgY291bnRz IGJ1dCB0YWtlcyBwb3dlciBnYXRlZCBzbGljZXMKPiBpbnRvIGFjY291bnQuIEl0IGNhbiBiZSBy ZWFkIGluIGRlYnVnZnMuCj4gSW50cm9kdWNlIG5ldyByZWdpc3RlciBkZWZpbmVzIHRoYXQgY29u dGFpbiBpbmZvcm1hdGlvbiBvbiBzbGljZXMgb24KPiBCcm9hZHdlbGwuCj4gCj4gdjI6Cj4gLSBJ bnRyb2R1Y2UgR1RfU0xJQ0VfSU5GTyByZWdpc3Rlcgo+IC0gQ2hhbmdlIEJyb2Fkd2VsbCBzc2V1 X2RldmljZV9zdGF0dXMgZnVuY3Rpb24gdG8gdXNlIEdUX1NMSUNFX0lORk8KPiAgIHJlZ2lzdGVy IGluc3RlYWQgb2YgUlBDUyByZWdpc3Rlcgo+IC0gVW5kbyByZW1vdmFsIG9mIGRldl9wcml2IHZh cmlhYmxlcyBpbiBDaGVycnl2aWV3IGFuZCBHZW45Cj4gICBzc2V1X2RldmljZV9zYXR1cyBmdW5j dGlvbnMKPiAKPiB2MzoKPiAtIEZpeCBzdHlsZSBpc3N1ZXMKPiAKPiB2NDoKPiAtIENvcnJlY3Rl ZCBjb21tZW50Cj4gLSBSZXZlcnRlZCByZW9yZGVyaW5nIG9mIGRlZmluZXMKPiAKPiBDYzogSmVm ZiBNY2dlZSA8amVmZi5tY2dlZUBpbnRlbC5jb20+Cj4gQ2M6IEFydW4gU2lsdXZlcnkgPGFydW4u c2lsdXZlcnlAbGludXguaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IMWBdWthc3ogRGFuaWx1 ayA8bHVrYXN6LmRhbmlsdWtAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RlYnVnZnMuYyB8IDI5ICsrKysrKysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZG1hLmMgICAgIHwgNzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oICAgICB8IDE4ICsrKysrKysr Kwo+ICAzIGZpbGVzIGNoYW5nZWQsIDEyNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCj4g Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBpbmRleCA3MmFlMzQ3Li5kMGY3ODRk IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBAQCAtNTAzNywxMyArNTAz NywzOCBAQCBzdGF0aWMgdm9pZCBnZW45X3NzZXVfZGV2aWNlX3N0YXR1cyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAo+ICAJfQo+ICB9Cj4gIAo+ICtzdGF0aWMgdm9pZCBicm9hZHdlbGxfc3NldV9k ZXZpY2Vfc3RhdHVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gKwkJCQkJIHN0cnVjdCBzc2V1 X2Rldl9zdGF0dXMgKnN0YXQpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gKwlpbnQgczsKPiArCXUzMiBzbGljZV9pbmZvID0g STkxNV9SRUFEKEdFTjhfR1RfU0xJQ0VfSU5GTyk7Cj4gKwo+ICsJc3RhdC0+c2xpY2VfdG90YWwg PSBod2VpZ2h0MzIoc2xpY2VfaW5mbyAmIEdFTjhfTFNMSUNFU1RBVF9NQVNLKTsKPiArCj4gKwlp ZiAoc3RhdC0+c2xpY2VfdG90YWwpIHsKPiArCQlzdGF0LT5zdWJzbGljZV9wZXJfc2xpY2UgPSBJ TlRFTF9JTkZPKGRldiktPnN1YnNsaWNlX3Blcl9zbGljZTsKPiArCQlzdGF0LT5zdWJzbGljZV90 b3RhbCA9IHN0YXQtPnNsaWNlX3RvdGFsICoKPiArCQkJCSAgICAgICBzdGF0LT5zdWJzbGljZV9w ZXJfc2xpY2U7Cj4gKwkJc3RhdC0+ZXVfcGVyX3N1YnNsaWNlID0gSU5URUxfSU5GTyhkZXYpLT5l dV9wZXJfc3Vic2xpY2U7Cj4gKwkJc3RhdC0+ZXVfdG90YWwgPSBzdGF0LT5ldV9wZXJfc3Vic2xp Y2UgKiBzdGF0LT5zdWJzbGljZV90b3RhbDsKPiArCj4gKwkJLyogc3VidHJhY3QgZnVzZWQgb2Zm IEVVKHMpIGZyb20gZW5hYmxlZCBzbGljZShzKSAqLwo+ICsJCWZvciAocyA9IDA7IHMgPCBzdGF0 LT5zbGljZV90b3RhbDsgcysrKSB7Cj4gKwkJCXU4IHN1YnNsaWNlXzdldSA9IElOVEVMX0lORk8o ZGV2KS0+c3Vic2xpY2VfN2V1W3NdOwo+ICsKPiArCQkJc3RhdC0+ZXVfdG90YWwgLT0gaHdlaWdo dDgoc3Vic2xpY2VfN2V1KTsKPiArCQl9Cj4gKwl9Cj4gK30KPiArCj4gIHN0YXRpYyBpbnQgaTkx NV9zc2V1X3N0YXR1cyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnVudXNlZCkKPiAgewo+ICAJ c3RydWN0IGRybV9pbmZvX25vZGUgKm5vZGUgPSAoc3RydWN0IGRybV9pbmZvX25vZGUgKikgbS0+ cHJpdmF0ZTsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBub2RlLT5taW5vci0+ZGV2Owo+ ICAJc3RydWN0IHNzZXVfZGV2X3N0YXR1cyBzdGF0Owo+ICAKPiAtCWlmICgoSU5URUxfSU5GTyhk ZXYpLT5nZW4gPCA4KSB8fCBJU19CUk9BRFdFTEwoZGV2KSkKPiArCWlmIChJTlRFTF9JTkZPKGRl diktPmdlbiA8IDgpCj4gIAkJcmV0dXJuIC1FTk9ERVY7Cj4gIAo+ICAJc2VxX3B1dHMobSwgIlNT RVUgRGV2aWNlIEluZm9cbiIpOwo+IEBAIC01MDY4LDYgKzUwOTMsOCBAQCBzdGF0aWMgaW50IGk5 MTVfc3NldV9zdGF0dXMoc3RydWN0IHNlcV9maWxlICptLCB2b2lkICp1bnVzZWQpCj4gIAltZW1z ZXQoJnN0YXQsIDAsIHNpemVvZihzdGF0KSk7Cj4gIAlpZiAoSVNfQ0hFUlJZVklFVyhkZXYpKSB7 Cj4gIAkJY2hlcnJ5dmlld19zc2V1X2RldmljZV9zdGF0dXMoZGV2LCAmc3RhdCk7Cj4gKwl9IGVs c2UgaWYgKElTX0JST0FEV0VMTChkZXYpKSB7Cj4gKwkJYnJvYWR3ZWxsX3NzZXVfZGV2aWNlX3N0 YXR1cyhkZXYsICZzdGF0KTsKPiAgCX0gZWxzZSBpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0g OSkgewo+ICAJCWdlbjlfc3NldV9kZXZpY2Vfc3RhdHVzKGRldiwgJnN0YXQpOwo+ICAJfQo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kbWEuYwo+IGluZGV4IDA2NmEwZWYuLjcyZTJiYmQgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZG1hLmMKPiBAQCAtNzEzLDYgKzcxMyw4MiBAQCBzdGF0aWMgdm9pZCBnZW45 X3NzZXVfaW5mb19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAlpbmZvLT5oYXNfZXVf cGcgPSAoaW5mby0+ZXVfcGVyX3N1YnNsaWNlID4gMik7Cj4gIH0KPiAgCj4gK3N0YXRpYyB2b2lk IGJyb2Fkd2VsbF9zc2V1X2luZm9faW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICt7Cj4g KwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ ICsJc3RydWN0IGludGVsX2RldmljZV9pbmZvICppbmZvOwo+ICsJY29uc3QgaW50IHNfbWF4ID0g Mywgc3NfbWF4ID0gMywgZXVfbWF4ID0gODsKPiArCWludCBzLCBzczsKPiArCXUzMiBmdXNlMiwg ZXVfZGlzYWJsZVtzX21heF0sIHNfZW5hYmxlLCBzc19kaXNhYmxlOwo+ICsKPiArCWZ1c2UyID0g STkxNV9SRUFEKEdFTjhfRlVTRTIpOwo+ICsJc19lbmFibGUgPSAoZnVzZTIgJiBHRU44X0YyX1Nf RU5BX01BU0spID4+IEdFTjhfRjJfU19FTkFfU0hJRlQ7Cj4gKwlzc19kaXNhYmxlID0gKGZ1c2Uy ICYgR0VOOF9GMl9TU19ESVNfTUFTSykgPj4gR0VOOF9GMl9TU19ESVNfU0hJRlQ7Cj4gKwo+ICsJ ZXVfZGlzYWJsZVswXSA9IEk5MTVfUkVBRChHRU44X0VVX0RJU0FCTEUwKSAmIEdFTjhfRVVfRElT MF9TMF9NQVNLOwo+ICsJZXVfZGlzYWJsZVsxXSA9IChJOTE1X1JFQUQoR0VOOF9FVV9ESVNBQkxF MCkgPj4gR0VOOF9FVV9ESVMwX1MxX1NISUZUKSB8Cj4gKwkJCSgoSTkxNV9SRUFEKEdFTjhfRVVf RElTQUJMRTEpICYgR0VOOF9FVV9ESVMxX1MxX01BU0spIDw8Cj4gKwkJCSAoMzIgLSBHRU44X0VV X0RJUzBfUzFfU0hJRlQpKTsKPiArCWV1X2Rpc2FibGVbMl0gPSAoSTkxNV9SRUFEKEdFTjhfRVVf RElTQUJMRTEpID4+IEdFTjhfRVVfRElTMV9TMl9TSElGVCkgfAo+ICsJCQkoKEk5MTVfUkVBRChH RU44X0VVX0RJU0FCTEUyKSAmIEdFTjhfRVVfRElTMl9TMl9NQVNLKSA8PAo+ICsJCQkgKDMyIC0g R0VOOF9FVV9ESVMxX1MyX1NISUZUKSk7Cj4gKwo+ICsKPiArCWluZm8gPSAoc3RydWN0IGludGVs X2RldmljZV9pbmZvICopJmRldl9wcml2LT5pbmZvOwo+ICsJaW5mby0+c2xpY2VfdG90YWwgPSBo d2VpZ2h0MzIoc19lbmFibGUpOwo+ICsKPiArCS8qCj4gKwkgKiBUaGUgc3Vic2xpY2UgZGlzYWJs ZSBmaWVsZCBpcyBnbG9iYWwsIGkuZS4gaXQgYXBwbGllcwo+ICsJICogdG8gZWFjaCBvZiB0aGUg ZW5hYmxlZCBzbGljZXMuCj4gKwkgKi8KPiArCWluZm8tPnN1YnNsaWNlX3Blcl9zbGljZSA9IHNz X21heCAtIGh3ZWlnaHQzMihzc19kaXNhYmxlKTsKPiArCWluZm8tPnN1YnNsaWNlX3RvdGFsID0g aW5mby0+c2xpY2VfdG90YWwgKiBpbmZvLT5zdWJzbGljZV9wZXJfc2xpY2U7Cj4gKwo+ICsJLyoK PiArCSAqIEl0ZXJhdGUgdGhyb3VnaCBlbmFibGVkIHNsaWNlcyBhbmQgc3Vic2xpY2VzIHRvCj4g KwkgKiBjb3VudCB0aGUgdG90YWwgZW5hYmxlZCBFVS4KPiArCSAqLwo+ICsJZm9yIChzID0gMDsg cyA8IHNfbWF4OyBzKyspIHsKPiArCQlpZiAoIShzX2VuYWJsZSAmICgweDEgPDwgcykpKQo+ICsJ CQkvKiBza2lwIGRpc2FibGVkIHNsaWNlICovCj4gKwkJCWNvbnRpbnVlOwo+ICsKPiArCQlmb3Ig KHNzID0gMDsgc3MgPCBzc19tYXg7IHNzKyspIHsKPiArCQkJdTMyIG5fZGlzYWJsZWQ7Cj4gKwo+ ICsJCQlpZiAoc3NfZGlzYWJsZSAmICgweDEgPDwgc3MpKQo+ICsJCQkJLyogc2tpcCBkaXNhYmxl ZCBzdWJzbGljZSAqLwo+ICsJCQkJY29udGludWU7Cj4gKwo+ICsJCQluX2Rpc2FibGVkID0gaHdl aWdodDgoZXVfZGlzYWJsZVtzXSA+PiAoc3MgKiBldV9tYXgpKTsKPiArCj4gKwkJCS8qCj4gKwkJ CSAqIFJlY29yZCB3aGljaCBzdWJzbGljZXMgaGF2ZSA3IEVVcy4KPiArCQkJICovCj4gKwkJCWlm IChldV9tYXggLSBuX2Rpc2FibGVkID09IDcpCj4gKwkJCQlpbmZvLT5zdWJzbGljZV83ZXVbc10g fD0gMSA8PCBzczsKPiArCj4gKwkJCWluZm8tPmV1X3RvdGFsICs9IGV1X21heCAtIG5fZGlzYWJs ZWQ7Cj4gKwkJfQo+ICsJfQo+ICsKPiArCS8qCj4gKwkgKiBCRFcgaXMgZXhwZWN0ZWQgdG8gYWx3 YXlzIGhhdmUgYSB1bmlmb3JtIGRpc3RyaWJ1dGlvbiBvZiBFVSBhY3Jvc3MKPiArCSAqIHN1YnNs aWNlcyB3aXRoIHRoZSBleGNlcHRpb24gdGhhdCBhbnkgb25lIEVVIGluIGFueSBvbmUgc3Vic2xp Y2UgbWF5Cj4gKwkgKiBiZSBmdXNlZCBvZmYgZm9yIGRpZSByZWNvdmVyeS4KPiArCSAqLwo+ICsJ aW5mby0+ZXVfcGVyX3N1YnNsaWNlID0gaW5mby0+c3Vic2xpY2VfdG90YWwgPwo+ICsJCURJVl9S T1VORF9VUChpbmZvLT5ldV90b3RhbCwgaW5mby0+c3Vic2xpY2VfdG90YWwpIDogMDsKPiArCj4g KwkvKgo+ICsJICogQkRXIHN1cHBvcnRzIHNsaWNlIHBvd2VyIGdhdGluZyBvbiBkZXZpY2VzIHdp dGggbW9yZSB0aGFuCj4gKwkgKiBvbmUgc2xpY2UuCj4gKwkgKi8KPiArCWluZm8tPmhhc19zbGlj ZV9wZyA9IChpbmZvLT5zbGljZV90b3RhbCA+IDEpOwo+ICsJaW5mby0+aGFzX3N1YnNsaWNlX3Bn ID0gMDsKPiArCWluZm8tPmhhc19ldV9wZyA9IDA7Cj4gK30KPiArCj4gIC8qCj4gICAqIERldGVy bWluZSB2YXJpb3VzIGludGVsX2RldmljZV9pbmZvIGZpZWxkcyBhdCBydW50aW1lLgo+ICAgKgo+ IEBAIC03ODMsNiArODU5LDggQEAgc3RhdGljIHZvaWQgaW50ZWxfZGV2aWNlX2luZm9fcnVudGlt ZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkvKiBJbml0aWFsaXplIHNsaWNlL3N1 YnNsaWNlL0VVIGluZm8gKi8KPiAgCWlmIChJU19DSEVSUllWSUVXKGRldikpCj4gIAkJY2hlcnJ5 dmlld19zc2V1X2luZm9faW5pdChkZXYpOwo+ICsJZWxzZSBpZiAoSVNfQlJPQURXRUxMKGRldikp Cj4gKwkJYnJvYWR3ZWxsX3NzZXVfaW5mb19pbml0KGRldik7Cj4gIAllbHNlIGlmIChJTlRFTF9J TkZPKGRldiktPmdlbiA+PSA5KQo+ICAJCWdlbjlfc3NldV9pbmZvX2luaXQoZGV2KTsKPiAgCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gaW5kZXggNjdiZjIwNS4uMTA3NjFhMyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC0xODc2LDEyICsxODc2LDI3IEBAIGVudW0gc2tsX2Rp c3BfcG93ZXJfd2VsbHMgewo+ICAjZGVmaW5lICAgQ0hWX0ZHVF9FVV9ESVNfU1MxX1IxX01BU0sJ KDB4ZiA8PCBDSFZfRkdUX0VVX0RJU19TUzFfUjFfU0hJRlQpCj4gIAo+ICAjZGVmaW5lIEdFTjhf RlVTRTIJCQkweDkxMjAKPiArI2RlZmluZSAgIEdFTjhfRjJfU1NfRElTX1NISUZUCQkyMQo+ICsj ZGVmaW5lICAgR0VOOF9GMl9TU19ESVNfTUFTSwkJKDB4NyA8PCBHRU44X0YyX1NTX0RJU19TSElG VCkKPiAgI2RlZmluZSAgIEdFTjhfRjJfU19FTkFfU0hJRlQJCTI1Cj4gICNkZWZpbmUgICBHRU44 X0YyX1NfRU5BX01BU0sJCSgweDcgPDwgR0VOOF9GMl9TX0VOQV9TSElGVCkKPiAgCj4gICNkZWZp bmUgICBHRU45X0YyX1NTX0RJU19TSElGVAkJMjAKPiAgI2RlZmluZSAgIEdFTjlfRjJfU1NfRElT X01BU0sJCSgweGYgPDwgR0VOOV9GMl9TU19ESVNfU0hJRlQpCj4gIAo+ICsjZGVmaW5lIEdFTjhf RVVfRElTQUJMRTAJCTB4OTEzNAo+ICsjZGVmaW5lICAgR0VOOF9FVV9ESVMwX1MwX01BU0sJCTB4 ZmZmZmZmCj4gKyNkZWZpbmUgICBHRU44X0VVX0RJUzBfUzFfU0hJRlQJCTI0Cj4gKyNkZWZpbmUg ICBHRU44X0VVX0RJUzBfUzFfTUFTSwkJKDB4ZmYgPDwgR0VOOF9FVV9ESVMwX1MxX1NISUZUKQo+ ICsKPiArI2RlZmluZSBHRU44X0VVX0RJU0FCTEUxCQkweDkxMzgKPiArI2RlZmluZSAgIEdFTjhf RVVfRElTMV9TMV9NQVNLCQkweGZmZmYKPiArI2RlZmluZSAgIEdFTjhfRVVfRElTMV9TMl9TSElG VAkJMTYKPiArI2RlZmluZSAgIEdFTjhfRVVfRElTMV9TMl9NQVNLCQkoMHhmZmZmIDw8IEdFTjhf RVVfRElTMV9TMl9TSElGVCkKPiArCj4gKyNkZWZpbmUgR0VOOF9FVV9ESVNBQkxFMgkJMHg5MTNj Cj4gKyNkZWZpbmUgICBHRU44X0VVX0RJUzJfUzJfTUFTSwkJMHhmZgo+ICsKPiAgI2RlZmluZSBH RU45X0VVX0RJU0FCTEUoc2xpY2UpCQkoMHg5MTM0ICsgKHNsaWNlKSoweDQpCj4gIAo+ICAjZGVm aW5lIEdFTjZfQlNEX1NMRUVQX1BTTUlfQ09OVFJPTAkweDEyMDUwCj4gQEAgLTY4NjcsNiArNjg4 Miw5IEBAIGVudW0gc2tsX2Rpc3BfcG93ZXJfd2VsbHMgewo+ICAjZGVmaW5lICAgR0VONl9SQzYJ CQkzCj4gICNkZWZpbmUgICBHRU42X1JDNwkJCTQKPiAgCj4gKyNkZWZpbmUgR0VOOF9HVF9TTElD RV9JTkZPCQkweDEzODA2NAo+ICsjZGVmaW5lICAgR0VOOF9MU0xJQ0VTVEFUX01BU0sJCTB4Nwo+ ICsKPiAgI2RlZmluZSBDSFZfUE9XRVJfU1MwX1NJRzEJCTB4YTcyMAo+ICAjZGVmaW5lIENIVl9Q T1dFUl9TUzFfU0lHMQkJMHhhNzI4Cj4gICNkZWZpbmUgICBDSFZfU1NfUEdfRU5BQkxFCQkoMTw8 MSkKPiAtLSAKPiBMdWthc3ogRGFuaWx1awo+IAoKUmV2aWV3ZWQtYnk6IEplZmYgTWNHZWUgPGpl ZmYubWNnZWVAaW50ZWwuY29tPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo=