From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH v2 34/37] drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION Date: Fri, 28 Jun 2019 06:53:25 +0100 Message-ID: References: <20190627205633.1143-1-matthew.auld@intel.com> <20190627205633.1143-35-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0CB796E851 for ; Fri, 28 Jun 2019 05:53:27 +0000 (UTC) In-Reply-To: <20190627205633.1143-35-matthew.auld@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: Matthew Auld , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDI3LzA2LzIwMTkgMjE6NTYsIE1hdHRoZXcgQXVsZCB3cm90ZToKPiBGcm9tOiBBYmRpZWwg SmFudWxndWUgPGFiZGllbC5qYW51bGd1ZUBsaW51eC5pbnRlbC5jb20+Cj4gCj4gVGhpcyBjYWxs IHdpbGwgc3BlY2lmeSB3aGljaCBtZW1vcnkgcmVnaW9uIGFuIG9iamVjdCBzaG91bGQgYmUgcGxh Y2VkLgo+IAo+IE5vdGUgdGhhdCBjaGFuZ2luZyB0aGUgb2JqZWN0J3MgYmFja2luZyBzdG9yYWdl IHNob3VsZCBiZSBpbW1lZGlhdGVseQo+IGRvbmUgYWZ0ZXIgYW4gb2JqZWN0IGlzIGNyZWF0ZWQg b3IgaWYgaXQncyBub3QgeWV0IGluIHVzZSwgb3RoZXJ3aXNlCj4gdGhpcyB3aWxsIGZhaWwgb24g YSBidXN5IG9iamVjdC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBBYmRpZWwgSmFudWxndWUgPGFiZGll bC5qYW51bGd1ZUBsaW51eC5pbnRlbC5jb20+Cj4gQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFz LmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KPiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2dlbS9pOTE1X2dlbV9jb250ZXh0LmMgfCAgMTIgKysKPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2dlbS9pOTE1X2dlbV9jb250ZXh0LmggfCAgIDIgKwo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUv Z2VtL2k5MTVfZ2VtX2lvY3Rscy5oICB8ICAgMiArCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9n ZW0vaTkxNV9nZW1fb2JqZWN0LmMgIHwgMTE3ICsrKysrKysrKysrKysrKysrKysrCj4gICBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jICAgICAgICAgICAgIHwgICAyICstCj4gICBpbmNs dWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggICAgICAgICAgICAgICAgIHwgIDI3ICsrKysrCj4gICA2 IGZpbGVzIGNoYW5nZWQsIDE2MSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4dC5jCj4gaW5kZXggOGE5Nzg3 Y2YwY2QwLi4xNTdjYTgyNDc3NTIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv Z2VtL2k5MTVfZ2VtX2NvbnRleHQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9p OTE1X2dlbV9jb250ZXh0LmMKPiBAQCAtNzUsNiArNzUsNyBAQAo+ICAgI2luY2x1ZGUgImk5MTVf Z2xvYmFscy5oIgo+ICAgI2luY2x1ZGUgImk5MTVfdHJhY2UuaCIKPiAgICNpbmNsdWRlICJpOTE1 X3VzZXJfZXh0ZW5zaW9ucy5oIgo+ICsjaW5jbHVkZSAiaTkxNV9nZW1faW9jdGxzLmgiCj4gICAK PiAgICNkZWZpbmUgQUxMX0wzX1NMSUNFUyhkZXYpICgxIDw8IE5VTV9MM19TTElDRVMoZGV2KSkg LSAxCj4gICAKPiBAQCAtMjM1Nyw2ICsyMzU4LDE3IEBAIGludCBpOTE1X2dlbV9jb250ZXh0X3Nl dHBhcmFtX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gICAJcmV0 dXJuIHJldDsKPiAgIH0KPiAgIAo+ICtpbnQgaTkxNV9nZW1fc2V0cGFyYW1faW9jdGwoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiArCQkJICAgIHN0cnVjdCBkcm1fZmlsZSAq ZmlsZSkKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X3BhcmFtICphcmdzID0g ZGF0YTsKPiArCj4gKwlpZiAoYXJncy0+cGFyYW0gPD0gSTkxNV9DT05URVhUX1BBUkFNX01BWCkK PiArCQlyZXR1cm4gaTkxNV9nZW1fY29udGV4dF9zZXRwYXJhbV9pb2N0bChkZXYsIGRhdGEsIGZp bGUpOwo+ICsKPiArCXJldHVybiBpOTE1X2dlbV9vYmplY3Rfc2V0cGFyYW1faW9jdGwoZGV2LCBk YXRhLCBmaWxlKTsKPiArfQo+ICsKPiAgIGludCBpOTE1X2dlbV9jb250ZXh0X3Jlc2V0X3N0YXRz X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gICAJCQkJICAgICAgIHZvaWQgKmRhdGEs IHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKPiAgIHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2NvbnRleHQuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dl bS9pOTE1X2dlbV9jb250ZXh0LmgKPiBpbmRleCA5NjkxZGQwNjJmNzIuLmQ1YTlhNjNiYjM0YyAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fY29udGV4dC5o Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2NvbnRleHQuaAo+IEBA IC0xNTcsNiArMTU3LDggQEAgaW50IGk5MTVfZ2VtX2NvbnRleHRfZ2V0cGFyYW1faW9jdGwoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgIAkJCQkgICAgc3RydWN0IGRybV9m aWxlICpmaWxlX3ByaXYpOwo+ICAgaW50IGk5MTVfZ2VtX2NvbnRleHRfc2V0cGFyYW1faW9jdGwo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgIAkJCQkgICAgc3RydWN0IGRy bV9maWxlICpmaWxlX3ByaXYpOwo+ICtpbnQgaTkxNV9nZW1fc2V0cGFyYW1faW9jdGwoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiArCQkJICAgIHN0cnVjdCBkcm1fZmlsZSAq ZmlsZSk7Cj4gICBpbnQgaTkxNV9nZW1fY29udGV4dF9yZXNldF9zdGF0c19pb2N0bChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAgCQkJCSAgICAgICBzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGUpOwo+ICAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9p OTE1X2dlbV9pb2N0bHMuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9pb2N0 bHMuaAo+IGluZGV4IDVhYmQ1YjIxNzJmMi4uYWY3NDY1YmNlZWJkIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9pb2N0bHMuaAo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9pb2N0bHMuaAo+IEBAIC0zMiw2ICszMiw4IEBAIGlu dCBpOTE1X2dlbV9tbWFwX2d0dF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpk YXRhLAo+ICAgCQkJICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSk7Cj4gICBpbnQgaTkxNV9nZW1f bW1hcF9vZmZzZXRfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAg IAkJCSAgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7Cj4gK2ludCBpOTE1X2dlbV9v YmplY3Rfc2V0cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwK PiArCQkJCSAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2KTsKPiAgIGludCBpOTE1X2dlbV9w cmVhZF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAgCQkJIHN0 cnVjdCBkcm1fZmlsZSAqZmlsZSk7Cj4gICBpbnQgaTkxNV9nZW1fcHdyaXRlX2lvY3RsKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9vYmplY3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dl bS9pOTE1X2dlbV9vYmplY3QuYwo+IGluZGV4IDY5MWFmMzg4ZTRlNy4uYmM5NWY0NDlkZTUwIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9vYmplY3QuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9vYmplY3QuYwo+IEBAIC01 NTEsNiArNTUxLDEyMyBAQCBpbnQgX19pbml0IGk5MTVfZ2xvYmFsX29iamVjdHNfaW5pdCh2b2lk KQo+ICAgCXJldHVybiAwOwo+ICAgfQo+ICAgCj4gK3N0YXRpYyBlbnVtIGludGVsX3JlZ2lvbl9p ZAo+ICtfX3JlZ2lvbl9pZCh1MzIgcmVnaW9uKQo+ICt7Cj4gKwllbnVtIGludGVsX3JlZ2lvbl9p ZCBpZDsKPiArCj4gKwlmb3IgKGlkID0gMDsgaWQgPCBBUlJBWV9TSVpFKGludGVsX3JlZ2lvbl9t YXApOyArK2lkKSB7Cj4gKwkJaWYgKGludGVsX3JlZ2lvbl9tYXBbaWRdID09IHJlZ2lvbikKPiAr CQkJcmV0dXJuIGlkOwo+ICsJfQo+ICsKPiArCXJldHVybiBJTlRFTF9NRU1PUllfVUtOT1dOOwo+ ICt9Cj4gKwo+ICtzdGF0aWMgaW50IGk5MTVfZ2VtX29iamVjdF9yZWdpb25fc2VsZWN0KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiArCQkJCQkgc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3RfcGFyYW0gKmFyZ3MsCj4gKwkJCQkJIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKPiAr CQkJCQkgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKPiArewo+ICsJc3RydWN0IGlu dGVsX2NvbnRleHQgKmNlID0gZGV2X3ByaXYtPmVuZ2luZVtCQ1MwXS0+a2VybmVsX2NvbnRleHQ7 Cj4gKwl1MzIgX191c2VyICp1cmVnaW9ucyA9IHU2NF90b191c2VyX3B0cihhcmdzLT5kYXRhKTsK PiArCXUzMiB1cmVnaW9uc19jb3B5W0lOVEVMX01FTU9SWV9VS05PV05dOwo+ICsJaW50IGksIHJl dDsKPiArCj4gKwlpZiAoYXJncy0+c2l6ZSA+IEFSUkFZX1NJWkUoaW50ZWxfcmVnaW9uX21hcCkp Cj4gKwkJcmV0dXJuIC1FSU5WQUw7Cj4gKwo+ICsJbWVtc2V0KHVyZWdpb25zX2NvcHksIDAsIHNp emVvZih1cmVnaW9uc19jb3B5KSk7Cj4gKwlmb3IgKGkgPSAwOyBpIDwgYXJncy0+c2l6ZTsgaSsr KSB7Cj4gKwkJdTMyIHJlZ2lvbjsKPiArCj4gKwkJcmV0ID0gZ2V0X3VzZXIocmVnaW9uLCB1cmVn aW9ucyk7Cj4gKwkJaWYgKHJldCkKPiArCQkJcmV0dXJuIHJldDsKPiArCj4gKwkJdXJlZ2lvbnNf Y29weVtpXSA9IHJlZ2lvbjsKPiArCQkrK3VyZWdpb25zOwo+ICsJfQo+ICsKPiArCW11dGV4X2xv Y2soJmRldl9wcml2LT5kcm0uc3RydWN0X211dGV4KTsKPiArCXJldCA9IGk5MTVfZ2VtX29iamVj dF9wcmVwYXJlX21vdmUob2JqKTsKPiArCWlmIChyZXQpIHsKPiArCQlEUk1fRVJST1IoIkNhbm5v dCBzZXQgbWVtb3J5IHJlZ2lvbiwgb2JqZWN0IGluIHVzZVxuIik7Cj4gKwkgICAgICAgIGdvdG8g ZXJyOwo+ICsJfQo+ICsKPiArCWlmIChhcmdzLT5zaXplID4gQVJSQVlfU0laRShpbnRlbF9yZWdp b25fbWFwKSkKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCj4gKwlmb3IgKGkgPSAwOyBpIDwgYXJn cy0+c2l6ZTsgaSsrKSB7Cj4gKwkJdTMyIHJlZ2lvbiA9IHVyZWdpb25zX2NvcHlbaV07Cj4gKwkJ ZW51bSBpbnRlbF9yZWdpb25faWQgaWQgPSBfX3JlZ2lvbl9pZChyZWdpb24pOwo+ICsKPiArCQlp ZiAoaWQgPT0gSU5URUxfTUVNT1JZX1VLTk9XTikgewo+ICsJCQlyZXQgPSAtRUlOVkFMOwo+ICsJ CQlnb3RvIGVycjsKPiArCQl9Cj4gKwo+ICsJCXJldCA9IGk5MTVfZ2VtX29iamVjdF9taWdyYXRl KG9iaiwgY2UsIGlkKTsKPiArCQlpZiAoIXJldCkgewo+ICsJCQlpZiAoTUVNT1JZX1RZUEVfRlJP TV9SRUdJT04ocmVnaW9uKSA9PQo+ICsJCQkgICAgSU5URUxfTE1FTSkgewo+ICsJCQkJLyoKPiAr CQkJCSAqIFRPRE86IHRoaXMgc2hvdWxkIGJlIHBhcnQgb2YgZ2V0X3BhZ2VzKCksCj4gKwkJCQkg KiB3aGVuIGFzeW5jIGdldF9wYWdlcyBhcnJpdmVzCj4gKwkJCQkgKi8KPiArCQkJCXJldCA9IGk5 MTVfZ2VtX29iamVjdF9maWxsX2JsdChvYmosIGNlLCAwKTsKPiArCQkJCWlmIChyZXQpIHsKPiAr CQkJCQlEUk1fRVJST1IoIkZhaWxlZCBjbGVhcmluZyB0aGUgb2JqZWN0XG4iKTsKPiArCQkJCQln b3RvIGVycjsKPiArCQkJCX0KPiArCj4gKwkJCQlpOTE1X2dlbV9vYmplY3RfbG9jayhvYmopOwo+ ICsJCQkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3NldF90b19jcHVfZG9tYWluKG9iaiwgZmFsc2Up Owo+ICsJCQkJaTkxNV9nZW1fb2JqZWN0X3VubG9jayhvYmopOwo+ICsJCQkJaWYgKHJldCkKPiAr CQkJCQlnb3RvIGVycjsKPiArCQkJfQo+ICsJCQlicmVhazsKPiArCQl9Cj4gKwl9Cj4gK2VycjoK PiArCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwo+ICsJcmV0dXJu IHJldDsKPiArfQo+ICsKPiAraW50IGk5MTVfZ2VtX29iamVjdF9zZXRwYXJhbV9pb2N0bChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICsJCQkJICAgc3RydWN0IGRybV9maWxl ICpmaWxlKQo+ICt7Cj4gKwo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3RfcGFyYW0gKmFy Z3MgPSBkYXRhOwo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkx NShkZXYpOwo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKPiArCWludCByZXQ7 Cj4gKwo+ICsJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2xvb2t1cChmaWxlLCBhcmdzLT5oYW5kbGUp Owo+ICsJaWYgKCFvYmopCj4gKwkJcmV0dXJuIC1FTk9FTlQ7Cj4gKwo+ICsJc3dpdGNoIChhcmdz LT5wYXJhbSkgewo+ICsJY2FzZSBJOTE1X1BBUkFNX01FTU9SWV9SRUdJT046Cj4gKwkJcmV0ID0g aTkxNV9nZW1fb2JqZWN0X3JlZ2lvbl9zZWxlY3QoZGV2X3ByaXYsIGFyZ3MsIGZpbGUsIG9iaik7 Cj4gKwkJaWYgKHJldCkgewo+ICsJCQlEUk1fRVJST1IoIkNhbm5vdCBzZXQgbWVtb3J5IHJlZ2lv biwgbWlncmF0aW9uIGZhaWxlZFxuIik7Cj4gKwkJCWdvdG8gZXJyOwo+ICsJCX0KPiArCj4gKwkJ YnJlYWs7Cj4gKwlkZWZhdWx0Ogo+ICsJCXJldCA9IC1FSU5WQUw7Cj4gKwkJYnJlYWs7Cj4gKwl9 Cj4gKwo+ICtlcnI6Cj4gKwlpOTE1X2dlbV9vYmplY3RfcHV0KG9iaik7Cj4gKwlyZXR1cm4gcmV0 Owo+ICt9Cj4gKwo+ICAgI2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9JOTE1X1NFTEZURVNUKQo+ ICAgI2luY2x1ZGUgInNlbGZ0ZXN0cy9odWdlX2dlbV9vYmplY3QuYyIKPiAgICNpbmNsdWRlICJz ZWxmdGVzdHMvaHVnZV9wYWdlcy5jIgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+IGluZGV4IDFj M2Q1Y2IyODkzYy4uM2Q2ZmU5OTNmMjZlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4g QEAgLTMxOTYsNyArMzE5Niw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2lvY3RsX2Rlc2Mg aTkxNV9pb2N0bHNbXSA9IHsKPiAgIAlEUk1fSU9DVExfREVGX0RSVihJOTE1X0dFVF9SRVNFVF9T VEFUUywgaTkxNV9nZW1fY29udGV4dF9yZXNldF9zdGF0c19pb2N0bCwgRFJNX1JFTkRFUl9BTExP VyksCj4gICAJRFJNX0lPQ1RMX0RFRl9EUlYoSTkxNV9HRU1fVVNFUlBUUiwgaTkxNV9nZW1fdXNl cnB0cl9pb2N0bCwgRFJNX1JFTkRFUl9BTExPVyksCj4gICAJRFJNX0lPQ1RMX0RFRl9EUlYoSTkx NV9HRU1fQ09OVEVYVF9HRVRQQVJBTSwgaTkxNV9nZW1fY29udGV4dF9nZXRwYXJhbV9pb2N0bCwg RFJNX1JFTkRFUl9BTExPVyksCj4gLQlEUk1fSU9DVExfREVGX0RSVihJOTE1X0dFTV9DT05URVhU X1NFVFBBUkFNLCBpOTE1X2dlbV9jb250ZXh0X3NldHBhcmFtX2lvY3RsLCBEUk1fUkVOREVSX0FM TE9XKSwKPiArCURSTV9JT0NUTF9ERUZfRFJWKEk5MTVfR0VNX0NPTlRFWFRfU0VUUEFSQU0sIGk5 MTVfZ2VtX3NldHBhcmFtX2lvY3RsLCBEUk1fUkVOREVSX0FMTE9XKSwKPiAgIAlEUk1fSU9DVExf REVGX0RSVihJOTE1X1BFUkZfT1BFTiwgaTkxNV9wZXJmX29wZW5faW9jdGwsIERSTV9SRU5ERVJf QUxMT1cpLAo+ICAgCURSTV9JT0NUTF9ERUZfRFJWKEk5MTVfUEVSRl9BRERfQ09ORklHLCBpOTE1 X3BlcmZfYWRkX2NvbmZpZ19pb2N0bCwgRFJNX1JFTkRFUl9BTExPVyksCj4gICAJRFJNX0lPQ1RM X0RFRl9EUlYoSTkxNV9QRVJGX1JFTU9WRV9DT05GSUcsIGk5MTVfcGVyZl9yZW1vdmVfY29uZmln X2lvY3RsLCBEUk1fUkVOREVSX0FMTE9XKSwKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2Ry bS9pOTE1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCj4gaW5kZXggNzI5ZTcy OWUyMjgyLi41Y2Y5NzZlNzYwOGEgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS91YXBpL2RybS9pOTE1 X2RybS5oCj4gKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCj4gQEAgLTM2MCw2ICsz NjAsNyBAQCB0eXBlZGVmIHN0cnVjdCBfZHJtX2k5MTVfc2FyZWEgewo+ICAgI2RlZmluZSBEUk1f STkxNV9HRU1fVk1fQ1JFQVRFCQkweDNhCj4gICAjZGVmaW5lIERSTV9JOTE1X0dFTV9WTV9ERVNU Uk9ZCQkweDNiCj4gICAjZGVmaW5lIERSTV9JOTE1X0dFTV9NTUFQX09GRlNFVCAgIAlEUk1fSTkx NV9HRU1fTU1BUF9HVFQKPiArI2RlZmluZSBEUk1fSTkxNV9HRU1fT0JKRUNUX1NFVFBBUkFNCURS TV9JOTE1X0dFTV9DT05URVhUX1NFVFBBUkFNCj4gICAvKiBNdXN0IGJlIGtlcHQgY29tcGFjdCAt LSBubyBob2xlcyAqLwo+ICAgCj4gICAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lOSVQJCURSTV9J T1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JTklULCBkcm1faTkxNV9pbml0X3QpCj4g QEAgLTQyMyw2ICs0MjQsNyBAQCB0eXBlZGVmIHN0cnVjdCBfZHJtX2k5MTVfc2FyZWEgewo+ICAg I2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fVk1fQ1JFQVRFCURSTV9JT1dSKERSTV9DT01NQU5E X0JBU0UgKyBEUk1fSTkxNV9HRU1fVk1fQ1JFQVRFLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3ZtX2Nv bnRyb2wpCj4gICAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9WTV9ERVNUUk9ZCURSTV9JT1cg KERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fVk1fREVTVFJPWSwgc3RydWN0IGRybV9p OTE1X2dlbV92bV9jb250cm9sKQo+ICAgI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fTU1BUF9P RkZTRVQJCURSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fTU1BUF9PRkZT RVQsIHN0cnVjdCBkcm1faTkxNV9nZW1fbW1hcF9vZmZzZXQpCj4gKyNkZWZpbmUgRFJNX0lPQ1RM X0k5MTVfR0VNX09CSkVDVF9TRVRQQVJBTQlEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJN X0k5MTVfR0VNX09CSkVDVF9TRVRQQVJBTSwgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3RfcGFy YW0pCj4gICAKPiAgIC8qIEFsbG93IGRyaXZlcnMgdG8gc3VibWl0IGJhdGNoYnVmZmVycyBkaXJl Y3RseSB0byBoYXJkd2FyZSwgcmVseWluZwo+ICAgICogb24gdGhlIHNlY3VyaXR5IG1lY2hhbmlz bXMgcHJvdmlkZWQgYnkgaGFyZHdhcmUuCj4gQEAgLTE1OTUsMTEgKzE1OTcsMzYgQEAgc3RydWN0 IGRybV9pOTE1X2dlbV9jb250ZXh0X3BhcmFtIHsKPiAgICAqICAgaTkxNV9jb250ZXh0X2VuZ2lu ZXNfYm9uZCAoSTkxNV9DT05URVhUX0VOR0lORVNfRVhUX0JPTkQpCj4gICAgKi8KPiAgICNkZWZp bmUgSTkxNV9DT05URVhUX1BBUkFNX0VOR0lORVMJMHhhCj4gKwo+ICsjZGVmaW5lIEk5MTVfQ09O VEVYVF9QQVJBTV9NQVgJICAgICAgICAweGZmZmZmZmZmCj4gICAvKiBNdXN0IGJlIGtlcHQgY29t cGFjdCAtLSBubyBob2xlcyBhbmQgd2VsbCBkb2N1bWVudGVkICovCj4gICAKPiAgIAlfX3U2NCB2 YWx1ZTsKPiAgIH07Cj4gICAKPiArc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3RfcGFyYW0gewo+ ICsJLyoqIEhhbmRsZSBmb3IgdGhlIG9iamVjdCAqLwo+ICsJX191MzIgaGFuZGxlOwo+ICsKPiAr CV9fdTMyIHNpemU7Cj4gKwo+ICsJLyogTXVzdCBiZSAxICovCj4gKwlfX3UzMiBvYmplY3RfY2xh c3M7CgpXaGF0IGlzIHRoaXMgZm9yPyBJdCdzIG5vdCB1c2VkIGluIHRoZSBwYXRjaC4KCj4gKwo+ ICsJLyoqIFNldCB0aGUgbWVtb3J5IHJlZ2lvbiBmb3IgdGhlIG9iamVjdCBsaXN0ZWQgaW4gcHJl ZmVyZW5jZSBvcmRlcgo+ICsJICogIGFzIGFuIGFycmF5IG9mIHJlZ2lvbiBpZHMgd2l0aGluIGRh dGEuIFRvIGZvcmNlIGFuIG9iamVjdAo+ICsJICogIHRvIGEgcGFydGljdWxhciBtZW1vcnkgcmVn aW9uLCBzZXQgdGhlIHJlZ2lvbiBhcyB0aGUgc29sZSBlbnRyeS4KPiArCSAqCj4gKwkgKiAgVmFs aWQgcmVnaW9uIGlkcyBhcmUgZGVyaXZlZCBmcm9tIHRoZSBpZCBmaWVsZCBvZgo+ICsJICogIHN0 cnVjdCBkcm1faTkxNV9tZW1vcnlfcmVnaW9uX2luZm8uCj4gKwkgKiAgU2VlIHN0cnVjdCBkcm1f aTkxNV9xdWVyeV9tZW1vcnlfcmVnaW9uX2luZm8uCj4gKwkgKi8KClRoZXNlIHR3byBzdHJ1Y3Rz IG9ubHkgY29tZSBpbiB0aGUgbmV4dCBwYXRjaCBzbyBJIHN1c3BlY3QgdGhlIG9yZGVyIG9mIAp0 aGUgdHdvIG5lZWRzIHN3YXBwaW5nLgoKUmVnYXJkcywKClR2cnRrbwoKPiArI2RlZmluZSBJOTE1 X1BBUkFNX01FTU9SWV9SRUdJT04gMHgxCj4gKwlfX3UzMiBwYXJhbTsKPiArCj4gKwlfX3U2NCBk YXRhOwo+ICt9Owo+ICsKPiAgIC8qKgo+ICAgICogQ29udGV4dCBTU0VVIHByb2dyYW1taW5nCj4g ICAgKgo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=