From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kumar, Mahesh" Subject: Re: [PATCH 09/10] drm/crc: Cleanup crtc_crc_open function Date: Tue, 26 Jun 2018 12:03:08 +0530 Message-ID: <27bbd328-ca14-ea8f-b3e7-b20a6db4add1@intel.com> References: <20180626062259.15563-1-mahesh1.kumar@intel.com> <20180626062259.15563-10-mahesh1.kumar@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180626062259.15563-10-mahesh1.kumar@intel.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org Cc: laurent.pinchart+renesas@ideasonboard.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org Q2M6IExhdXJlbnQgUGluY2hhcnQgPGxhdXJlbnQucGluY2hhcnQrcmVuZXNhc0BpZGVhc29uYm9h cmQuY29tPgoKCk9uIDYvMjYvMjAxOCAxMTo1MiBBTSwgTWFoZXNoIEt1bWFyIHdyb3RlOgo+IFRo aXMgcGF0Y2ggbWFrZSBjaGFuZ2VzIHRvIGFsbG9jYXRlIGNyYy1lbnRyaWVzIGJ1ZmZlciBiZWZv cmUKPiBlbmFibGluZyBDUkMgZ2VuZXJhdGlvbi4KPiBJdCBtb3ZlcyBhbGwgdGhlIGZhaWx1cmUg Y2hlY2sgZWFybHkgaW4gdGhlIGZ1bmN0aW9uIGJlZm9yZSBzZXR0aW5nCj4gdGhlIHNvdXJjZSBv ciBtZW1vcnkgYWxsb2NhdGlvbi4KPiBOb3cgc2V0X2NyY19zb3VyY2UgdGFrZXMgb25seSB0d28g dmFyaWFibGUgaW5wdXQsIHZhbHVlc19jbnQgd2UKPiBhbHJlYWR5IGdldHMgYXMgcGFydCBvZiB2 ZXJpZnlfY3JjX3NvdXJjZS4KPgo+IFNpZ25lZC1vZmYtYnk6IE1haGVzaCBLdW1hciA8bWFoZXNo MS5rdW1hckBpbnRlbC5jb20+Cj4gQ2M6IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK PiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2Rt LmggIHwgIDMgKy0KPiAgIC4uLi9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVf ZG1fY3JjLmMgIHwgIDQgKy0KPiAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fZGVidWdmc19jcmMuYyAg ICAgICAgICAgICAgICAgIHwgNTIgKysrKysrKysrLS0tLS0tLS0tLS0tLQo+ICAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYyAgICAgICAgICAgICAgfCAgNCArLQo+ ICAgZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9jcnRjLmMgICAgICAgICAgICAgfCAg NSArLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMgICAg ICAgIHwgIDYgKy0tCj4gICBpbmNsdWRlL2RybS9kcm1fY3J0Yy5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAzICstCj4gICA4IGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyks IDUwIGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkv YW1kZ3B1X2RtL2FtZGdwdV9kbS5oCj4gaW5kZXggNzliMGExNjY1MmI5Li5hN2E1NTUxZmVlMWIg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRn cHVfZG0uaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1k Z3B1X2RtLmgKPiBAQCAtMjYxLDggKzI2MSw3IEBAIGFtZGdwdV9kbV9yZW1vdmVfc2lua19mcm9t X2ZyZWVzeW5jX21vZHVsZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKPiAgIAo+ ICAgLyogYW1kZ3B1X2RtX2NyYy5jICovCj4gICAjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4gLWlu dCBhbWRncHVfZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNv bnN0IGNoYXIgKnNyY19uYW1lLAo+IC0JCQkJICBzaXplX3QgKnZhbHVlc19jbnQpOwo+ICtpbnQg YW1kZ3B1X2RtX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25z dCBjaGFyICpzcmNfbmFtZSk7Cj4gICBpbnQgYW1kZ3B1X2RtX2NydGNfdmVyaWZ5X2NyY19zb3Vy Y2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAgCQkJCSAgICAgY29uc3QgY2hhciAqc3JjX25h bWUsCj4gICAJCQkJICAgICBzaXplX3QgKnZhbHVlc19jbnQpOwo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX2NyYy5jCj4gaW5kZXgg ZGZjY2E1OTRkNTJhLi5lN2FkNTI4ZjU4NTMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fY3JjLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYwo+IEBAIC02Miw4ICs2 Miw3IEBAIGFtZGdwdV9kbV9jcnRjX3ZlcmlmeV9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywgY29uc3QgY2hhciAqc3JjX25hbWUsCj4gICAJcmV0dXJuIDA7Cj4gICB9Cj4gICAKPiAt aW50IGFtZGdwdV9kbV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywg Y29uc3QgY2hhciAqc3JjX25hbWUsCj4gLQkJCSAgIHNpemVfdCAqdmFsdWVzX2NudCkKPiAraW50 IGFtZGdwdV9kbV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29u c3QgY2hhciAqc3JjX25hbWUpCj4gICB7Cj4gICAJc3RydWN0IGRtX2NydGNfc3RhdGUgKmNydGNf c3RhdGUgPSB0b19kbV9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKPiAgIAlzdHJ1Y3QgZGNfc3Ry ZWFtX3N0YXRlICpzdHJlYW1fc3RhdGUgPSBjcnRjX3N0YXRlLT5zdHJlYW07Cj4gQEAgLTk5LDcg Kzk4LDYgQEAgaW50IGFtZGdwdV9kbV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YywgY29uc3QgY2hhciAqc3JjX25hbWUsCj4gICAJCQlyZXR1cm4gLUVJTlZBTDsKPiAg IAl9Cj4gICAKPiAtCSp2YWx1ZXNfY250ID0gMzsKPiAgIAkvKiBSZXNldCBjcmNfc2tpcHBlZCBv biBkbSBzdGF0ZSAqLwo+ICAgCWNydGNfc3RhdGUtPmNyY19za2lwX2NvdW50ID0gMDsKPiAgIAly ZXR1cm4gMDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5j IGIvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jCj4gaW5kZXggMjc1MWQxMjQzODdk Li44MzRiYzdlZTU1NTAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2Zz X2NyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jCj4gQEAgLTEw OSwxMSArMTA5LDkgQEAgc3RhdGljIHNzaXplX3QgY3JjX2NvbnRyb2xfd3JpdGUoc3RydWN0IGZp bGUgKmZpbGUsIGNvbnN0IGNoYXIgX191c2VyICp1YnVmLAo+ICAgCWlmIChzb3VyY2VbbGVuXSA9 PSAnXG4nKQo+ICAgCQlzb3VyY2VbbGVuXSA9ICdcMCc7Cj4gICAKPiAtCWlmIChjcnRjLT5mdW5j cy0+dmVyaWZ5X2NyY19zb3VyY2UpIHsKPiAtCQlyZXQgPSBjcnRjLT5mdW5jcy0+dmVyaWZ5X2Ny Y19zb3VyY2UoY3J0Yywgc291cmNlLCAmdmFsdWVzX2NudCk7Cj4gLQkJaWYgKHJldCkKPiAtCQkJ cmV0dXJuIHJldDsKPiAtCX0KPiArCXJldCA9IGNydGMtPmZ1bmNzLT52ZXJpZnlfY3JjX3NvdXJj ZShjcnRjLCBzb3VyY2UsICZ2YWx1ZXNfY250KTsKPiArCWlmIChyZXQpCj4gKwkJcmV0dXJuIHJl dDsKPiAgIAo+ICAgCXNwaW5fbG9ja19pcnEoJmNyYy0+bG9jayk7Cj4gICAKPiBAQCAtMTc4LDEy ICsxNzYsMTUgQEAgc3RhdGljIGludCBjcnRjX2NyY19vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUs IHN0cnVjdCBmaWxlICpmaWxlcCkKPiAgIAkJCXJldHVybiByZXQ7Cj4gICAJfQo+ICAgCj4gLQlp ZiAoY3J0Yy0+ZnVuY3MtPnZlcmlmeV9jcmNfc291cmNlKSB7Cj4gLQkJcmV0ID0gY3J0Yy0+ZnVu Y3MtPnZlcmlmeV9jcmNfc291cmNlKGNydGMsIGNyYy0+c291cmNlLAo+IC0JCQkJCQkgICAgICZ2 YWx1ZXNfY250KTsKPiAtCQlpZiAocmV0KQo+IC0JCQlyZXR1cm4gcmV0Owo+IC0JfQo+ICsJcmV0 ID0gY3J0Yy0+ZnVuY3MtPnZlcmlmeV9jcmNfc291cmNlKGNydGMsIGNyYy0+c291cmNlLCAmdmFs dWVzX2NudCk7Cj4gKwlpZiAocmV0KQo+ICsJCXJldHVybiByZXQ7Cj4gKwo+ICsJaWYgKFdBUk5f T04odmFsdWVzX2NudCA+IERSTV9NQVhfQ1JDX05SKSkKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiAr Cj4gKwlpZiAoV0FSTl9PTih2YWx1ZXNfY250ID09IDApKQo+ICsJCXJldHVybiAtRUlOVkFMOwo+ ICAgCj4gICAJc3Bpbl9sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAgIAlpZiAoIWNyYy0+b3BlbmVk KQo+IEBAIC0xOTUsMzAgKzE5NiwyMiBAQCBzdGF0aWMgaW50IGNydGNfY3JjX29wZW4oc3RydWN0 IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbGVwKQo+ICAgCWlmIChyZXQpCj4gICAJCXJl dHVybiByZXQ7Cj4gICAKPiAtCXJldCA9IGNydGMtPmZ1bmNzLT5zZXRfY3JjX3NvdXJjZShjcnRj LCBjcmMtPnNvdXJjZSwgJnZhbHVlc19jbnQpOwo+IC0JaWYgKHJldCkKPiAtCQlnb3RvIGVycjsK PiAtCj4gLQlpZiAoV0FSTl9PTih2YWx1ZXNfY250ID4gRFJNX01BWF9DUkNfTlIpKSB7Cj4gLQkJ cmV0ID0gLUVJTlZBTDsKPiAtCQlnb3RvIGVycl9kaXNhYmxlOwo+IC0JfQo+IC0KPiAtCWlmIChX QVJOX09OKHZhbHVlc19jbnQgPT0gMCkpIHsKPiAtCQlyZXQgPSAtRUlOVkFMOwo+IC0JCWdvdG8g ZXJyX2Rpc2FibGU7Cj4gLQl9Cj4gLQo+ICAgCWVudHJpZXMgPSBrY2FsbG9jKERSTV9DUkNfRU5U UklFU19OUiwgc2l6ZW9mKCplbnRyaWVzKSwgR0ZQX0tFUk5FTCk7Cj4gICAJaWYgKCFlbnRyaWVz KSB7Cj4gICAJCXJldCA9IC1FTk9NRU07Cj4gLQkJZ290byBlcnJfZGlzYWJsZTsKPiArCQlnb3Rv IGVycjsKPiAgIAl9Cj4gICAKPiAgIAlzcGluX2xvY2tfaXJxKCZjcmMtPmxvY2spOwo+ICAgCWNy Yy0+ZW50cmllcyA9IGVudHJpZXM7Cj4gICAJY3JjLT52YWx1ZXNfY250ID0gdmFsdWVzX2NudDsK PiArCXNwaW5fdW5sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAgIAo+ICsJcmV0ID0gY3J0Yy0+ZnVu Y3MtPnNldF9jcmNfc291cmNlKGNydGMsIGNyYy0+c291cmNlKTsKPiArCWlmIChyZXQpCj4gKwkJ Z290byBlcnI7Cj4gKwo+ICsJc3Bpbl9sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAgIAkvKgo+ICAg CSAqIE9ubHkgcmV0dXJuIG9uY2Ugd2UgZ290IGEgZmlyc3QgZnJhbWUsIHNvIHVzZXJzcGFjZSBk b2Vzbid0IGhhdmUgdG8KPiAgIAkgKiBndWVzcyB3aGVuIHRoaXMgcGFydGljdWxhciBwaWVjZSBv ZiBIVyB3aWxsIGJlIHJlYWR5IHRvIHN0YXJ0Cj4gQEAgLTIzNSw3ICsyMjgsNyBAQCBzdGF0aWMg aW50IGNydGNfY3JjX29wZW4oc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbGVw KQo+ICAgCXJldHVybiAwOwo+ICAgCj4gICBlcnJfZGlzYWJsZToKPiAtCWNydGMtPmZ1bmNzLT5z ZXRfY3JjX3NvdXJjZShjcnRjLCBOVUxMLCAmdmFsdWVzX2NudCk7Cj4gKwljcnRjLT5mdW5jcy0+ c2V0X2NyY19zb3VyY2UoY3J0YywgTlVMTCk7Cj4gICBlcnI6Cj4gICAJc3Bpbl9sb2NrX2lycSgm Y3JjLT5sb2NrKTsKPiAgIAljcnRjX2NyY19jbGVhbnVwKGNyYyk7Cj4gQEAgLTI0Nyw5ICsyNDAs OCBAQCBzdGF0aWMgaW50IGNydGNfY3JjX3JlbGVhc2Uoc3RydWN0IGlub2RlICppbm9kZSwgc3Ry dWN0IGZpbGUgKmZpbGVwKQo+ICAgewo+ICAgCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IGZpbGVw LT5mX2lub2RlLT5pX3ByaXZhdGU7Cj4gICAJc3RydWN0IGRybV9jcnRjX2NyYyAqY3JjID0gJmNy dGMtPmNyYzsKPiAtCXNpemVfdCB2YWx1ZXNfY250Owo+ICAgCj4gLQljcnRjLT5mdW5jcy0+c2V0 X2NyY19zb3VyY2UoY3J0YywgTlVMTCwgJnZhbHVlc19jbnQpOwo+ICsJY3J0Yy0+ZnVuY3MtPnNl dF9jcmNfc291cmNlKGNydGMsIE5VTEwpOwo+ICAgCj4gICAJc3Bpbl9sb2NrX2lycSgmY3JjLT5s b2NrKTsKPiAgIAljcnRjX2NyY19jbGVhbnVwKGNyYyk7Cj4gQEAgLTM2Myw3ICszNTUsNyBAQCBp bnQgZHJtX2RlYnVnZnNfY3J0Y19jcmNfYWRkKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgIHsK PiAgIAlzdHJ1Y3QgZGVudHJ5ICpjcmNfZW50LCAqZW50Owo+ICAgCj4gLQlpZiAoIWNydGMtPmZ1 bmNzLT5zZXRfY3JjX3NvdXJjZSkKPiArCWlmICghY3J0Yy0+ZnVuY3MtPnNldF9jcmNfc291cmNl IHx8ICFjcnRjLT5mdW5jcy0+dmVyaWZ5X2NyY19zb3VyY2UpCj4gICAJCXJldHVybiAwOwo+ICAg Cj4gICAJY3JjX2VudCA9IGRlYnVnZnNfY3JlYXRlX2RpcigiY3JjIiwgY3J0Yy0+ZGVidWdmc19l bnRyeSk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBpbmRleCAxNzczNWNhZmRkNzIuLmJh M2YxYzVlNmExZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTIxNTIsOCAr MjE1Miw3IEBAIHZvaWQgbHNwY29uX3dhaXRfcGNvbl9tb2RlKHN0cnVjdCBpbnRlbF9sc3Bjb24g KmxzcGNvbik7Cj4gICAvKiBpbnRlbF9waXBlX2NyYy5jICovCj4gICBpbnQgaW50ZWxfcGlwZV9j cmNfY3JlYXRlKHN0cnVjdCBkcm1fbWlub3IgKm1pbm9yKTsKPiAgICNpZmRlZiBDT05GSUdfREVC VUdfRlMKPiAtaW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpj cnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwKPiAtCQkJICAgICAgc2l6ZV90ICp2YWx1ZXNf Y250KTsKPiAraW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpj cnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSk7Cj4gICBpbnQgaW50ZWxfY3J0Y192ZXJpZnlf Y3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gICAJCQkJIGNvbnN0IGNoYXIgKnNv dXJjZV9uYW1lLCBzaXplX3QgKnZhbHVlc19jbnQpOwo+ICAgdm9pZCBpbnRlbF9jcnRjX2dldF9j cmNfc291cmNlcyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9waXBlX2NyYy5jCj4gaW5kZXggZDY4MDcxNTVhMjM3Li41 MGJkYjU2YWZjNzkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlw ZV9jcmMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMKPiBA QCAtMTAzMyw4ICsxMDMzLDcgQEAgaW50IGludGVsX2NydGNfdmVyaWZ5X2NyY19zb3VyY2Uoc3Ry dWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwKPiAgIAlyZXR1cm4g LUVJTlZBTDsKPiAgIH0KPiAgIAo+IC1pbnQgaW50ZWxfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1 Y3QgZHJtX2NydGMgKmNydGMsIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAo+IC0JCQkgICAgICBz aXplX3QgKnZhbHVlc19jbnQpCj4gK2ludCBpbnRlbF9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVj dCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNlX25hbWUpCj4gICB7Cj4gICAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5kZXYpOwo+ICAg CXN0cnVjdCBpbnRlbF9waXBlX2NyYyAqcGlwZV9jcmMgPSAmZGV2X3ByaXYtPnBpcGVfY3JjW2Ny dGMtPmluZGV4XTsKPiBAQCAtMTA3Myw3ICsxMDcyLDYgQEAgaW50IGludGVsX2NydGNfc2V0X2Ny Y19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwK PiAgIAl9Cj4gICAKPiAgIAlwaXBlX2NyYy0+c2tpcHBlZCA9IDA7Cj4gLQkqdmFsdWVzX2NudCA9 IDU7Cj4gICAKPiAgIG91dDoKPiAgIAlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwg cG93ZXJfZG9tYWluKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNh cl9kdV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYwo+IGlu ZGV4IDI0ZWVhYTdlMTRkNy4uODI5YzY0NGFkZGJhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JjYXIt ZHUvcmNhcl9kdV9jcnRjLmMKPiBAQCAtNzk2LDggKzc5Niw3IEBAIHN0YXRpYyBpbnQgcmNhcl9k dV9jcnRjX3ZlcmlmeV9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgIH0KPiAg IAo+ICAgc3RhdGljIGludCByY2FyX2R1X2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9j cnRjICpjcnRjLAo+IC0JCQkJICAgICAgIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAo+IC0JCQkJ ICAgICAgIHNpemVfdCAqdmFsdWVzX2NudCkKPiArCQkJCSAgICAgICBjb25zdCBjaGFyICpzb3Vy Y2VfbmFtZSkKPiAgIHsKPiAgIAlzdHJ1Y3QgcmNhcl9kdV9jcnRjICpyY3J0YyA9IHRvX3JjYXJf Y3J0YyhjcnRjKTsKPiAgIAlzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggY3R4Owo+IEBA IC04MzcsOCArODM2LDYgQEAgc3RhdGljIGludCByY2FyX2R1X2NydGNfc2V0X2NyY19zb3VyY2Uo c3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgIAl9Cj4gICAK PiAtCSp2YWx1ZXNfY250ID0gMTsKPiAtCj4gICAJLyogUGVyZm9ybSBhbiBhdG9taWMgY29tbWl0 IHRvIHNldCB0aGUgQ1JDIHNvdXJjZS4gKi8KPiAgIAlkcm1fbW9kZXNldF9hY3F1aXJlX2luaXQo JmN0eCwgMCk7Cj4gICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3Jv Y2tjaGlwX2RybV92b3AuYyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1f dm9wLmMKPiBpbmRleCBlYTQ4ODRhYzRjYjAuLmVkN2Y4YTJjNzIwOCAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYwo+IEBAIC0xMTE3LDcgKzExMTcs NyBAQCBzdGF0aWMgc3RydWN0IGRybV9jb25uZWN0b3IgKnZvcF9nZXRfZWRwX2Nvbm5lY3Rvcihz dHJ1Y3Qgdm9wICp2b3ApCj4gICB9Cj4gICAKPiAgIHN0YXRpYyBpbnQgdm9wX2NydGNfc2V0X2Ny Y19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+IC0JCQkJICAgY29uc3QgY2hhciAqc291 cmNlX25hbWUsIHNpemVfdCAqdmFsdWVzX2NudCkKPiArCQkJCSAgIGNvbnN0IGNoYXIgKnNvdXJj ZV9uYW1lKQo+ICAgewo+ICAgCXN0cnVjdCB2b3AgKnZvcCA9IHRvX3ZvcChjcnRjKTsKPiAgIAlz dHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwo+IEBAIC0xMTI3LDggKzExMjcsNiBAQCBz dGF0aWMgaW50IHZvcF9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK PiAgIAlpZiAoIWNvbm5lY3RvcikKPiAgIAkJcmV0dXJuIC1FSU5WQUw7Cj4gICAKPiAtCSp2YWx1 ZXNfY250ID0gMzsKPiAtCj4gICAJaWYgKHNvdXJjZV9uYW1lICYmIHN0cmNtcChzb3VyY2VfbmFt ZSwgImF1dG8iKSA9PSAwKQo+ICAgCQlyZXQgPSBhbmFsb2dpeF9kcF9zdGFydF9jcmMoY29ubmVj dG9yKTsKPiAgIAllbHNlIGlmICghc291cmNlX25hbWUpCj4gQEAgLTExNTMsNyArMTE1MSw3IEBA IHZvcF9jcnRjX3ZlcmlmeV9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3Qg Y2hhciAqc291cmNlX25hbWUsCj4gICAKPiAgICNlbHNlCj4gICBzdGF0aWMgaW50IHZvcF9jcnRj X3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAtCQkJCSAgIGNvbnN0IGNo YXIgKnNvdXJjZV9uYW1lLCBzaXplX3QgKnZhbHVlc19jbnQpCj4gKwkJCQkgICBjb25zdCBjaGFy ICpzb3VyY2VfbmFtZSkKPiAgIHsKPiAgIAlyZXR1cm4gLUVOT0RFVjsKPiAgIH0KPiBkaWZmIC0t Z2l0IGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaCBiL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKPiBp bmRleCBiMzgyNGY5MmMxOTAuLjI1N2IzZDczOGQ5NCAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2Ry bS9kcm1fY3J0Yy5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAo+IEBAIC02NTksOCAr NjU5LDcgQEAgc3RydWN0IGRybV9jcnRjX2Z1bmNzIHsKPiAgIAkgKgo+ICAgCSAqIDAgb24gc3Vj Y2VzcyBvciBhIG5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZS4KPiAgIAkgKi8KPiAtCWlu dCAoKnNldF9jcmNfc291cmNlKShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNvbnN0IGNoYXIgKnNv dXJjZSwKPiAtCQkJICAgICAgc2l6ZV90ICp2YWx1ZXNfY250KTsKPiArCWludCAoKnNldF9jcmNf c291cmNlKShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNvbnN0IGNoYXIgKnNvdXJjZSk7Cj4gICAJ LyoqCj4gICAJICogQHZlcmlmeV9jcmNfc291cmNlOgo+ICAgCSAqCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRy aS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK