From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup Date: Wed, 20 Jul 2016 14:38:19 +0300 Message-ID: <1469014699.4964.6.camel@linux.intel.com> References: <1469005202-9659-1-git-send-email-chris@chris-wilson.co.uk> <1469005202-9659-4-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 8A08E895C4 for ; Wed, 20 Jul 2016 11:38:22 +0000 (UTC) In-Reply-To: <1469005202-9659-4-git-send-email-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24ga2UsIDIwMTYtMDctMjAgYXQgMDk6NTkgKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiBG b3Igc3ltbWV0cnkgd2l0aCBhIGZvcnRoY29taW5nIGk5MTVfZ2VtX29iamVjdF9nZXQoKSBhbmQK PiBpOTE1X2dlbV9vYmplY3RfcHUoKS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24g PGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiAtLS0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmjCoMKgwqDCoMKgwqDCoMKgfCAyMCArKysrKysrKysrKy0KPiDCoGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtLmPCoMKgwqDCoMKgwqDCoMKgfCA1OCArKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tCj4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV90 aWxpbmcuYyB8wqDCoDggKystLS0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuY8KgwqDCoHzCoMKgNCArLS0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX292ZXJs YXkuY8KgwqDCoHzCoMKgNSArKy0KPiDCoDUgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygr KSwgMzkgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gaW5kZXggMjEz MWU3ZjFlNTdhLi40N2YyNDRmOWM2NGUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBA QCAtMjI4Niw3ICsyMjg2LDI1IEBAIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0IHsKPiDCoAkJ fSB1c2VycHRyOwo+IMKgCX07Cj4gwqB9Owo+IC0jZGVmaW5lIHRvX2ludGVsX2JvKHgpIGNvbnRh aW5lcl9vZih4LCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCwgYmFzZSkKPiArCj4gK3N0YXRp YyBpbmxpbmUgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgo+ICt0b19pbnRlbF9ibyhzdHJ1 Y3QgZHJtX2dlbV9vYmplY3QgKmdlbSkKPiArewo+ICsJLyogQXNzZXJ0IHRoYXQgdG9faW50ZWxf Ym8oTlVMTCkgPT0gTlVMTCAqLwo+ICsJQlVJTERfQlVHX09OKG9mZnNldG9mKHN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0LCBiYXNlKSk7Cj4gKwo+ICsJcmV0dXJuIGNvbnRhaW5lcl9vZihnZW0s IHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0LCBiYXNlKTsKPiArfQo+ICsKPiArc3RhdGljIGlu bGluZSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCj4gK2k5MTVfZ2VtX29iamVjdF9sb29r dXAoc3RydWN0IGRybV9maWxlICpmaWxlLCB1MzIgaGFuZGxlKQo+ICt7Cj4gKwlyZXR1cm4gdG9f aW50ZWxfYm8oZHJtX2dlbV9vYmplY3RfbG9va3VwKGZpbGUsIGhhbmRsZSkpOwo+ICt9Cj4gKwo+ ICtfX2RlcHJlY2F0ZWQKPiArZXh0ZXJuIHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqCgpfZGVwcmVj YXRlZCBzZWVtcyB0byBiZSBwbGFjZWQganVzdCBiZWZvcmUgdGhlIGZ1bmN0aW9uIG5hbWUgZWxz ZXdoZXJlLApmb3IgZWFzaWVyIHNwb3R0aW5nLCBJIGd1ZXNzLiBTbyBsZXRzIHN0aWNrIHRvIGl0 LgoKQWxzbyBJJ20gbGl0dGxlIHdhcnkgYWJvdXQgZG9pbmcgdGhpcyBkZXByZWNhdGUgYW5vdGhl ciBmdW5jdGlvbiB3aGVuCndlIGludHJvZHVjZSBhIG5ldyBvbmUsIGVzcGVjaWFsbHkgaGVhZGVy IGxldmVsLCBidXQgSSBndWVzcyB0aGVyZSBpcwpubyBzY2VuYXJpbyB3aGVuIHNvbWVib2R5IHdv dWxkIGxpa2UgdG8gaW5jbHVkZSBpOTE1X2Rydi5oIGFuZCB1c2UKZHJtX2dlbV9vYmplY3RfbG9v a3VwLi4uCgo+ICtkcm1fZ2VtX29iamVjdF9sb29rdXAoc3RydWN0IGRybV9maWxlICpmaWxlLCB1 MzIgaGFuZGxlKTsKPiDCoAo+IMKgc3RhdGljIGlubGluZSBib29sCj4gwqBpOTE1X2dlbV9vYmpl Y3RfaGFzX3N0cnVjdF9wYWdlKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmop Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gaW5kZXggZDgyNWRiN2I3NjNkLi45NzA0OTY0MTkw OTggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiBAQCAtODY0LDggKzg2NCw4IEBAIGk5 MTVfZ2VtX3ByZWFkX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4g wqAJaWYgKHJldCkKPiDCoAkJcmV0dXJuIHJldDsKPiDCoAo+IC0Jb2JqID0gdG9faW50ZWxfYm8o ZHJtX2dlbV9vYmplY3RfbG9va3VwKGZpbGUsIGFyZ3MtPmhhbmRsZSkpOwo+IC0JaWYgKCZvYmot PmJhc2UgPT0gTlVMTCkgewo+ICsJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2xvb2t1cChmaWxlLCBh cmdzLT5oYW5kbGUpOwo+ICsJaWYgKCFvYmopIHsKPiDCoAkJcmV0ID0gLUVOT0VOVDsKPiDCoAkJ Z290byB1bmxvY2s7Cj4gwqAJfQo+IEBAIC0xMjgwLDggKzEyODAsOCBAQCBpOTE1X2dlbV9wd3Jp dGVfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiDCoAlpZiAocmV0 KQo+IMKgCQlnb3RvIHB1dF9ycG07Cj4gwqAKPiAtCW9iaiA9IHRvX2ludGVsX2JvKGRybV9nZW1f b2JqZWN0X2xvb2t1cChmaWxlLCBhcmdzLT5oYW5kbGUpKTsKPiAtCWlmICgmb2JqLT5iYXNlID09 IE5VTEwpIHsKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9sb29rdXAoZmlsZSwgYXJncy0+aGFu ZGxlKTsKPiArCWlmICghb2JqKSB7Cj4gwqAJCXJldCA9IC1FTk9FTlQ7Cj4gwqAJCWdvdG8gdW5s b2NrOwo+IMKgCX0KPiBAQCAtMTQ5Nyw4ICsxNDk3LDggQEAgaTkxNV9nZW1fc2V0X2RvbWFpbl9p b2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+IMKgCWlmIChyZXQpCj4g wqAJCXJldHVybiByZXQ7Cj4gwqAKPiAtCW9iaiA9IHRvX2ludGVsX2JvKGRybV9nZW1fb2JqZWN0 X2xvb2t1cChmaWxlLCBhcmdzLT5oYW5kbGUpKTsKPiAtCWlmICgmb2JqLT5iYXNlID09IE5VTEwp IHsKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9sb29rdXAoZmlsZSwgYXJncy0+aGFuZGxlKTsK PiArCWlmICghb2JqKSB7Cj4gwqAJCXJldCA9IC1FTk9FTlQ7Cj4gwqAJCWdvdG8gdW5sb2NrOwo+ IMKgCX0KPiBAQCAtMTU0Niw4ICsxNTQ2LDggQEAgaTkxNV9nZW1fc3dfZmluaXNoX2lvY3RsKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gwqAJaWYgKHJldCkKPiDCoAkJcmV0 dXJuIHJldDsKPiDCoAo+IC0Jb2JqID0gdG9faW50ZWxfYm8oZHJtX2dlbV9vYmplY3RfbG9va3Vw KGZpbGUsIGFyZ3MtPmhhbmRsZSkpOwo+IC0JaWYgKCZvYmotPmJhc2UgPT0gTlVMTCkgewo+ICsJ b2JqID0gaTkxNV9nZW1fb2JqZWN0X2xvb2t1cChmaWxlLCBhcmdzLT5oYW5kbGUpOwo+ICsJaWYg KCFvYmopIHsKPiDCoAkJcmV0ID0gLUVOT0VOVDsKPiDCoAkJZ290byB1bmxvY2s7Cj4gwqAJfQo+ IEBAIC0xNTg3LDcgKzE1ODcsNyBAQCBpOTE1X2dlbV9tbWFwX2lvY3RsKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gwqAJCcKgwqDCoMKgc3RydWN0IGRybV9maWxlICpmaWxl KQo+IMKgewo+IMKgCXN0cnVjdCBkcm1faTkxNV9nZW1fbW1hcCAqYXJncyA9IGRhdGE7Cj4gLQlz dHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iajsKPiArCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmo7Cj4gwqAJdW5zaWduZWQgbG9uZyBhZGRyOwo+IMKgCj4gwqAJaWYgKGFyZ3MtPmZsYWdz ICYgfihJOTE1X01NQVBfV0MpKQo+IEBAIC0xNTk2LDE5ICsxNTk2LDE5IEBAIGk5MTVfZ2VtX21t YXBfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiDCoAlpZiAoYXJn cy0+ZmxhZ3MgJiBJOTE1X01NQVBfV0MgJiYgIWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9QQVQp KQo+IMKgCQlyZXR1cm4gLUVOT0RFVjsKPiDCoAo+IC0Jb2JqID0gZHJtX2dlbV9vYmplY3RfbG9v a3VwKGZpbGUsIGFyZ3MtPmhhbmRsZSk7Cj4gLQlpZiAob2JqID09IE5VTEwpCj4gKwlvYmogPSBp OTE1X2dlbV9vYmplY3RfbG9va3VwKGZpbGUsIGFyZ3MtPmhhbmRsZSk7Cj4gKwlpZiAoIW9iaikK PiDCoAkJcmV0dXJuIC1FTk9FTlQ7Cj4gwqAKPiDCoAkvKiBwcmltZSBvYmplY3RzIGhhdmUgbm8g YmFja2luZyBmaWxwIHRvIEdFTSBtbWFwCj4gwqAJwqAqIHBhZ2VzIGZyb20uCj4gwqAJwqAqLwo+ IC0JaWYgKCFvYmotPmZpbHApIHsKPiAtCQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxv Y2tlZChvYmopOwo+ICsJaWYgKCFvYmotPmJhc2UuZmlscCkgewo+ICsJCWRybV9nZW1fb2JqZWN0 X3VucmVmZXJlbmNlX3VubG9ja2VkKCZvYmotPmJhc2UpOwo+IMKgCQlyZXR1cm4gLUVJTlZBTDsK PiDCoAl9Cj4gwqAKPiAtCWFkZHIgPSB2bV9tbWFwKG9iai0+ZmlscCwgMCwgYXJncy0+c2l6ZSwK PiArCWFkZHIgPSB2bV9tbWFwKG9iai0+YmFzZS5maWxwLCAwLCBhcmdzLT5zaXplLAo+IMKgCQnC oMKgwqDCoMKgwqDCoFBST1RfUkVBRCB8IFBST1RfV1JJVEUsIE1BUF9TSEFSRUQsCj4gwqAJCcKg wqDCoMKgwqDCoMKgYXJncy0+b2Zmc2V0KTsKPiDCoAlpZiAoYXJncy0+ZmxhZ3MgJiBJOTE1X01N QVBfV0MpIHsKPiBAQCAtMTYxNiw3ICsxNjE2LDcgQEAgaTkxNV9nZW1fbW1hcF9pb2N0bChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+IMKgCQlzdHJ1Y3Qgdm1fYXJlYV9zdHJ1 Y3QgKnZtYTsKPiDCoAo+IMKgCQlpZiAoZG93bl93cml0ZV9raWxsYWJsZSgmbW0tPm1tYXBfc2Vt KSkgewo+IC0JCQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChvYmopOwo+ICsJ CQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZCgmb2JqLT5iYXNlKTsKPiDCoAkJ CXJldHVybiAtRUlOVFI7Cj4gwqAJCX0KPiDCoAkJdm1hID0gZmluZF92bWEobW0sIGFkZHIpOwo+ IEBAIC0xNjI4LDkgKzE2MjgsOSBAQCBpOTE1X2dlbV9tbWFwX2lvY3RsKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gwqAJCXVwX3dyaXRlKCZtbS0+bW1hcF9zZW0pOwo+IMKg Cj4gwqAJCS8qIFRoaXMgbWF5IHJhY2UsIGJ1dCB0aGF0J3Mgb2ssIGl0IG9ubHkgZ2V0cyBzZXQg Ki8KPiAtCQlXUklURV9PTkNFKHRvX2ludGVsX2JvKG9iaiktPmhhc193Y19tbWFwLCB0cnVlKTsK PiArCQlXUklURV9PTkNFKG9iai0+aGFzX3djX21tYXAsIHRydWUpOwo+IMKgCX0KPiAtCWRybV9n ZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKG9iaik7Cj4gKwlkcm1fZ2VtX29iamVjdF91 bnJlZmVyZW5jZV91bmxvY2tlZCgmb2JqLT5iYXNlKTsKPiDCoAlpZiAoSVNfRVJSKCh2b2lkICop YWRkcikpCj4gwqAJCXJldHVybiBhZGRyOwo+IMKgCj4gQEAgLTE5NjgsOCArMTk2OCw4IEBAIGk5 MTVfZ2VtX21tYXBfZ3R0KHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKPiDCoAlpZiAocmV0KQo+IMKg CQlyZXR1cm4gcmV0Owo+IMKgCj4gLQlvYmogPSB0b19pbnRlbF9ibyhkcm1fZ2VtX29iamVjdF9s b29rdXAoZmlsZSwgaGFuZGxlKSk7Cj4gLQlpZiAoJm9iai0+YmFzZSA9PSBOVUxMKSB7Cj4gKwlv YmogPSBpOTE1X2dlbV9vYmplY3RfbG9va3VwKGZpbGUsIGhhbmRsZSk7Cj4gKwlpZiAoIW9iaikg ewo+IMKgCQlyZXQgPSAtRU5PRU5UOwo+IMKgCQlnb3RvIHVubG9jazsKPiDCoAl9Cj4gQEAgLTI3 OTIsOCArMjc5Miw4IEBAIGk5MTVfZ2VtX3dhaXRfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgdm9pZCAqZGF0YSwgc3RydWN0IGRybV9maWxlICpmaWxlKQo+IMKgCWlmIChyZXQpCj4gwqAJ CXJldHVybiByZXQ7Cj4gwqAKPiAtCW9iaiA9IHRvX2ludGVsX2JvKGRybV9nZW1fb2JqZWN0X2xv b2t1cChmaWxlLCBhcmdzLT5ib19oYW5kbGUpKTsKPiAtCWlmICgmb2JqLT5iYXNlID09IE5VTEwp IHsKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9sb29rdXAoZmlsZSwgYXJncy0+Ym9faGFuZGxl KTsKPiArCWlmICghb2JqKSB7Cj4gwqAJCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgp Owo+IMKgCQlyZXR1cm4gLUVOT0VOVDsKPiDCoAl9Cj4gQEAgLTM1OTYsOCArMzU5Niw4IEBAIGlu dCBpOTE1X2dlbV9nZXRfY2FjaGluZ19pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lk ICpkYXRhLAo+IMKgCXN0cnVjdCBkcm1faTkxNV9nZW1fY2FjaGluZyAqYXJncyA9IGRhdGE7Cj4g wqAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKPiDCoAo+IC0Jb2JqID0gdG9faW50 ZWxfYm8oZHJtX2dlbV9vYmplY3RfbG9va3VwKGZpbGUsIGFyZ3MtPmhhbmRsZSkpOwo+IC0JaWYg KCZvYmotPmJhc2UgPT0gTlVMTCkKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9sb29rdXAoZmls ZSwgYXJncy0+aGFuZGxlKTsKPiArCWlmICghb2JqKQo+IMKgCQlyZXR1cm4gLUVOT0VOVDsKPiDC oAo+IMKgCXN3aXRjaCAob2JqLT5jYWNoZV9sZXZlbCkgewo+IEBAIC0zNjU3LDggKzM2NTcsOCBA QCBpbnQgaTkxNV9nZW1fc2V0X2NhY2hpbmdfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwg dm9pZCAqZGF0YSwKPiDCoAlpZiAocmV0KQo+IMKgCQlnb3RvIHJwbV9wdXQ7Cj4gwqAKPiAtCW9i aiA9IHRvX2ludGVsX2JvKGRybV9nZW1fb2JqZWN0X2xvb2t1cChmaWxlLCBhcmdzLT5oYW5kbGUp KTsKPiAtCWlmICgmb2JqLT5iYXNlID09IE5VTEwpIHsKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVj dF9sb29rdXAoZmlsZSwgYXJncy0+aGFuZGxlKTsKPiArCWlmICghb2JqKSB7Cj4gwqAJCXJldCA9 IC1FTk9FTlQ7Cj4gwqAJCWdvdG8gdW5sb2NrOwo+IMKgCX0KPiBAQCAtNDAyNiw4ICs0MDI2LDgg QEAgaTkxNV9nZW1fYnVzeV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRh LAo+IMKgCWlmIChyZXQpCj4gwqAJCXJldHVybiByZXQ7Cj4gwqAKPiAtCW9iaiA9IHRvX2ludGVs X2JvKGRybV9nZW1fb2JqZWN0X2xvb2t1cChmaWxlLCBhcmdzLT5oYW5kbGUpKTsKPiAtCWlmICgm b2JqLT5iYXNlID09IE5VTEwpIHsKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9sb29rdXAoZmls ZSwgYXJncy0+aGFuZGxlKTsKPiArCWlmICghb2JqKSB7Cj4gwqAJCXJldCA9IC1FTk9FTlQ7Cj4g wqAJCWdvdG8gdW5sb2NrOwo+IMKgCX0KPiBAQCAtNDA5MSw4ICs0MDkxLDggQEAgaTkxNV9nZW1f bWFkdmlzZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+IMKgCWlm IChyZXQpCj4gwqAJCXJldHVybiByZXQ7Cj4gwqAKPiAtCW9iaiA9IHRvX2ludGVsX2JvKGRybV9n ZW1fb2JqZWN0X2xvb2t1cChmaWxlX3ByaXYsIGFyZ3MtPmhhbmRsZSkpOwo+IC0JaWYgKCZvYmot PmJhc2UgPT0gTlVMTCkgewo+ICsJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2xvb2t1cChmaWxlX3By aXYsIGFyZ3MtPmhhbmRsZSk7Cj4gKwlpZiAoIW9iaikgewo+IMKgCQlyZXQgPSAtRU5PRU5UOwo+ IMKgCQlnb3RvIHVubG9jazsKPiDCoAl9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX3RpbGluZy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fdGls aW5nLmMKPiBpbmRleCA4MDMwMTk5NzMxZGIuLjQ2ZTgwZjMwYWZjZCAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV90aWxpbmcuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jCj4gQEAgLTE2Niw4ICsxNjYsOCBAQCBpOTE1X2dl bV9zZXRfdGlsaW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gwqAJc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKPiDCoAlpbnQgcmV0ID0gMDsKPiDCoAo+IC0J b2JqID0gdG9faW50ZWxfYm8oZHJtX2dlbV9vYmplY3RfbG9va3VwKGZpbGUsIGFyZ3MtPmhhbmRs ZSkpOwo+IC0JaWYgKCZvYmotPmJhc2UgPT0gTlVMTCkKPiArCW9iaiA9IGk5MTVfZ2VtX29iamVj dF9sb29rdXAoZmlsZSwgYXJncy0+aGFuZGxlKTsKPiArCWlmICghb2JqKQo+IMKgCQlyZXR1cm4g LUVOT0VOVDsKPiDCoAo+IMKgCWlmICghaTkxNV90aWxpbmdfb2soZGV2LAo+IEBAIC0yOTcsOCAr Mjk3LDggQEAgaTkxNV9nZW1fZ2V0X3RpbGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lk ICpkYXRhLAo+IMKgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUo ZGV2KTsKPiDCoAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwo+IMKgCj4gLQlvYmog PSB0b19pbnRlbF9ibyhkcm1fZ2VtX29iamVjdF9sb29rdXAoZmlsZSwgYXJncy0+aGFuZGxlKSk7 Cj4gLQlpZiAoJm9iai0+YmFzZSA9PSBOVUxMKQo+ICsJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2xv b2t1cChmaWxlLCBhcmdzLT5oYW5kbGUpOwo+ICsJaWYgKCFvYmopCj4gwqAJCXJldHVybiAtRU5P RU5UOwo+IMKgCj4gwqAJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAyZjdhZjg1NWE1ODUuLjc3ZDMyMDU4NDQ3 OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtMTUwODksOCAr MTUwODksOCBAQCBpbnRlbF91c2VyX2ZyYW1lYnVmZmVyX2NyZWF0ZShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+IMKgCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7Cj4gwqAJc3RydWN0 IGRybV9tb2RlX2ZiX2NtZDIgbW9kZV9jbWQgPSAqdXNlcl9tb2RlX2NtZDsKPiDCoAo+IC0Jb2Jq ID0gdG9faW50ZWxfYm8oZHJtX2dlbV9vYmplY3RfbG9va3VwKGZpbHAsIG1vZGVfY21kLmhhbmRs ZXNbMF0pKTsKPiAtCWlmICgmb2JqLT5iYXNlID09IE5VTEwpCj4gKwlvYmogPSBpOTE1X2dlbV9v YmplY3RfbG9va3VwKGZpbHAsIG1vZGVfY21kLmhhbmRsZXNbMF0pOwo+ICsJaWYgKCFvYmopCj4g wqAJCXJldHVybiBFUlJfUFRSKC1FTk9FTlQpOwo+IMKgCj4gwqAJZmIgPSBpbnRlbF9mcmFtZWJ1 ZmZlcl9jcmVhdGUoZGV2LCAmbW9kZV9jbWQsIG9iaik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX292ZXJsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X292ZXJsYXkuYwo+IGluZGV4IDMyMTJkODgwNmI1YS4uNWNhNzk3YjAxY2NiIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX292ZXJsYXkuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX292ZXJsYXkuYwo+IEBAIC0xMTIyLDkgKzExMjIsOCBAQCBpbnQg aW50ZWxfb3ZlcmxheV9wdXRfaW1hZ2VfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwKPiDCoAl9Cj4gwqAJY3J0YyA9IHRvX2ludGVsX2NydGMoZHJtbW9kZV9jcnRjKTsK PiDCoAo+IC0JbmV3X2JvID0gdG9faW50ZWxfYm8oZHJtX2dlbV9vYmplY3RfbG9va3VwKGZpbGVf cHJpdiwKPiAtCQkJCQkJwqDCoMKgcHV0X2ltYWdlX3JlYy0+Ym9faGFuZGxlKSk7Cj4gLQlpZiAo Jm5ld19iby0+YmFzZSA9PSBOVUxMKSB7Cj4gKwluZXdfYm8gPSBpOTE1X2dlbV9vYmplY3RfbG9v a3VwKGZpbGVfcHJpdiwgcHV0X2ltYWdlX3JlYy0+Ym9faGFuZGxlKTsKPiArCWlmICghbmV3X2Jv KSB7Cj4gwqAJCXJldCA9IC1FTk9FTlQ7Cj4gwqAJCWdvdG8gb3V0X2ZyZWU7Cj4gwqAJfQoKTEdU TSwgdW5sZXNzIEkgbWlzc2VkIHNvbWUgbm9uLW1lY2hhbmljIGNoYW5nZXMuCgpSZXZpZXdlZC1i eTogSm9vbmFzIExhaHRpbmVuIDxqb29uYXMubGFodGluZW5AbGludXguaW50ZWwuY29tPgoKUmVn YXJkcywgSm9vbmFzCi0tIApKb29uYXMgTGFodGluZW4KT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBD ZW50ZXIKSW50ZWwgQ29ycG9yYXRpb24KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==