From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniele Ceraolo Spurio Subject: Re: [PATCH v5] drm/i915/icl: Enhanced execution list support Date: Fri, 19 Jan 2018 08:15:03 -0800 Message-ID: References: <20180109232835.11478-1-paulo.r.zanoni@intel.com> <1516226034-2805-1-git-send-email-daniele.ceraolospurio@intel.com> <87efmmhudf.fsf@gaia.fi.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" 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 A372E6EAA6 for ; Fri, 19 Jan 2018 16:15:04 +0000 (UTC) In-Reply-To: <87efmmhudf.fsf@gaia.fi.intel.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Mika Kuoppala , intel-gfx@lists.freedesktop.org Cc: Thomas Daniel , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org CgpPbiAxOS8wMS8xOCAwNTowNSwgTWlrYSBLdW9wcGFsYSB3cm90ZToKPiBEYW5pZWxlIENlcmFv bG8gU3B1cmlvIDxkYW5pZWxlLmNlcmFvbG9zcHVyaW9AaW50ZWwuY29tPiB3cml0ZXM6Cj4gCj4+ IEZyb206IFRob21hcyBEYW5pZWwgPHRob21hcy5kYW5pZWxAaW50ZWwuY29tPgo+Pgo+PiBFbmhh bmNlZCBFeGVjbGlzdHMgaXMgYW4gdXBncmFkZWQgdmVyc2lvbiBvZiBleGVjbGlzdHMgd2hpY2gg c3VwcG9ydHMKPj4gdXAgdG8gOCBwb3J0cy4gVGhlIGxyY3MgdG8gYmUgc3VibWl0dGVkIGFyZSB3 cml0dGVuIHRvIGEgc3VibWl0IHF1ZXVlLAo+PiB3aGljaCBpcyB0aGVuIGxvYWRlZCBvbiB0aGUg SFcuIFdoZW4gd3JpdGluZyB0byB0aGUgRUxTUCByZWdpc3RlciwgdGhlCj4+IGxyY3MgYXJlIHdy aXR0ZW4gY3ljbGljYWxseSBpbiB0aGUgcXVldWUgZnJvbSBwb3NpdGlvbiAwIHRvIHBvc2l0aW9u IDcuCj4+IEFsdGVybmF0aXZlbHksIGl0IGlzIHBvc3NpYmxlIHRvIHdyaXRlIGRpcmVjdGx5IGlu IHRoZSBpbmRpdmlkdWFsCj4+IHBvc2l0aW9ucyBvZiB0aGUgcXVldWUgdXNpbmcgdGhlIEVMU1Eg cmVnaXN0ZXJzLiBUbyBiZSBhYmxlIHRvIHJlLXVzZQo+PiBhbGwgdGhlIGV4aXN0aW5nIGNvZGUg d2UncmUgdXNpbmcgdGhlIGxhdHRlciBtZXRob2QgYW5kIHdlJ3JlIGN1cnJlbnRseQo+PiBsaW1p dGluZyBvdXJzZWxmIHRvIG9ubHkgdXNpbmcgMiBlbGVtZW50cy4KPj4KPj4gVGhlIHByZWVtcHRp b24gZmxvdyBpcyBzbGlndGhseSBkaWZmZXJlbnQgd2l0aCBlbmhhbmNlZCBleGVjbGlzdHMsIHNv Cj4+IHRoaXMgcGF0Y2ggdHVybnMgcHJlZW1wdGlvbiBvZmYgdGVtcG9yYXJpbHkgZm9yIEdlbjEx KyB3aGlsZSB3ZSB3YWl0IGZvcgo+PiB0aGUgbmV3IG1lY2hhbmlzbSB0byBsYW5kLgo+Pgo+PiB2 MjogUmViYXNlLgo+PiB2MzogU3dpdGNoIGZyb20gIUlTX0dFTjExIHRvIEdFTiA8IDExIChEYW5p ZWxlIENlcmFvbG8gU3B1cmlvKS4KPj4gdjQ6IFVzZSB0aGUgZWxzcSByZWdpc3RlcnMgaW5zdGVh ZCBvZiBlbHNwLiAoRGFuaWVsZSBDZXJhb2xvIFNwdXJpbykKPj4gdjU6IFJld29yZCBjb21taXQs IHJlbmFtZSByZWdzIHRvIGJlIGNsb3NlciB0byBzcGVjcywgdHVybiBvZmYKPj4gICAgICBwcmVl bXB0aW9uIChEYW5pZWxlKSwgcmV1c2UgZW5naW5lLT5leGVjbGlzdHMuZWxzcCAoQ2hyaXMpCj4+ Cj4+IENjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPj4gU2lnbmVk LW9mZi1ieTogVGhvbWFzIERhbmllbCA8dGhvbWFzLmRhbmllbEBpbnRlbC5jb20+Cj4+IFNpZ25l ZC1vZmYtYnk6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KPj4gU2lnbmVk LW9mZi1ieTogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGlu dGVsLmNvbT4KPiAKPiBXYXMgZ29pbmcgdG8gYWRvcHQgdGhpcyBwYXRjaCBmcm9tIFJvZHJpZ28g YnV0IHlvdSB3ZXJlIGZhc3Rlci4KPiAKPiBJIGNob29zZSB0byBzdGFzaCB0aGUgZWxzcSBhbmQg dXNlIGl0IGFzIGEgZ2VuMTEgdnMgcmVzdCB0b2dnbGU6Cj4gCj4gUmVsZXZhbnQgYml0czoKPiAK PiArc3RhdGljIGlubGluZSB2b2lkIHdyaXRlX3BvcnQoc3RydWN0IGludGVsX2VuZ2luZV9leGVj bGlzdHMgKiBjb25zdCBleGVjbGlzdHMsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgaW50IG4sCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdTY0IGRlc2Mp Cj4gK3sKPiArICAgICAgIGlmIChleGVjbGlzdHMtPmVsc3EpCj4gKyAgICAgICAgICAgICAgIGdl bjExX2Vsc3Ffd3JpdGUoZGVzYywgbiwgZXhlY2xpc3RzLT5lbHNxKTsKPiArICAgICAgIGVsc2UK PiArICAgICAgICAgICAgICAgZ2VuOF9lbHNwX3dyaXRlKGRlc2MsIGV4ZWNsaXN0cy0+ZWxzcCk7 Cj4gK30KPiArCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBzdWJtaXRfcG9ydHMoc3RydWN0IGludGVs X2VuZ2luZV9leGVjbGlzdHMgKiBjb25zdCBleGVjbGlzdHMpCj4gK3sKPiArICAgICAgIC8qIGZv ciBnZW4xMSsgd2UgbmVlZCB0byBtYW51YWxseSBsb2FkIHRoZSBzdWJtaXQgcXVldWUgKi8KPiAr ICAgICAgIGlmIChleGVjbGlzdHMtPmVsc3EpIHsKPiArICAgICAgICAgICAgICAgc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqZW5naW5lID0KPiArICAgICAgICAgICAgICAgICAgICAgICBjb250YWlu ZXJfb2YoZXhlY2xpc3RzLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBleGVjbGlzdHMpOwo+ICsgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYgPSBlbmdpbmUtPmk5MTU7Cj4gKwo+ICsgICAgICAgICAgICAgICBJOTE1X1dS SVRFX0ZXKFJJTkdfRUxDUihlbmdpbmUpLCBFTENSX0xPQUQpOwo+ICsgICAgICAgfQo+ICt9Cj4g Kwo+CgpJIHdhcyB1bmRlY2lkZWQgYWJvdXQgaGlkaW5nIHRoZSBjb2RlIGluIHN1Yi1mdW5jdGlv bnMgYmVjYXVzZSBvZiB0aGUgCnByZS1lbXB0aW9uIHBhdGguIFRoZXJlIGlzIG5vIG5lZWQgaW4g Z2VuMTEgdG8gaW5qZWN0IGEgY29udGV4dCB0byAKcHJlZW1wdCB0byBpZGxlLCBzbyB0aGUgaW5q ZWN0X3ByZWVtcHQgZnVuY3Rpb24gd2lsbCBiZSBwcmUtZ2VuMTEgb25seSAKYW5kIHRoZXJlZm9y ZSBJJ2QgcHJlZmVyIHRvIGtlZXAgYSBkaXJlY3QgY2FsbCB0byBlbHNwX3dyaXRlIHRoZXJlLiBJ TUhPIAppdCdkIGJlIGNsZWFuZXIgdG8gaGF2ZSBzaW1pbGFyIGNvZGUgaW4gYm90aCBwbGFjZXMs IGhlbmNlIHRoZSAKb3Blbi1jb2RpbmcuIFRoaXMgc2FpZCwgSSdkIGJlIGhhcHB5IHRvIGNoYW5n ZSBpdCBsaWtlIHlvdSBwcm9wb3NlZCBpZiAKdGhlcmUgaXMgYSBnZW5lcmFsIHByZWZlcmVuY2Ug dG8gYWJzdHJhY3QgdGhpbmdzIGEgYml0IGluIHRoZSBzaGFyZWQgCnBhdGggZXZlbiBpZiB0aGUg cHJlLWVtcHRpb24gcGF0aCBzdGF5cyBkaWZmZXJlbnQuCgpSZWdhcmRpbmcgdXNpbmcgZXhlY2xp c3RzLT5lbHNxIGFzIGEgdG9nZ2xlLCBJIHdhcyB0aGlua2luZyB0aGF0IHdlIApjb3VsZCBoYXZl IGEgZGV2aWNlIGluZm8gZmxhZyBpbnN0ZWFkLCBzbyB3ZSBjb3VsZCB1c2UgaXQgZXZlbiBiZWZv cmUgCnNldHRpbmcgZXhlY2xpc3RzLT5lbHNxLiBBbnkgcHJlZmVyZW5jZSBvbiB0aGlzPwoKVGhh bmtzLApEYW5pZWxlCgpQLlMuIElmIHlvdSB3YW50IHRvIHRha2Ugb3ZlciBmZWVsIGZyZWUgdG8g c2VuZCBhbiB1cGRhdGVkIHBhdGNoIDspCgo+IC4uLgo+IC1NaWthCj4gCj4+IC0tLQo+PiAgIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICAgICB8ICA1ICsrKystCj4+ICAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgIHwgMzUgKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0tCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgg ICAgICAgIHwgIDMgKysrCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZl ci5oIHwgIDYgKysrKy0tCj4+ICAgNCBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCA4 IGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPj4gaW5kZXggYzQyMDE1 Yi4uMzE2MzU0MyAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4+IEBAIC0yNzM4LDgg KzI3MzgsMTEgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgaTkxNV9zZ19zZWdtZW50X3Np emUodm9pZCkKPj4gICAKPj4gICAjZGVmaW5lIEhBU19MT0dJQ0FMX1JJTkdfQ09OVEVYVFMoZGV2 X3ByaXYpIFwKPj4gICAJCSgoZGV2X3ByaXYpLT5pbmZvLmhhc19sb2dpY2FsX3JpbmdfY29udGV4 dHMpCj4+ICsKPj4gKy8qIFhYWDogUHJlZW1wdGlvbiBkaXNhYmxlZCBmb3IgR2VuMTErIHVudGls IHN1cHBvcnQgZm9yIG5ldyBmbG93IGxhbmRzICovCj4+ICAgI2RlZmluZSBIQVNfTE9HSUNBTF9S SU5HX1BSRUVNUFRJT04oZGV2X3ByaXYpIFwKPj4gLQkJKChkZXZfcHJpdiktPmluZm8uaGFzX2xv Z2ljYWxfcmluZ19wcmVlbXB0aW9uKQo+PiArCQkoKGRldl9wcml2KS0+aW5mby5oYXNfbG9naWNh bF9yaW5nX3ByZWVtcHRpb24gJiYgXAo+PiArCQkgSU5URUxfR0VOKGRldl9wcml2KSA8IDExKQo+ PiAgIAo+PiAgICNkZWZpbmUgSEFTX0VYRUNMSVNUUyhkZXZfcHJpdikgSEFTX0xPR0lDQUxfUklO R19DT05URVhUUyhkZXZfcHJpdikKPj4gICAKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKPj4g aW5kZXggZmYyNWYyMC4uNjdhZDdjOSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfbHJjLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMK Pj4gQEAgLTQyOCwxMSArNDI4LDI0IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBlbHNwX3dyaXRlKHU2 NCBkZXNjLCB1MzIgX19pb21lbSAqZWxzcCkKPj4gICAJd3JpdGVsKGxvd2VyXzMyX2JpdHMoZGVz YyksIGVsc3ApOwo+PiAgIH0KPj4gICAKPj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBlbHNxY193cml0 ZSh1NjQgZGVzYywgdTMyIF9faW9tZW0gKmVsc3FjLCB1MzIgcG9ydCkKPj4gK3sKPj4gKwl3cml0 ZWwobG93ZXJfMzJfYml0cyhkZXNjKSwgZWxzcWMgKyBwb3J0ICogMik7Cj4+ICsJd3JpdGVsKHVw cGVyXzMyX2JpdHMoZGVzYyksIGVsc3FjICsgcG9ydCAqIDIgKyAxKTsKPj4gK30KPj4gKwo+PiAg IHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19zdWJtaXRfcG9ydHMoc3RydWN0IGludGVsX2VuZ2luZV9j cyAqZW5naW5lKQo+PiAgIHsKPj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBlbmdpbmUtPmk5MTU7Cj4+ICAgCXN0cnVjdCBleGVjbGlzdF9wb3J0ICpwb3J0ID0gZW5naW5l LT5leGVjbGlzdHMucG9ydDsKPj4gICAJdW5zaWduZWQgaW50IG47Cj4+ICAgCj4+ICsJLyoKPj4g KwkgKiBHZW4xMSsgbm90ZTogdGhlIHN1Ym1pdCBxdWV1ZSBpcyBub3QgY2xlYXJlZCBhZnRlciBi ZWluZyBzdWJtaXR0ZWQKPj4gKwkgKiB0byB0aGUgSFcgc28gd2UgbmVlZCB0byBtYWtlIHN1cmUg d2UgYWx3YXlzIGNsZWFuIGl0IHVwLiBUaGlzIGlzCj4+ICsJICogY3VycmVudGx5IGVuc3VyZWQg YnkgdGhlIGZhY3QgdGhhdCB3ZSBhbHdheXMgd3JpdGUgdGhlIHNhbWUgbnVtYmVyCj4+ICsJICog b2YgZWxzcSBlbnRyaWVzLCBrZWVwIHRoaXMgaW4gbWluZCBiZWZvcmUgY2hhbmdpbmcgdGhlIGxv b3AgYmVsb3cuCj4+ICsJICovCj4+ICAgCWZvciAobiA9IGV4ZWNsaXN0c19udW1fcG9ydHMoJmVu Z2luZS0+ZXhlY2xpc3RzKTsgbi0tOyApIHsKPj4gICAJCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVx dWVzdCAqcnE7Cj4+ICAgCQl1bnNpZ25lZCBpbnQgY291bnQ7Cj4+IEBAIC00NTYsOCArNDY5LDE2 IEBAIHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19zdWJtaXRfcG9ydHMoc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lKQo+PiAgIAkJCWRlc2MgPSAwOwo+PiAgIAkJfQo+PiAgIAo+PiAtCQllbHNw X3dyaXRlKGRlc2MsIGVuZ2luZS0+ZXhlY2xpc3RzLmVsc3ApOwo+PiArCQlpZiAoSU5URUxfR0VO KGRldl9wcml2KSA+PSAxMSkKPj4gKwkJCWVsc3FjX3dyaXRlKGRlc2MsIGVuZ2luZS0+ZXhlY2xp c3RzLmVscywgbik7Cj4+ICsJCWVsc2UKPj4gKwkJCWVsc3Bfd3JpdGUoZGVzYywgZW5naW5lLT5l eGVjbGlzdHMuZWxzKTsKPj4gICAJfQo+PiArCj4+ICsJLyogZm9yIGdlbjExKyB3ZSBuZWVkIHRv IG1hbnVhbGx5IGxvYWQgdGhlIHN1Ym1pdCBxdWV1ZSAqLwo+PiArCWlmIChJTlRFTF9HRU4oZGV2 X3ByaXYpID49IDExKQo+PiArCQlJOTE1X1dSSVRFX0ZXKFJJTkdfRVhFQ0xJU1RfQ09OVFJPTChl bmdpbmUpLCBFTF9DVFJMX0xPQUQpOwo+PiArCj4+ICAgCWV4ZWNsaXN0c19jbGVhcl9hY3RpdmUo JmVuZ2luZS0+ZXhlY2xpc3RzLCBFWEVDTElTVFNfQUNUSVZFX0hXQUNLKTsKPj4gICB9Cj4+ICAg Cj4+IEBAIC01MDYsOSArNTI3LDkgQEAgc3RhdGljIHZvaWQgaW5qZWN0X3ByZWVtcHRfY29udGV4 dChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCj4+ICAgCj4+ICAgCUdFTV9UUkFDRSgi JXNcbiIsIGVuZ2luZS0+bmFtZSk7Cj4+ICAgCWZvciAobiA9IGV4ZWNsaXN0c19udW1fcG9ydHMo JmVuZ2luZS0+ZXhlY2xpc3RzKTsgLS1uOyApCj4+IC0JCWVsc3Bfd3JpdGUoMCwgZW5naW5lLT5l eGVjbGlzdHMuZWxzcCk7Cj4+ICsJCWVsc3Bfd3JpdGUoMCwgZW5naW5lLT5leGVjbGlzdHMuZWxz KTsKPj4gICAKPj4gLQllbHNwX3dyaXRlKGNlLT5scmNfZGVzYywgZW5naW5lLT5leGVjbGlzdHMu ZWxzcCk7Cj4+ICsJZWxzcF93cml0ZShjZS0+bHJjX2Rlc2MsIGVuZ2luZS0+ZXhlY2xpc3RzLmVs cyk7Cj4+ICAgCWV4ZWNsaXN0c19jbGVhcl9hY3RpdmUoJmVuZ2luZS0+ZXhlY2xpc3RzLCBFWEVD TElTVFNfQUNUSVZFX0hXQUNLKTsKPj4gICB9Cj4+ICAgCj4+IEBAIC0yMDE2LDggKzIwMzcsMTIg QEAgc3RhdGljIGludCBsb2dpY2FsX3JpbmdfaW5pdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpl bmdpbmUpCj4+ICAgCWlmIChyZXQpCj4+ICAgCQlnb3RvIGVycm9yOwo+PiAgIAo+PiAtCWVuZ2lu ZS0+ZXhlY2xpc3RzLmVsc3AgPQo+PiAtCQllbmdpbmUtPmk5MTUtPnJlZ3MgKyBpOTE1X21taW9f cmVnX29mZnNldChSSU5HX0VMU1AoZW5naW5lKSk7Cj4+ICsJaWYgKElOVEVMX0dFTihlbmdpbmUt Pmk5MTUpID49IDExKQo+PiArCQllbmdpbmUtPmV4ZWNsaXN0cy5lbHMgPSBlbmdpbmUtPmk5MTUt PnJlZ3MgKwo+PiArCQkJaTkxNV9tbWlvX3JlZ19vZmZzZXQoUklOR19FWEVDTElTVF9TUV9DT05U RU5UUyhlbmdpbmUpKTsKPj4gKwllbHNlCj4+ICsJCWVuZ2luZS0+ZXhlY2xpc3RzLmVscyA9IGVu Z2luZS0+aTkxNS0+cmVncyArCj4+ICsJCQlpOTE1X21taW9fcmVnX29mZnNldChSSU5HX0VMU1Ao ZW5naW5lKSk7Cj4+ICAgCj4+ICAgCXJldHVybiAwOwo+PiAgIAo+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9scmMuaAo+PiBpbmRleCA2ZDRmOWI5Li4zYWI0MjY2IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaAo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9scmMuaAo+PiBAQCAtMzgsNiArMzgsOSBAQAo+PiAgICNkZWZpbmUJICBDVFhfQ1RSTF9F TkdJTkVfQ1RYX1JFU1RPUkVfSU5ISUJJVAkoMSA8PCAwKQo+PiAgICNkZWZpbmUgICBDVFhfQ1RS TF9SU19DVFhfRU5BQkxFICAgICAgICAgICAgICAgICgxIDw8IDEpCj4+ICAgI2RlZmluZSBSSU5H X0NPTlRFWFRfU1RBVFVTX0JVRl9CQVNFKGVuZ2luZSkJX01NSU8oKGVuZ2luZSktPm1taW9fYmFz ZSArIDB4MzcwKQo+PiArI2RlZmluZSBSSU5HX0VYRUNMSVNUX1NRX0NPTlRFTlRTKGVuZ2luZSkJ X01NSU8oKGVuZ2luZSktPm1taW9fYmFzZSArIDB4NTEwKQo+PiArI2RlZmluZSBSSU5HX0VYRUNM SVNUX0NPTlRST0woZW5naW5lKQkJX01NSU8oKGVuZ2luZSktPm1taW9fYmFzZSArIDB4NTUwKQo+ PiArI2RlZmluZQkgIEVMX0NUUkxfTE9BRAkJCQkoMSA8PCAwKQo+PiAgICNkZWZpbmUgUklOR19D T05URVhUX1NUQVRVU19CVUZfTE8oZW5naW5lLCBpKQlfTU1JTygoZW5naW5lKS0+bW1pb19iYXNl ICsgMHgzNzAgKyAoaSkgKiA4KQo+PiAgICNkZWZpbmUgUklOR19DT05URVhUX1NUQVRVU19CVUZf SEkoZW5naW5lLCBpKQlfTU1JTygoZW5naW5lKS0+bW1pb19iYXNlICsgMHgzNzAgKyAoaSkgKiA4 ICsgNCkKPj4gICAjZGVmaW5lIFJJTkdfQ09OVEVYVF9TVEFUVVNfUFRSKGVuZ2luZSkJCV9NTUlP KChlbmdpbmUpLT5tbWlvX2Jhc2UgKyAweDNhMCkKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3JpbmdidWZmZXIuaAo+PiBpbmRleCBjNWZmMjAzLi5kMzZiYjczIDEwMDY0NAo+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKPj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4+IEBAIC0yMDAsOSArMjAwLDExIEBAIHN0 cnVjdCBpbnRlbF9lbmdpbmVfZXhlY2xpc3RzIHsKPj4gICAJYm9vbCBub19wcmlvbGlzdDsKPj4g ICAKPj4gICAJLyoqCj4+IC0JICogQGVsc3A6IHRoZSBFeGVjTGlzdCBTdWJtaXNzaW9uIFBvcnQg cmVnaXN0ZXIKPj4gKwkgKiBAZWxzOiBnZW4tc3BlY2lmaWMgZXhlY2xpc3Qgc3VibWlzc2lvbiBy ZWdpc3Rlcgo+PiArCSAqIHNldCB0byB0aGUgRXhlY0xpc3QgU3VibWlzc2lvbiBQb3J0IChlbHNw KSByZWdpc3RlciBwcmUtR2VuMTEgYW5kIHRvCj4+ICsJICogdGhlIEV4ZWNMaXN0IFN1Ym1pc3Np b24gUXVldWUgQ29udGVudHMgcmVnaXN0ZXIgYXJyYXkgZm9yIEdlbjExKwo+PiAgIAkgKi8KPj4g LQl1MzIgX19pb21lbSAqZWxzcDsKPj4gKwl1MzIgX19pb21lbSAqZWxzOwo+PiAgIAo+PiAgIAkv KioKPj4gICAJICogQHBvcnQ6IGV4ZWNsaXN0IHBvcnQgc3RhdGVzCj4+IC0tIAo+PiAxLjkuMQo+ Pgo+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PiBJ bnRlbC1nZnggbWFpbGluZyBsaXN0Cj4+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK Pj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==