From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915: add a common connector type independent destroy hook Date: Tue, 09 Oct 2018 17:46:11 +0300 Message-ID: <87d0sjnpos.fsf@intel.com> References: <20181009141103.20387-1-jani.nikula@intel.com> <87lg77nr73.fsf@intel.com> <20181009142920.GJ9144@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 48C2289A61 for ; Tue, 9 Oct 2018 14:46:23 +0000 (UTC) In-Reply-To: <20181009142920.GJ9144@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ville =?utf-8?B?U3lyasOkbMOk?= Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCAwOSBPY3QgMjAxOCwgVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4 LmludGVsLmNvbT4gd3JvdGU6Cj4gT24gVHVlLCBPY3QgMDksIDIwMTggYXQgMDU6MTM6MzZQTSAr MDMwMCwgSmFuaSBOaWt1bGEgd3JvdGU6Cj4+IE9uIFR1ZSwgMDkgT2N0IDIwMTgsIEphbmkgTmlr dWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+IHdyb3RlOgo+PiA+IEFsbW9zdCBhbGwgb2YgdGhl IGNvbm5lY3RvciBkZXN0cm95IGZ1bmN0aW9ucyBkbyB0aGUgc2FtZSB0aGluZy4gVGhlCj4+ID4g ZGlmZmVyZW5jZXMgYXJlIGluIHRoZSBlZGlkLCBkZXRlY3RfZWRpZCBhbmQgcGFuZWwgY2xlYW51 cHMsIGJ1dCB0aG9zZQo+PiA+IGFyZSBzYWZlbHkgTlVMTCB3aGVuIG5vdCBpbml0aWFsaXplZC4g Um9sbCBvdXQgYSBjb21tb24gY29ubmVjdG9yCj4+ID4gZGVzdHJveSBob29rLgo+PiA+Cj4+ID4g SW5zcGlyZWQgYnkgY29tbWl0IGJjMzIxM2M0NDQxNSAoImRybS9pOTE1OiBEcm9wIHRoZSBlRFAg Y2hlY2sgZnJvbQo+PiA+IGludGVsX2RwX2Nvbm5lY3Rvcl9kZXN0cm95KCkiKS4KPj4gPgo+PiA+ IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPj4gPiBT aWduZWQtb2ZmLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgo+PiA+IC0t LQo+PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYyAgICAgfCAgOCArLS0tLS0t LQo+PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAyMCArKysrKysr KysrKysrKysrKysrLQo+PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICAg fCAxOCArLS0tLS0tLS0tLS0tLS0tLS0KPj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHBfbXN0LmMgIHwgMTQgKy0tLS0tLS0tLS0tLS0KPj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmggICAgIHwgIDEgKwo+PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k dm8uYyAgICAgfCAgOSArLS0tLS0tLS0KPj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf aGRtaS5jICAgIHwgIDUgKystLS0KPj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHZk cy5jICAgIHwgMjMgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4gPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfc2R2by5jICAgIHwgMTYgKysrKy0tLS0tLS0tLS0tLQo+PiA+ICBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF90di5jICAgICAgfCAgOSArLS0tLS0tLS0KPj4gPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jICAgICAgIHwgMTIgKy0tLS0tLS0tLS0tCj4+ID4gIDEx IGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDEwMiBkZWxldGlvbnMoLSkKPj4gPgo+ PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2NydC5jCj4+ID4gaW5kZXggMGM2YmY4MmJiMDU5Li5hYjNk NmIwNzQyMjIgMTAwNjQ0Cj4+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY3J0 LmMKPj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYwo+PiA+IEBAIC04 NDksMTIgKzg0OSw2IEBAIGludGVsX2NydF9kZXRlY3Qoc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm5lY3RvciwKPj4gPiAgCXJldHVybiBzdGF0dXM7Cj4+ID4gIH0KPj4gPiAgCj4+ID4gLXN0YXRp YyB2b2lkIGludGVsX2NydF9kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Ip Cj4+ID4gLXsKPj4gPiAtCWRybV9jb25uZWN0b3JfY2xlYW51cChjb25uZWN0b3IpOwo+PiA+IC0J a2ZyZWUoY29ubmVjdG9yKTsKPj4gPiAtfQo+PiA+IC0KPj4gPiAgc3RhdGljIGludCBpbnRlbF9j cnRfZ2V0X21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4+ID4gIHsKPj4g PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjb25uZWN0b3ItPmRldjsKPj4gPiBAQCAtOTA5 LDcgKzkwMyw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyBpbnRl bF9jcnRfY29ubmVjdG9yX2Z1bmNzID0gewo+PiA+ICAJLmZpbGxfbW9kZXMgPSBkcm1faGVscGVy X3Byb2JlX3NpbmdsZV9jb25uZWN0b3JfbW9kZXMsCj4+ID4gIAkubGF0ZV9yZWdpc3RlciA9IGlu dGVsX2Nvbm5lY3Rvcl9yZWdpc3RlciwKPj4gPiAgCS5lYXJseV91bnJlZ2lzdGVyID0gaW50ZWxf Y29ubmVjdG9yX3VucmVnaXN0ZXIsCj4+ID4gLQkuZGVzdHJveSA9IGludGVsX2NydF9kZXN0cm95 LAo+PiA+ICsJLmRlc3Ryb3kgPSBpbnRlbF9jb25uZWN0b3JfZGVzdHJveSwKPj4gPiAgCS5hdG9t aWNfZGVzdHJveV9zdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rvcl9kZXN0cm95X3N0 YXRlLAo+PiA+ICAJLmF0b21pY19kdXBsaWNhdGVfc3RhdGUgPSBkcm1fYXRvbWljX2hlbHBlcl9j b25uZWN0b3JfZHVwbGljYXRlX3N0YXRlLAo+PiA+ICB9Owo+PiA+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMKPj4gPiBpbmRleCBlMTRlMzI2OGE4NGMuLmExNDVlZmJhOTE1NyAxMDA2 NDQKPj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPj4gPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPj4gPiBAQCAtNjM2NSw3 ICs2MzY1LDcgQEAgc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yX2FsbG9j KHZvaWQpCj4+ID4gICAqIFRoaXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBhZnRlciBpbnRlbF9jb25u ZWN0b3JfYWxsb2MgaGFzIHJldHVybmVkCj4+ID4gICAqIHN1Y2Nlc3NmdWxseSwgYW5kIGJlZm9y ZSBkcm1fY29ubmVjdG9yX2luaXQgcmV0dXJucyBzdWNjZXNzZnVsbHkuCj4+ID4gICAqIE90aGVy d2lzZSB0aGUgZGVzdHJveSBjYWxsYmFja3MgZm9yIHRoZSBjb25uZWN0b3IgYW5kIHRoZSBzdGF0 ZSBzaG91bGQKPj4gPiAtICogdGFrZSBjYXJlIG9mIHByb3BlciBjbGVhbnVwL2ZyZWUKPj4gPiAr ICogdGFrZSBjYXJlIG9mIHByb3BlciBjbGVhbnVwL2ZyZWUgKHNlZSBpbnRlbF9jb25uZWN0b3Jf ZGVzdHJveSkuCj4+ID4gICAqLwo+PiA+ICB2b2lkIGludGVsX2Nvbm5lY3Rvcl9mcmVlKHN0cnVj dCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4gPiAgewo+PiA+IEBAIC02MzczLDYgKzYz NzMsMjQgQEAgdm9pZCBpbnRlbF9jb25uZWN0b3JfZnJlZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3IpCj4+ID4gIAlrZnJlZShjb25uZWN0b3IpOwo+PiA+ICB9Cj4+ID4gIAo+PiA+ ICsvKgo+PiA+ICsgKiBDb25uZWN0b3IgdHlwZSBpbmRlcGVuZGVudCBkZXN0cm95IGhvb2sgZm9y IGRybV9jb25uZWN0b3JfZnVuY3MuCj4+ID4gKyAqLwo+PiA+ICt2b2lkIGludGVsX2Nvbm5lY3Rv cl9kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4+ID4gK3sKPj4gPiAr CXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVsX2Nvbm5l Y3Rvcihjb25uZWN0b3IpOwo+PiA+ICsKPj4gPiArCWtmcmVlKGludGVsX2Nvbm5lY3Rvci0+ZGV0 ZWN0X2VkaWQpOwo+PiA+ICsKPj4gPiArCWlmICghSVNfRVJSX09SX05VTEwoaW50ZWxfY29ubmVj dG9yLT5lZGlkKSkKPj4gPiArCQlrZnJlZShpbnRlbF9jb25uZWN0b3ItPmVkaWQpOwo+PiA+ICsK Pj4gPiArCWludGVsX3BhbmVsX2ZpbmkoJmludGVsX2Nvbm5lY3Rvci0+cGFuZWwpOwo+PiA+ICsK Pj4gPiArCWRybV9jb25uZWN0b3JfY2xlYW51cChjb25uZWN0b3IpOwo+PiA+ICsJa2ZyZWUoY29u bmVjdG9yKTsKPj4gPiArfQo+PiA+ICsKPj4gPiAgLyogU2ltcGxlIGNvbm5lY3Rvci0+Z2V0X2h3 X3N0YXRlIGltcGxlbWVudGF0aW9uIGZvciBlbmNvZGVycyB0aGF0IHN1cHBvcnQgb25seQo+PiA+ ICAgKiBvbmUgY29ubmVjdG9yIGFuZCBubyBjbG9uaW5nIGFuZCBoZW5jZSB0aGUgZW5jb2RlciBz dGF0ZSBkZXRlcm1pbmVzIHRoZSBzdGF0ZQo+PiA+ICAgKiBvZiB0aGUgY29ubmVjdG9yLiAqLwo+ PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+PiA+IGluZGV4IGQxMmY5ODdhNmM0My4uMDg1NWI5 Nzg1ZjdiIDEwMDY0NAo+PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMK Pj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4+ID4gQEAgLTUyNTEs MjIgKzUyNTEsNiBAQCBpbnRlbF9kcF9jb25uZWN0b3JfdW5yZWdpc3RlcihzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yKQo+PiA+ICAJaW50ZWxfY29ubmVjdG9yX3VucmVnaXN0ZXIoY29u bmVjdG9yKTsKPj4gPiAgfQo+PiA+ICAKPj4gPiAtc3RhdGljIHZvaWQKPj4gPiAtaW50ZWxfZHBf Y29ubmVjdG9yX2Rlc3Ryb3koc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4gPiAt ewo+PiA+IC0Jc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yID0gdG9faW50 ZWxfY29ubmVjdG9yKGNvbm5lY3Rvcik7Cj4+ID4gLQo+PiA+IC0Ja2ZyZWUoaW50ZWxfY29ubmVj dG9yLT5kZXRlY3RfZWRpZCk7Cj4+ID4gLQo+PiA+IC0JaWYgKCFJU19FUlJfT1JfTlVMTChpbnRl bF9jb25uZWN0b3ItPmVkaWQpKQo+PiA+IC0JCWtmcmVlKGludGVsX2Nvbm5lY3Rvci0+ZWRpZCk7 Cj4+ID4gLQo+PiA+IC0JaW50ZWxfcGFuZWxfZmluaSgmaW50ZWxfY29ubmVjdG9yLT5wYW5lbCk7 Cj4+ID4gLQo+PiA+IC0JZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKGNvbm5lY3Rvcik7Cj4+ID4gLQlr ZnJlZShjb25uZWN0b3IpOwo+PiA+IC19Cj4+ID4gLQo+PiA+ICB2b2lkIGludGVsX2RwX2VuY29k ZXJfZGVzdHJveShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCj4+ID4gIHsKPj4gPiAgCXN0 cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0ID0gZW5jX3RvX2RpZ19wb3J0 KGVuY29kZXIpOwo+PiA+IEBAIC01NjEzLDcgKzU1OTcsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0 IGRybV9jb25uZWN0b3JfZnVuY3MgaW50ZWxfZHBfY29ubmVjdG9yX2Z1bmNzID0gewo+PiA+ICAJ LmF0b21pY19zZXRfcHJvcGVydHkgPSBpbnRlbF9kaWdpdGFsX2Nvbm5lY3Rvcl9hdG9taWNfc2V0 X3Byb3BlcnR5LAo+PiA+ICAJLmxhdGVfcmVnaXN0ZXIgPSBpbnRlbF9kcF9jb25uZWN0b3JfcmVn aXN0ZXIsCj4+ID4gIAkuZWFybHlfdW5yZWdpc3RlciA9IGludGVsX2RwX2Nvbm5lY3Rvcl91bnJl Z2lzdGVyLAo+PiA+IC0JLmRlc3Ryb3kgPSBpbnRlbF9kcF9jb25uZWN0b3JfZGVzdHJveSwKPj4g PiArCS5kZXN0cm95ID0gaW50ZWxfY29ubmVjdG9yX2Rlc3Ryb3ksCj4+ID4gIAkuYXRvbWljX2Rl c3Ryb3lfc3RhdGUgPSBkcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZGVzdHJveV9zdGF0ZSwK Pj4gPiAgCS5hdG9taWNfZHVwbGljYXRlX3N0YXRlID0gaW50ZWxfZGlnaXRhbF9jb25uZWN0b3Jf ZHVwbGljYXRlX3N0YXRlLAo+PiA+ICB9Owo+PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcF9tc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX21z dC5jCj4+ID4gaW5kZXggNDNkYjJlOWFjNTc1Li45YWQ0OTdlOGFlMzYgMTAwNjQ0Cj4+ID4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPj4gPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYwo+PiA+IEBAIC0zMjksMjQgKzMyOSwxMiBAQCBp bnRlbF9kcF9tc3RfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGJvb2wg Zm9yY2UpCj4+ID4gIAlyZXR1cm4gZHJtX2RwX21zdF9kZXRlY3RfcG9ydChjb25uZWN0b3IsICZp bnRlbF9kcC0+bXN0X21nciwgaW50ZWxfY29ubmVjdG9yLT5wb3J0KTsKPj4gPiAgfQo+PiA+ICAK Pj4gPiAtc3RhdGljIHZvaWQKPj4gPiAtaW50ZWxfZHBfbXN0X2Nvbm5lY3Rvcl9kZXN0cm95KHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4+ID4gLXsKPj4gPiAtCXN0cnVjdCBpbnRl bF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0 b3IpOwo+PiA+IC0KPj4gPiAtCWlmICghSVNfRVJSX09SX05VTEwoaW50ZWxfY29ubmVjdG9yLT5l ZGlkKSkKPj4gPiAtCQlrZnJlZShpbnRlbF9jb25uZWN0b3ItPmVkaWQpOwo+PiA+IC0KPj4gPiAt CWRybV9jb25uZWN0b3JfY2xlYW51cChjb25uZWN0b3IpOwo+PiA+IC0Ja2ZyZWUoY29ubmVjdG9y KTsKPj4gPiAtfQo+PiA+IC0KPj4gPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9y X2Z1bmNzIGludGVsX2RwX21zdF9jb25uZWN0b3JfZnVuY3MgPSB7Cj4+ID4gIAkuZGV0ZWN0ID0g aW50ZWxfZHBfbXN0X2RldGVjdCwKPj4gPiAgCS5maWxsX21vZGVzID0gZHJtX2hlbHBlcl9wcm9i ZV9zaW5nbGVfY29ubmVjdG9yX21vZGVzLAo+PiA+ICAJLmxhdGVfcmVnaXN0ZXIgPSBpbnRlbF9j b25uZWN0b3JfcmVnaXN0ZXIsCj4+ID4gIAkuZWFybHlfdW5yZWdpc3RlciA9IGludGVsX2Nvbm5l Y3Rvcl91bnJlZ2lzdGVyLAo+PiA+IC0JLmRlc3Ryb3kgPSBpbnRlbF9kcF9tc3RfY29ubmVjdG9y X2Rlc3Ryb3ksCj4+ID4gKwkuZGVzdHJveSA9IGludGVsX2Nvbm5lY3Rvcl9kZXN0cm95LAo+PiA+ ICAJLmF0b21pY19kZXN0cm95X3N0YXRlID0gZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2Rl c3Ryb3lfc3RhdGUsCj4+ID4gIAkuYXRvbWljX2R1cGxpY2F0ZV9zdGF0ZSA9IGRybV9hdG9taWNf aGVscGVyX2Nvbm5lY3Rvcl9kdXBsaWNhdGVfc3RhdGUsCj4+ID4gIH07Cj4+ID4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPj4gPiBpbmRleCA4MDUwZDA2YzcyMmEuLjRiOGZlYzc0YWQ0OSAxMDA2 NDQKPj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+PiA+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+ID4gQEAgLTE1MTAsNiArMTUxMCw3 IEBAIHZvaWQgaW50ZWxfZW5jb2Rlcl9kZXN0cm95KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2Rl cik7Cj4+ID4gIGludCBpbnRlbF9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICopOwo+PiA+ICBzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3JfYWxsb2Mo dm9pZCk7Cj4+ID4gIHZvaWQgaW50ZWxfY29ubmVjdG9yX2ZyZWUoc3RydWN0IGludGVsX2Nvbm5l Y3RvciAqY29ubmVjdG9yKTsKPj4gPiArdm9pZCBpbnRlbF9jb25uZWN0b3JfZGVzdHJveShzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKPj4gPiAgYm9vbCBpbnRlbF9jb25uZWN0b3Jf Z2V0X2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7Cj4+ID4gIHZv aWQgaW50ZWxfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKHN0cnVjdCBpbnRlbF9jb25uZWN0b3Ig KmNvbm5lY3RvciwKPj4gPiAgCQkJCSAgICBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7 Cj4+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2R2by5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHZvLmMKPj4gPiBpbmRleCA0ZTE0MmZmNDk3MDguLmJl M2MwYTVmNDQ3ZCAxMDA2NDQKPj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k dm8uYwo+PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2R2by5jCj4+ID4gQEAg LTMzMywxOCArMzMzLDExIEBAIHN0YXRpYyBpbnQgaW50ZWxfZHZvX2dldF9tb2RlcyhzdHJ1Y3Qg ZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+PiA+ICAJcmV0dXJuIDA7Cj4+ID4gIH0KPj4gPiAg Cj4+ID4gLXN0YXRpYyB2b2lkIGludGVsX2R2b19kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IpCj4+ID4gLXsKPj4gPiAtCWRybV9jb25uZWN0b3JfY2xlYW51cChjb25uZWN0 b3IpOwo+PiA+IC0JaW50ZWxfcGFuZWxfZmluaSgmdG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3Rv ciktPnBhbmVsKTsKPj4gPiAtCWtmcmVlKGNvbm5lY3Rvcik7Cj4+ID4gLX0KPj4gPiAtCj4+ID4g IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyBpbnRlbF9kdm9fY29ubmVj dG9yX2Z1bmNzID0gewo+PiA+ICAJLmRldGVjdCA9IGludGVsX2R2b19kZXRlY3QsCj4+ID4gIAku bGF0ZV9yZWdpc3RlciA9IGludGVsX2Nvbm5lY3Rvcl9yZWdpc3RlciwKPj4gPiAgCS5lYXJseV91 bnJlZ2lzdGVyID0gaW50ZWxfY29ubmVjdG9yX3VucmVnaXN0ZXIsCj4+ID4gLQkuZGVzdHJveSA9 IGludGVsX2R2b19kZXN0cm95LAo+PiA+ICsJLmRlc3Ryb3kgPSBpbnRlbF9jb25uZWN0b3JfZGVz dHJveSwKPj4gPiAgCS5maWxsX21vZGVzID0gZHJtX2hlbHBlcl9wcm9iZV9zaW5nbGVfY29ubmVj dG9yX21vZGVzLAo+PiA+ICAJLmF0b21pY19kZXN0cm95X3N0YXRlID0gZHJtX2F0b21pY19oZWxw ZXJfY29ubmVjdG9yX2Rlc3Ryb3lfc3RhdGUsCj4+ID4gIAkuYXRvbWljX2R1cGxpY2F0ZV9zdGF0 ZSA9IGRybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rvcl9kdXBsaWNhdGVfc3RhdGUsCj4+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+PiA+IGluZGV4IDQ1NGY1NzAyNzVlOS4uMmM1M2VmYzQ2 M2U2IDEwMDY0NAo+PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+PiA+IEBAIC0yMDcz LDkgKzIwNzMsOCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9oZG1pX2Rlc3Ryb3koc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvcikKPj4gPiAgewo+PiA+ICAJaWYgKGludGVsX2F0dGFjaGVkX2hk bWkoY29ubmVjdG9yKS0+Y2VjX25vdGlmaWVyKQo+PiA+ICAJCWNlY19ub3RpZmllcl9wdXQoaW50 ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpLT5jZWNfbm90aWZpZXIpOwo+PiA+IC0Ja2ZyZWUo dG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvciktPmRldGVjdF9lZGlkKTsKPj4gPiAtCWRybV9j b25uZWN0b3JfY2xlYW51cChjb25uZWN0b3IpOwo+PiA+IC0Ja2ZyZWUoY29ubmVjdG9yKTsKPj4g PiArCj4+ID4gKwlpbnRlbF9jb25uZWN0b3JfZGVzdHJveShjb25uZWN0b3IpOwo+PiA+ICB9Cj4+ ID4gIAo+PiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3JfZnVuY3MgaW50ZWxf aGRtaV9jb25uZWN0b3JfZnVuY3MgPSB7Cj4+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2x2ZHMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2x2ZHMuYwo+ PiA+IGluZGV4IGY5ZjNiMDg4NWJhNS4uMWZlOTcwY2Y5OTA5IDEwMDY0NAo+PiA+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2x2ZHMuYwo+PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2x2ZHMuYwo+PiA+IEBAIC00NzcsMjcgKzQ3Nyw2IEBAIHN0YXRpYyBpbnQg aW50ZWxfbHZkc19nZXRfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4g PiAgCXJldHVybiAxOwo+PiA+ICB9Cj4+ID4gIAo+PiA+IC0vKioKPj4gPiAtICogaW50ZWxfbHZk c19kZXN0cm95IC0gdW5yZWdpc3RlciBhbmQgZnJlZSBMVkRTIHN0cnVjdHVyZXMKPj4gPiAtICog QGNvbm5lY3RvcjogY29ubmVjdG9yIHRvIGZyZWUKPj4gPiAtICoKPj4gPiAtICogVW5yZWdpc3Rl ciB0aGUgRERDIGJ1cyBmb3IgdGhpcyBjb25uZWN0b3IgdGhlbiBmcmVlIHRoZSBkcml2ZXIgcHJp dmF0ZQo+PiA+IC0gKiBzdHJ1Y3R1cmUuCj4+ID4gLSAqLwo+PiA+IC1zdGF0aWMgdm9pZCBpbnRl bF9sdmRzX2Rlc3Ryb3koc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4gPiAtewo+ PiA+IC0Jc3RydWN0IGludGVsX2x2ZHNfY29ubmVjdG9yICpsdmRzX2Nvbm5lY3RvciA9Cj4+ID4g LQkJdG9fbHZkc19jb25uZWN0b3IoY29ubmVjdG9yKTsKPj4gPiAtCj4+ID4gLQlpZiAoIUlTX0VS Ul9PUl9OVUxMKGx2ZHNfY29ubmVjdG9yLT5iYXNlLmVkaWQpKQo+PiA+IC0JCWtmcmVlKGx2ZHNf Y29ubmVjdG9yLT5iYXNlLmVkaWQpOwo+PiA+IC0KPj4gPiAtCWludGVsX3BhbmVsX2ZpbmkoJmx2 ZHNfY29ubmVjdG9yLT5iYXNlLnBhbmVsKTsKPj4gPiAtCj4+ID4gLQlkcm1fY29ubmVjdG9yX2Ns ZWFudXAoY29ubmVjdG9yKTsKPj4gPiAtCWtmcmVlKGNvbm5lY3Rvcik7Cj4+ID4gLX0KPj4gPiAt Cj4+ID4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3MgaW50 ZWxfbHZkc19jb25uZWN0b3JfaGVscGVyX2Z1bmNzID0gewo+PiA+ICAJLmdldF9tb2RlcyA9IGlu dGVsX2x2ZHNfZ2V0X21vZGVzLAo+PiA+ICAJLm1vZGVfdmFsaWQgPSBpbnRlbF9sdmRzX21vZGVf dmFsaWQsCj4+ID4gQEAgLTUxMSw3ICs0OTAsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9j b25uZWN0b3JfZnVuY3MgaW50ZWxfbHZkc19jb25uZWN0b3JfZnVuY3MgPSB7Cj4+ID4gIAkuYXRv bWljX3NldF9wcm9wZXJ0eSA9IGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX2F0b21pY19zZXRfcHJv cGVydHksCj4+ID4gIAkubGF0ZV9yZWdpc3RlciA9IGludGVsX2Nvbm5lY3Rvcl9yZWdpc3RlciwK Pj4gPiAgCS5lYXJseV91bnJlZ2lzdGVyID0gaW50ZWxfY29ubmVjdG9yX3VucmVnaXN0ZXIsCj4+ ID4gLQkuZGVzdHJveSA9IGludGVsX2x2ZHNfZGVzdHJveSwKPj4gPiArCS5kZXN0cm95ID0gaW50 ZWxfY29ubmVjdG9yX2Rlc3Ryb3ksCj4+ID4gIAkuYXRvbWljX2Rlc3Ryb3lfc3RhdGUgPSBkcm1f YXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZGVzdHJveV9zdGF0ZSwKPj4gPiAgCS5hdG9taWNfZHVw bGljYXRlX3N0YXRlID0gaW50ZWxfZGlnaXRhbF9jb25uZWN0b3JfZHVwbGljYXRlX3N0YXRlLAo+ PiA+ICB9Owo+PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZv LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMKPj4gPiBpbmRleCA3MDEzNzJl NTEyYTguLjE4MjRkOTRhZTEyMyAxMDA2NDQKPj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9zZHZvLmMKPj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZv LmMKPj4gPiBAQCAtMjA1OCwxNCArMjA1OCw2IEBAIHN0YXRpYyBpbnQgaW50ZWxfc2R2b19nZXRf bW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4gPiAgCXJldHVybiAhbGlz dF9lbXB0eSgmY29ubmVjdG9yLT5wcm9iZWRfbW9kZXMpOwo+PiA+ICB9Cj4+ID4gIAo+PiA+IC1z dGF0aWMgdm9pZCBpbnRlbF9zZHZvX2Rlc3Ryb3koc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5l Y3RvcikKPj4gPiAtewo+PiA+IC0Jc3RydWN0IGludGVsX3Nkdm9fY29ubmVjdG9yICppbnRlbF9z ZHZvX2Nvbm5lY3RvciA9IHRvX2ludGVsX3Nkdm9fY29ubmVjdG9yKGNvbm5lY3Rvcik7Cj4+ID4g LQo+PiA+IC0JZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKGNvbm5lY3Rvcik7Cj4+ID4gLQlrZnJlZShp bnRlbF9zZHZvX2Nvbm5lY3Rvcik7Cj4+ID4gLX0KPj4gPiAtCj4+ID4gIHN0YXRpYyBpbnQKPj4g PiAgaW50ZWxfc2R2b19jb25uZWN0b3JfYXRvbWljX2dldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLAo+PiA+ICAJCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rv cl9zdGF0ZSAqc3RhdGUsCj4+ID4gQEAgLTIyMjgsNyArMjIyMCw3IEBAIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyBpbnRlbF9zZHZvX2Nvbm5lY3Rvcl9mdW5jcyA9IHsK Pj4gPiAgCS5hdG9taWNfc2V0X3Byb3BlcnR5ID0gaW50ZWxfc2R2b19jb25uZWN0b3JfYXRvbWlj X3NldF9wcm9wZXJ0eSwKPj4gPiAgCS5sYXRlX3JlZ2lzdGVyID0gaW50ZWxfc2R2b19jb25uZWN0 b3JfcmVnaXN0ZXIsCj4+ID4gIAkuZWFybHlfdW5yZWdpc3RlciA9IGludGVsX3Nkdm9fY29ubmVj dG9yX3VucmVnaXN0ZXIsCj4+ID4gLQkuZGVzdHJveSA9IGludGVsX3Nkdm9fZGVzdHJveSwKPj4g PiArCS5kZXN0cm95ID0gaW50ZWxfY29ubmVjdG9yX2Rlc3Ryb3ksCj4+IAo+PiBPa2F5LCB0aGlz IHdvcmtzIGJ5IGFjY2lkZW50LiBJJ2xsIHByb2JhYmx5IGRyb3AgdGhlIHNkdm8gaHVua3MuCj4K PiBPbiBhY2NvdW50IG9mIHNkdm9fY29ubmVjdG9yIGhhdmluZyBpdHMgb3duIHN0cnVjdD8gSSB0 aGluayB3ZSBjYW4gcmVseQo+IG9uIHRoZSBvZmZzZXRvZihiYXNlKT09MCB0cmljay4gVGhhdCBh c3N1bXB0aW9uIGlzIGJha2VkIGluIGFsbCBvdmVyIHRoZQo+IHBsYWNlIChzaG91bGQgcmVhbGx5 IHJlc3VycmVjdCBteSBCVUlMRF9CVUdfT04oKSBwYXRjaGVzIHRvIG1ha2Ugc3VyZSkuCgpPa2F5 LCBJJ2xsIGdvIHdpdGggdGhhdC4KCj4gT24gYSByZWxhdGVkIG5vdGUsIGh0dHBzOi8vcGF0Y2h3 b3JrLmZyZWVkZXNrdG9wLm9yZy9wYXRjaC8yNTAwMzgvIHdvdWxkCj4gYmUgbmljZSB0byBnZXQg aW4gOykKPgo+IEFsc28gbG9va3MgbGlrZSBsdmRzIGlzIGluIHRoZSBzYW1lIGJvYXQgYXMgc2R2 byB3aGF0IHdpdGggYm90aCBoYXZpbmcKPiB0aGVpciBvd24gY29ubmVjdG9yIHN0cnVjdC4gVGhl IGRpZmZlcmVuY2UgaXMgdGhhdCBpbiB0aGUgY2FzZSBvZiBsdmRzCj4gdGhhdCBjdXN0b20gc3Ry dWN0IGlzIGVudGlyZWx5IHBvaW50bGVzcy4KCkkgaGF2ZSBhIGZvbGxvdy11cCB0byBudWtlIHRo YXQuCgo+IFBhdGNoIGlzCj4gUmV2aWV3ZWQtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+CgpUaGFua3MsIHdpbGwgcHVzaCBvbmNlIEkgZ2V0IENJIHJl c3VsdHMuCgpCUiwKSmFuaS4KCgo+Cj4+IAo+PiBCUiwKPj4gSmFuaS4KPj4gCj4+ID4gIAkuYXRv bWljX2Rlc3Ryb3lfc3RhdGUgPSBkcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZGVzdHJveV9z dGF0ZSwKPj4gPiAgCS5hdG9taWNfZHVwbGljYXRlX3N0YXRlID0gaW50ZWxfc2R2b19jb25uZWN0 b3JfZHVwbGljYXRlX3N0YXRlLAo+PiA+ICB9Owo+PiA+IEBAIC0yNTgzLDcgKzI1NzUsNyBAQCBp bnRlbF9zZHZvX3R2X2luaXQoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8sIGludCB0eXBl KQo+PiA+ICAJcmV0dXJuIHRydWU7Cj4+ID4gIAo+PiA+ICBlcnI6Cj4+ID4gLQlpbnRlbF9zZHZv X2Rlc3Ryb3koY29ubmVjdG9yKTsKPj4gPiArCWludGVsX2Nvbm5lY3Rvcl9kZXN0cm95KGNvbm5l Y3Rvcik7Cj4+ID4gIAlyZXR1cm4gZmFsc2U7Cj4+ID4gIH0KPj4gPiAgCj4+ID4gQEAgLTI2NzUs NyArMjY2Nyw3IEBAIGludGVsX3Nkdm9fbHZkc19pbml0KHN0cnVjdCBpbnRlbF9zZHZvICppbnRl bF9zZHZvLCBpbnQgZGV2aWNlKQo+PiA+ICAJcmV0dXJuIHRydWU7Cj4+ID4gIAo+PiA+ICBlcnI6 Cj4+ID4gLQlpbnRlbF9zZHZvX2Rlc3Ryb3koY29ubmVjdG9yKTsKPj4gPiArCWludGVsX2Nvbm5l Y3Rvcl9kZXN0cm95KGNvbm5lY3Rvcik7Cj4+ID4gIAlyZXR1cm4gZmFsc2U7Cj4+ID4gIH0KPj4g PiAgCj4+ID4gQEAgLTI3NDUsNyArMjczNyw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nkdm9fb3V0 cHV0X2NsZWFudXAoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8pCj4+ID4gIAkJCQkgJmRl di0+bW9kZV9jb25maWcuY29ubmVjdG9yX2xpc3QsIGhlYWQpIHsKPj4gPiAgCQlpZiAoaW50ZWxf YXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpID09ICZpbnRlbF9zZHZvLT5iYXNlKSB7Cj4+ID4g IAkJCWRybV9jb25uZWN0b3JfdW5yZWdpc3Rlcihjb25uZWN0b3IpOwo+PiA+IC0JCQlpbnRlbF9z ZHZvX2Rlc3Ryb3koY29ubmVjdG9yKTsKPj4gPiArCQkJaW50ZWxfY29ubmVjdG9yX2Rlc3Ryb3ko Y29ubmVjdG9yKTsKPj4gPiAgCQl9Cj4+ID4gIAl9Cj4+ID4gIH0KPj4gPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdHYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3R2LmMKPj4gPiBpbmRleCBiNWIwNGNiODkyZTkuLjhiOWNlMGRjNzhlNSAxMDA2NDQKPj4g PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF90di5jCj4+ID4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfdHYuYwo+PiA+IEBAIC0xMzc3LDE3ICsxMzc3LDEwIEBAIGlu dGVsX3R2X2dldF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+PiA+ICAJ cmV0dXJuIGNvdW50Owo+PiA+ICB9Cj4+ID4gIAo+PiA+IC1zdGF0aWMgdm9pZAo+PiA+IC1pbnRl bF90dl9kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4+ID4gLXsKPj4g PiAtCWRybV9jb25uZWN0b3JfY2xlYW51cChjb25uZWN0b3IpOwo+PiA+IC0Ja2ZyZWUoY29ubmVj dG9yKTsKPj4gPiAtfQo+PiA+IC0KPj4gPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY29ubmVj dG9yX2Z1bmNzIGludGVsX3R2X2Nvbm5lY3Rvcl9mdW5jcyA9IHsKPj4gPiAgCS5sYXRlX3JlZ2lz dGVyID0gaW50ZWxfY29ubmVjdG9yX3JlZ2lzdGVyLAo+PiA+ICAJLmVhcmx5X3VucmVnaXN0ZXIg PSBpbnRlbF9jb25uZWN0b3JfdW5yZWdpc3RlciwKPj4gPiAtCS5kZXN0cm95ID0gaW50ZWxfdHZf ZGVzdHJveSwKPj4gPiArCS5kZXN0cm95ID0gaW50ZWxfY29ubmVjdG9yX2Rlc3Ryb3ksCj4+ID4g IAkuZmlsbF9tb2RlcyA9IGRybV9oZWxwZXJfcHJvYmVfc2luZ2xlX2Nvbm5lY3Rvcl9tb2RlcywK Pj4gPiAgCS5hdG9taWNfZGVzdHJveV9zdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rv cl9kZXN0cm95X3N0YXRlLAo+PiA+ICAJLmF0b21pY19kdXBsaWNhdGVfc3RhdGUgPSBkcm1fYXRv bWljX2hlbHBlcl9jb25uZWN0b3JfZHVwbGljYXRlX3N0YXRlLAo+PiA+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZf ZHNpLmMKPj4gPiBpbmRleCA0MzVhMmMzNWVlOGMuLjVhY2NkMGMzNjBmOSAxMDA2NDQKPj4gPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMKPj4gPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS92bHZfZHNpLmMKPj4gPiBAQCAtMTY0MiwxNiArMTY0Miw2IEBAIHN0YXRpYyBp bnQgaW50ZWxfZHNpX2dldF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ PiA+ICAJcmV0dXJuIDE7Cj4+ID4gIH0KPj4gPiAgCj4+ID4gLXN0YXRpYyB2b2lkIGludGVsX2Rz aV9jb25uZWN0b3JfZGVzdHJveShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+PiA+ IC17Cj4+ID4gLQlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPSB0b19p bnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKTsKPj4gPiAtCj4+ID4gLQlEUk1fREVCVUdfS01TKCJc biIpOwo+PiA+IC0JaW50ZWxfcGFuZWxfZmluaSgmaW50ZWxfY29ubmVjdG9yLT5wYW5lbCk7Cj4+ ID4gLQlkcm1fY29ubmVjdG9yX2NsZWFudXAoY29ubmVjdG9yKTsKPj4gPiAtCWtmcmVlKGNvbm5l Y3Rvcik7Cj4+ID4gLX0KPj4gPiAtCj4+ID4gIHN0YXRpYyB2b2lkIGludGVsX2RzaV9lbmNvZGVy X2Rlc3Ryb3koc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQo+PiA+ICB7Cj4+ID4gIAlzdHJ1 Y3QgaW50ZWxfZHNpICppbnRlbF9kc2kgPSBlbmNfdG9faW50ZWxfZHNpKGVuY29kZXIpOwo+PiA+ IEBAIC0xNjc2LDcgKzE2NjYsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3Jf aGVscGVyX2Z1bmNzIGludGVsX2RzaV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzCj4+ID4gIHN0YXRp YyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyBpbnRlbF9kc2lfY29ubmVjdG9yX2Z1 bmNzID0gewo+PiA+ICAJLmxhdGVfcmVnaXN0ZXIgPSBpbnRlbF9jb25uZWN0b3JfcmVnaXN0ZXIs Cj4+ID4gIAkuZWFybHlfdW5yZWdpc3RlciA9IGludGVsX2Nvbm5lY3Rvcl91bnJlZ2lzdGVyLAo+ PiA+IC0JLmRlc3Ryb3kgPSBpbnRlbF9kc2lfY29ubmVjdG9yX2Rlc3Ryb3ksCj4+ID4gKwkuZGVz dHJveSA9IGludGVsX2Nvbm5lY3Rvcl9kZXN0cm95LAo+PiA+ICAJLmZpbGxfbW9kZXMgPSBkcm1f aGVscGVyX3Byb2JlX3NpbmdsZV9jb25uZWN0b3JfbW9kZXMsCj4+ID4gIAkuYXRvbWljX2dldF9w cm9wZXJ0eSA9IGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX2F0b21pY19nZXRfcHJvcGVydHksCj4+ ID4gIAkuYXRvbWljX3NldF9wcm9wZXJ0eSA9IGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX2F0b21p Y19zZXRfcHJvcGVydHksCj4+IAo+PiAtLSAKPj4gSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291 cmNlIEdyYXBoaWNzIENlbnRlcgoKLS0gCkphbmkgTmlrdWxhLCBJbnRlbCBPcGVuIFNvdXJjZSBH cmFwaGljcyBDZW50ZXIKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4Cg==