From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Li Subject: Re: [PATCH 08/10] drm/crc: Cleanup crtc_crc_open function Date: Tue, 3 Jul 2018 09:05:30 -0400 Message-ID: <338b4527-b6b7-bdcd-fd15-d1e776856d18@amd.com> References: <20180702110729.8171-1-mahesh1.kumar@intel.com> <20180702110729.8171-9-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: <20180702110729.8171-9-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: Mahesh Kumar , intel-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org CgpPbiAyMDE4LTA3LTAyIDA3OjA3IEFNLCBNYWhlc2ggS3VtYXIgd3JvdGU6Cj4gVGhpcyBwYXRj aCBtYWtlIGNoYW5nZXMgdG8gYWxsb2NhdGUgY3JjLWVudHJpZXMgYnVmZmVyIGJlZm9yZQo+IGVu YWJsaW5nIENSQyBnZW5lcmF0aW9uLgo+IEl0IG1vdmVzIGFsbCB0aGUgZmFpbHVyZSBjaGVjayBl YXJseSBpbiB0aGUgZnVuY3Rpb24gYmVmb3JlIHNldHRpbmcKPiB0aGUgc291cmNlIG9yIG1lbW9y eSBhbGxvY2F0aW9uLgo+IE5vdyBzZXRfY3JjX3NvdXJjZSB0YWtlcyBvbmx5IHR3byB2YXJpYWJs ZSBpbnB1dHMsIHZhbHVlc19jbnQgd2UKPiBhbHJlYWR5IGdldHMgYXMgcGFydCBvZiB2ZXJpZnlf Y3JjX3NvdXJjZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBNYWhlc2ggS3VtYXIgPG1haGVzaDEua3Vt YXJAaW50ZWwuY29tPgo+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gUmV2 aWV3ZWQtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRl bC5jb20+CgpBY2tlZC1ieTogTGVvIExpIDxzdW5wZW5nLmxpQGFtZC5jb20+Cgo+IC0tLQo+ICAg ZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uaCAgfCAgMyAr LQo+ICAgLi4uL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYyAg fCAgNCArLQo+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jICAgICAgICAgICAg ICAgICAgfCA1MiArKysrKysrKystLS0tLS0tLS0tLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCAgICAgICAgICAgICAgICAgICB8ICAzICstCj4gICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9waXBlX2NyYy5jICAgICAgICAgICAgICB8ICA0ICstCj4gICBkcml2ZXJz L2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYyAgICAgICAgICAgICB8ICA1ICstLQo+ICAg ZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYyAgICAgICAgfCAgNiAr LS0KPiAgIGluY2x1ZGUvZHJtL2RybV9jcnRjLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDMgKy0KPiAgIDggZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgNTAgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRn cHVfZG0vYW1kZ3B1X2RtLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2Rt L2FtZGdwdV9kbS5oCj4gaW5kZXggZTQzZWQwNjRkYzQ2Li41NDA1NmQxODAwMDMgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uaAo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmgK PiBAQCAtMjU4LDggKzI1OCw3IEBAIGFtZGdwdV9kbV9yZW1vdmVfc2lua19mcm9tX2ZyZWVzeW5j X21vZHVsZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKPiAgIAo+ICAgLyogYW1k Z3B1X2RtX2NyYy5jICovCj4gICAjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4gLWludCBhbWRncHVf ZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNvbnN0IGNoYXIg KnNyY19uYW1lLAo+IC0JCQkJICBzaXplX3QgKnZhbHVlc19jbnQpOwo+ICtpbnQgYW1kZ3B1X2Rt X2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpz cmNfbmFtZSk7Cj4gICBpbnQgYW1kZ3B1X2RtX2NydGNfdmVyaWZ5X2NyY19zb3VyY2Uoc3RydWN0 IGRybV9jcnRjICpjcnRjLAo+ICAgCQkJCSAgICAgY29uc3QgY2hhciAqc3JjX25hbWUsCj4gICAJ CQkJICAgICBzaXplX3QgKnZhbHVlc19jbnQpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX2NyYy5jCj4gaW5kZXggZGZjY2E1OTRk NTJhLi5lN2FkNTI4ZjU4NTMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fY3JjLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYwo+IEBAIC02Miw4ICs2Miw3IEBAIGFt ZGdwdV9kbV9jcnRjX3ZlcmlmeV9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29u c3QgY2hhciAqc3JjX25hbWUsCj4gICAJcmV0dXJuIDA7Cj4gICB9Cj4gICAKPiAtaW50IGFtZGdw dV9kbV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hh ciAqc3JjX25hbWUsCj4gLQkJCSAgIHNpemVfdCAqdmFsdWVzX2NudCkKPiAraW50IGFtZGdwdV9k bV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAq c3JjX25hbWUpCj4gICB7Cj4gICAJc3RydWN0IGRtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUgPSB0 b19kbV9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKPiAgIAlzdHJ1Y3QgZGNfc3RyZWFtX3N0YXRl ICpzdHJlYW1fc3RhdGUgPSBjcnRjX3N0YXRlLT5zdHJlYW07Cj4gQEAgLTk5LDcgKzk4LDYgQEAg aW50IGFtZGdwdV9kbV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywg Y29uc3QgY2hhciAqc3JjX25hbWUsCj4gICAJCQlyZXR1cm4gLUVJTlZBTDsKPiAgIAl9Cj4gICAK PiAtCSp2YWx1ZXNfY250ID0gMzsKPiAgIAkvKiBSZXNldCBjcmNfc2tpcHBlZCBvbiBkbSBzdGF0 ZSAqLwo+ICAgCWNydGNfc3RhdGUtPmNyY19za2lwX2NvdW50ID0gMDsKPiAgIAlyZXR1cm4gMDsK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jIGIvZHJpdmVy cy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jCj4gaW5kZXggZjRkNzY1MjhkMjRjLi43MzlhODEz YjRiMDkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kZWJ1Z2ZzX2NyYy5jCj4gQEAgLTEyNCwxMSArMTI0 LDkgQEAgc3RhdGljIHNzaXplX3QgY3JjX2NvbnRyb2xfd3JpdGUoc3RydWN0IGZpbGUgKmZpbGUs IGNvbnN0IGNoYXIgX191c2VyICp1YnVmLAo+ICAgCWlmIChzb3VyY2VbbGVuXSA9PSAnXG4nKQo+ ICAgCQlzb3VyY2VbbGVuXSA9ICdcMCc7Cj4gICAKPiAtCWlmIChjcnRjLT5mdW5jcy0+dmVyaWZ5 X2NyY19zb3VyY2UpIHsKPiAtCQlyZXQgPSBjcnRjLT5mdW5jcy0+dmVyaWZ5X2NyY19zb3VyY2Uo Y3J0Yywgc291cmNlLCAmdmFsdWVzX2NudCk7Cj4gLQkJaWYgKHJldCkKPiAtCQkJcmV0dXJuIHJl dDsKPiAtCX0KPiArCXJldCA9IGNydGMtPmZ1bmNzLT52ZXJpZnlfY3JjX3NvdXJjZShjcnRjLCBz b3VyY2UsICZ2YWx1ZXNfY250KTsKPiArCWlmIChyZXQpCj4gKwkJcmV0dXJuIHJldDsKPiAgIAo+ ICAgCXNwaW5fbG9ja19pcnEoJmNyYy0+bG9jayk7Cj4gICAKPiBAQCAtMTkzLDEyICsxOTEsMTUg QEAgc3RhdGljIGludCBjcnRjX2NyY19vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBm aWxlICpmaWxlcCkKPiAgIAkJCXJldHVybiByZXQ7Cj4gICAJfQo+ICAgCj4gLQlpZiAoY3J0Yy0+ ZnVuY3MtPnZlcmlmeV9jcmNfc291cmNlKSB7Cj4gLQkJcmV0ID0gY3J0Yy0+ZnVuY3MtPnZlcmlm eV9jcmNfc291cmNlKGNydGMsIGNyYy0+c291cmNlLAo+IC0JCQkJCQkgICAgICZ2YWx1ZXNfY250 KTsKPiAtCQlpZiAocmV0KQo+IC0JCQlyZXR1cm4gcmV0Owo+IC0JfQo+ICsJcmV0ID0gY3J0Yy0+ ZnVuY3MtPnZlcmlmeV9jcmNfc291cmNlKGNydGMsIGNyYy0+c291cmNlLCAmdmFsdWVzX2NudCk7 Cj4gKwlpZiAocmV0KQo+ICsJCXJldHVybiByZXQ7Cj4gKwo+ICsJaWYgKFdBUk5fT04odmFsdWVz X2NudCA+IERSTV9NQVhfQ1JDX05SKSkKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCj4gKwlpZiAo V0FSTl9PTih2YWx1ZXNfY250ID09IDApKQo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICAgCj4gICAJ c3Bpbl9sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAgIAlpZiAoIWNyYy0+b3BlbmVkKQo+IEBAIC0y MTAsMzAgKzIxMSwyMiBAQCBzdGF0aWMgaW50IGNydGNfY3JjX29wZW4oc3RydWN0IGlub2RlICpp bm9kZSwgc3RydWN0IGZpbGUgKmZpbGVwKQo+ICAgCWlmIChyZXQpCj4gICAJCXJldHVybiByZXQ7 Cj4gICAKPiAtCXJldCA9IGNydGMtPmZ1bmNzLT5zZXRfY3JjX3NvdXJjZShjcnRjLCBjcmMtPnNv dXJjZSwgJnZhbHVlc19jbnQpOwo+IC0JaWYgKHJldCkKPiAtCQlnb3RvIGVycjsKPiAtCj4gLQlp ZiAoV0FSTl9PTih2YWx1ZXNfY250ID4gRFJNX01BWF9DUkNfTlIpKSB7Cj4gLQkJcmV0ID0gLUVJ TlZBTDsKPiAtCQlnb3RvIGVycl9kaXNhYmxlOwo+IC0JfQo+IC0KPiAtCWlmIChXQVJOX09OKHZh bHVlc19jbnQgPT0gMCkpIHsKPiAtCQlyZXQgPSAtRUlOVkFMOwo+IC0JCWdvdG8gZXJyX2Rpc2Fi bGU7Cj4gLQl9Cj4gLQo+ICAgCWVudHJpZXMgPSBrY2FsbG9jKERSTV9DUkNfRU5UUklFU19OUiwg c2l6ZW9mKCplbnRyaWVzKSwgR0ZQX0tFUk5FTCk7Cj4gICAJaWYgKCFlbnRyaWVzKSB7Cj4gICAJ CXJldCA9IC1FTk9NRU07Cj4gLQkJZ290byBlcnJfZGlzYWJsZTsKPiArCQlnb3RvIGVycjsKPiAg IAl9Cj4gICAKPiAgIAlzcGluX2xvY2tfaXJxKCZjcmMtPmxvY2spOwo+ICAgCWNyYy0+ZW50cmll cyA9IGVudHJpZXM7Cj4gICAJY3JjLT52YWx1ZXNfY250ID0gdmFsdWVzX2NudDsKPiArCXNwaW5f dW5sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAgIAo+ICsJcmV0ID0gY3J0Yy0+ZnVuY3MtPnNldF9j cmNfc291cmNlKGNydGMsIGNyYy0+c291cmNlKTsKPiArCWlmIChyZXQpCj4gKwkJZ290byBlcnI7 Cj4gKwo+ICsJc3Bpbl9sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAgIAkvKgo+ICAgCSAqIE9ubHkg cmV0dXJuIG9uY2Ugd2UgZ290IGEgZmlyc3QgZnJhbWUsIHNvIHVzZXJzcGFjZSBkb2Vzbid0IGhh dmUgdG8KPiAgIAkgKiBndWVzcyB3aGVuIHRoaXMgcGFydGljdWxhciBwaWVjZSBvZiBIVyB3aWxs IGJlIHJlYWR5IHRvIHN0YXJ0Cj4gQEAgLTI1MCw3ICsyNDMsNyBAQCBzdGF0aWMgaW50IGNydGNf Y3JjX29wZW4oc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbGVwKQo+ICAgCXJl dHVybiAwOwo+ICAgCj4gICBlcnJfZGlzYWJsZToKPiAtCWNydGMtPmZ1bmNzLT5zZXRfY3JjX3Nv dXJjZShjcnRjLCBOVUxMLCAmdmFsdWVzX2NudCk7Cj4gKwljcnRjLT5mdW5jcy0+c2V0X2NyY19z b3VyY2UoY3J0YywgTlVMTCk7Cj4gICBlcnI6Cj4gICAJc3Bpbl9sb2NrX2lycSgmY3JjLT5sb2Nr KTsKPiAgIAljcnRjX2NyY19jbGVhbnVwKGNyYyk7Cj4gQEAgLTI2Miw5ICsyNTUsOCBAQCBzdGF0 aWMgaW50IGNydGNfY3JjX3JlbGVhc2Uoc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUg KmZpbGVwKQo+ICAgewo+ICAgCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IGZpbGVwLT5mX2lub2Rl LT5pX3ByaXZhdGU7Cj4gICAJc3RydWN0IGRybV9jcnRjX2NyYyAqY3JjID0gJmNydGMtPmNyYzsK PiAtCXNpemVfdCB2YWx1ZXNfY250Owo+ICAgCj4gLQljcnRjLT5mdW5jcy0+c2V0X2NyY19zb3Vy Y2UoY3J0YywgTlVMTCwgJnZhbHVlc19jbnQpOwo+ICsJY3J0Yy0+ZnVuY3MtPnNldF9jcmNfc291 cmNlKGNydGMsIE5VTEwpOwo+ICAgCj4gICAJc3Bpbl9sb2NrX2lycSgmY3JjLT5sb2NrKTsKPiAg IAljcnRjX2NyY19jbGVhbnVwKGNyYyk7Cj4gQEAgLTM3MCw3ICszNjIsNyBAQCBpbnQgZHJtX2Rl YnVnZnNfY3J0Y19jcmNfYWRkKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgIHsKPiAgIAlzdHJ1 Y3QgZGVudHJ5ICpjcmNfZW50LCAqZW50Owo+ICAgCj4gLQlpZiAoIWNydGMtPmZ1bmNzLT5zZXRf Y3JjX3NvdXJjZSkKPiArCWlmICghY3J0Yy0+ZnVuY3MtPnNldF9jcmNfc291cmNlIHx8ICFjcnRj LT5mdW5jcy0+dmVyaWZ5X2NyY19zb3VyY2UpCj4gICAJCXJldHVybiAwOwo+ICAgCj4gICAJY3Jj X2VudCA9IGRlYnVnZnNfY3JlYXRlX2RpcigiY3JjIiwgY3J0Yy0+ZGVidWdmc19lbnRyeSk7Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBpbmRleCA5OWUzYjY0NzdkMzkuLjdmZTAzNDFiY2My NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTIxNTQsOCArMjE1NCw3IEBA IHZvaWQgbHNwY29uX3dhaXRfcGNvbl9tb2RlKHN0cnVjdCBpbnRlbF9sc3Bjb24gKmxzcGNvbik7 Cj4gICAvKiBpbnRlbF9waXBlX2NyYy5jICovCj4gICBpbnQgaW50ZWxfcGlwZV9jcmNfY3JlYXRl KHN0cnVjdCBkcm1fbWlub3IgKm1pbm9yKTsKPiAgICNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAt aW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25z dCBjaGFyICpzb3VyY2VfbmFtZSwKPiAtCQkJICAgICAgc2l6ZV90ICp2YWx1ZXNfY250KTsKPiAr aW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25z dCBjaGFyICpzb3VyY2VfbmFtZSk7Cj4gICBpbnQgaW50ZWxfY3J0Y192ZXJpZnlfY3JjX3NvdXJj ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gICAJCQkJIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1l LCBzaXplX3QgKnZhbHVlc19jbnQpOwo+ICAgY29uc3QgY2hhciAqY29uc3QgKmludGVsX2NydGNf Z2V0X2NyY19zb3VyY2VzKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3BpcGVfY3JjLmMKPiBpbmRleCAxZGZmYzM0NmYxYmMuLjI3ZDU2MGY3YTgxNyAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9waXBlX2NyYy5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYwo+IEBAIC0xMDI4LDggKzEwMjgs NyBAQCBpbnQgaW50ZWxfY3J0Y192ZXJpZnlfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAo+ICAgCXJldHVybiAtRUlOVkFMOwo+ICAgfQo+ ICAgCj4gLWludCBpbnRlbF9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywgY29uc3QgY2hhciAqc291cmNlX25hbWUsCj4gLQkJCSAgICAgIHNpemVfdCAqdmFsdWVzX2Nu dCkKPiAraW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRj LCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSkKPiAgIHsKPiAgIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmRldik7Cj4gICAJc3RydWN0IGludGVsX3Bp cGVfY3JjICpwaXBlX2NyYyA9ICZkZXZfcHJpdi0+cGlwZV9jcmNbY3J0Yy0+aW5kZXhdOwo+IEBA IC0xMDY4LDcgKzEwNjcsNiBAQCBpbnQgaW50ZWxfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAo+ICAgCX0KPiAgIAo+ICAg CXBpcGVfY3JjLT5za2lwcGVkID0gMDsKPiAtCSp2YWx1ZXNfY250ID0gNTsKPiAgIAo+ICAgb3V0 Ogo+ICAgCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBwb3dlcl9kb21haW4pOwo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYyBiL2Ry aXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5jCj4gaW5kZXggMjRlZWFhN2UxNGQ3 Li44MjljNjQ0YWRkYmEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNh cl9kdV9jcnRjLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMu Ywo+IEBAIC03OTYsOCArNzk2LDcgQEAgc3RhdGljIGludCByY2FyX2R1X2NydGNfdmVyaWZ5X2Ny Y19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAgfQo+ICAgCj4gICBzdGF0aWMgaW50 IHJjYXJfZHVfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gLQkJ CQkgICAgICAgY29uc3QgY2hhciAqc291cmNlX25hbWUsCj4gLQkJCQkgICAgICAgc2l6ZV90ICp2 YWx1ZXNfY250KQo+ICsJCQkJICAgICAgIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lKQo+ICAgewo+ ICAgCXN0cnVjdCByY2FyX2R1X2NydGMgKnJjcnRjID0gdG9fcmNhcl9jcnRjKGNydGMpOwo+ICAg CXN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCBjdHg7Cj4gQEAgLTgzNyw4ICs4MzYsNiBA QCBzdGF0aWMgaW50IHJjYXJfZHVfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCj4gICAJCXJldHVybiAtRUlOVkFMOwo+ICAgCX0KPiAgIAo+IC0JKnZhbHVlc19jbnQg PSAxOwo+IC0KPiAgIAkvKiBQZXJmb3JtIGFuIGF0b21pYyBjb21taXQgdG8gc2V0IHRoZSBDUkMg c291cmNlLiAqLwo+ICAgCWRybV9tb2Rlc2V0X2FjcXVpcmVfaW5pdCgmY3R4LCAwKTsKPiAgIAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5j IGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYwo+IGluZGV4IDc3 ZTkxYjE1ZGRiNC4uNjU3MzcyMzA2NjIzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9y b2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2No aXAvcm9ja2NoaXBfZHJtX3ZvcC5jCj4gQEAgLTExMTcsNyArMTExNyw3IEBAIHN0YXRpYyBzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqdm9wX2dldF9lZHBfY29ubmVjdG9yKHN0cnVjdCB2b3AgKnZvcCkK PiAgIH0KPiAgIAo+ICAgc3RhdGljIGludCB2b3BfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCj4gLQkJCQkgICBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwgc2l6ZV90 ICp2YWx1ZXNfY250KQo+ICsJCQkJICAgY29uc3QgY2hhciAqc291cmNlX25hbWUpCj4gICB7Cj4g ICAJc3RydWN0IHZvcCAqdm9wID0gdG9fdm9wKGNydGMpOwo+ICAgCXN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3I7Cj4gQEAgLTExMjcsOCArMTEyNyw2IEBAIHN0YXRpYyBpbnQgdm9wX2Ny dGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAgCWlmICghY29ubmVj dG9yKQo+ICAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgIAo+IC0JKnZhbHVlc19jbnQgPSAzOwo+IC0K PiAgIAlpZiAoc291cmNlX25hbWUgJiYgc3RyY21wKHNvdXJjZV9uYW1lLCAiYXV0byIpID09IDAp Cj4gICAJCXJldCA9IGFuYWxvZ2l4X2RwX3N0YXJ0X2NyYyhjb25uZWN0b3IpOwo+ICAgCWVsc2Ug aWYgKCFzb3VyY2VfbmFtZSkKPiBAQCAtMTE1Miw3ICsxMTUwLDcgQEAgdm9wX2NydGNfdmVyaWZ5 X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFt ZSwKPiAgIAo+ICAgI2Vsc2UKPiAgIHN0YXRpYyBpbnQgdm9wX2NydGNfc2V0X2NyY19zb3VyY2Uo c3RydWN0IGRybV9jcnRjICpjcnRjLAo+IC0JCQkJICAgY29uc3QgY2hhciAqc291cmNlX25hbWUs IHNpemVfdCAqdmFsdWVzX2NudCkKPiArCQkJCSAgIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lKQo+ ICAgewo+ICAgCXJldHVybiAtRU5PREVWOwo+ICAgfQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2Ry bS9kcm1fY3J0Yy5oIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAo+IGluZGV4IGZmYWVjMTM4YWVl ZS4uODE3ODAzMjVmMzZmIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKPiAr KysgYi9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCj4gQEAgLTY1OSw4ICs2NTksNyBAQCBzdHJ1Y3Qg ZHJtX2NydGNfZnVuY3Mgewo+ICAgCSAqCj4gICAJICogMCBvbiBzdWNjZXNzIG9yIGEgbmVnYXRp dmUgZXJyb3IgY29kZSBvbiBmYWlsdXJlLgo+ICAgCSAqLwo+IC0JaW50ICgqc2V0X2NyY19zb3Vy Y2UpKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNlLAo+IC0JCQkgICAg ICBzaXplX3QgKnZhbHVlc19jbnQpOwo+ICsJaW50ICgqc2V0X2NyY19zb3VyY2UpKHN0cnVjdCBk cm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNlKTsKPiAgIAkvKioKPiAgIAkgKiBAdmVy aWZ5X2NyY19zb3VyY2U6Cj4gICAJICoKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vZHJpLWRldmVsCg==