From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH 2/2] drm/i915/dp: make is_edp non-static and rename to intel_dp_is_edp Date: Fri, 18 Aug 2017 12:15:43 -0700 Message-ID: <20170818191542.GD27365@intel.com> References: <20170818093020.19160-1-jani.nikula@intel.com> <20170818093020.19160-2-jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id D64CA6E7C7 for ; Fri, 18 Aug 2017 19:07:57 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20170818093020.19160-2-jani.nikula@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhhbmtzIGZvciB0aGUgcGF0Y2gsIHdpbGwgcmViYXNlIG15IHBhdGNoIG9uIHRvcCBvZiB0aGlz LgoKTWFuYXNpCgpPbiBGcmksIEF1ZyAxOCwgMjAxNyBhdCAxMjozMDoyMFBNICswMzAwLCBKYW5p IE5pa3VsYSB3cm90ZToKPiBFeHBvc2UgYWNyb3NzIGRyaXZlciBmb3IgZnV0dXJlIHdvcmsuIE5v IGZ1bmN0aW9uYWwgY2hhbmdlcy4KPiAKPiBDYzogTWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2 YXJlQGludGVsLmNvbT4KPiBDYzogSmltIEJyaWRlIDxqaW0uYnJpZGVAbGludXguaW50ZWwuY29t Pgo+IFNpZ25lZC1vZmYtYnk6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+CgpS ZXZpZXdlZC1ieTogTWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4KCj4g LS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgIHwgNzcgKysrKysrKysrKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaCB8ICAxICsKPiAgMiBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAzNyBk ZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiBpbmRleCAyOWVkMWRlYjlj ODQuLmUzODU2NTgyOWQxOSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+IEBAIC0xMDMs MTMgKzEwMywxMyBAQCBzdGF0aWMgY29uc3QgaW50IGNubF9yYXRlc1tdID0geyAxNjIwMDAsIDIx NjAwMCwgMjcwMDAwLAo+ICBzdGF0aWMgY29uc3QgaW50IGRlZmF1bHRfcmF0ZXNbXSA9IHsgMTYy MDAwLCAyNzAwMDAsIDU0MDAwMCB9Owo+ICAKPiAgLyoqCj4gLSAqIGlzX2VkcCAtIGlzIHRoZSBn aXZlbiBwb3J0IGF0dGFjaGVkIHRvIGFuIGVEUCBwYW5lbCAoZWl0aGVyIENQVSBvciBQQ0gpCj4g KyAqIGludGVsX2RwX2lzX2VkcCAtIGlzIHRoZSBnaXZlbiBwb3J0IGF0dGFjaGVkIHRvIGFuIGVE UCBwYW5lbCAoZWl0aGVyIENQVSBvciBQQ0gpCj4gICAqIEBpbnRlbF9kcDogRFAgc3RydWN0Cj4g ICAqCj4gICAqIElmIGEgQ1BVIG9yIFBDSCBEUCBvdXRwdXQgaXMgYXR0YWNoZWQgdG8gYW4gZURQ IHBhbmVsLCB0aGlzIGZ1bmN0aW9uCj4gICAqIHdpbGwgcmV0dXJuIHRydWUsIGFuZCBmYWxzZSBv dGhlcndpc2UuCj4gICAqLwo+IC1zdGF0aWMgYm9vbCBpc19lZHAoc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCkKPiArYm9vbCBpbnRlbF9kcF9pc19lZHAoc3RydWN0IGludGVsX2RwICppbnRlbF9k cCkKPiAgewo+ICAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQgPSBk cF90b19kaWdfcG9ydChpbnRlbF9kcCk7Cj4gIAo+IEBAIC0zODgsNyArMzg4LDcgQEAgaW50ZWxf ZHBfbW9kZV92YWxpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICAKPiAgCW1h eF9kb3RjbGsgPSBpbnRlbF9kcF9kb3duc3RyZWFtX21heF9kb3RjbG9jayhpbnRlbF9kcCk7Cj4g IAo+IC0JaWYgKGlzX2VkcChpbnRlbF9kcCkgJiYgZml4ZWRfbW9kZSkgewo+ICsJaWYgKGludGVs X2RwX2lzX2VkcChpbnRlbF9kcCkgJiYgZml4ZWRfbW9kZSkgewo+ICAJCWlmIChtb2RlLT5oZGlz cGxheSA+IGZpeGVkX21vZGUtPmhkaXNwbGF5KQo+ICAJCQlyZXR1cm4gTU9ERV9QQU5FTDsKPiAg Cj4gQEAgLTU5Nyw3ICs1OTcsNyBAQCB2bHZfcG93ZXJfc2VxdWVuY2VyX3BpcGUoc3RydWN0IGlu dGVsX2RwICppbnRlbF9kcCkKPiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5wcHNf bXV0ZXgpOwo+ICAKPiAgCS8qIFdlIHNob3VsZCBuZXZlciBsYW5kIGhlcmUgd2l0aCByZWd1bGFy IERQIHBvcnRzICovCj4gLQlXQVJOX09OKCFpc19lZHAoaW50ZWxfZHApKTsKPiArCVdBUk5fT04o IWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpOwo+ICAKPiAgCVdBUk5fT04oaW50ZWxfZHAtPmFj dGl2ZV9waXBlICE9IElOVkFMSURfUElQRSAmJgo+ICAJCWludGVsX2RwLT5hY3RpdmVfcGlwZSAh PSBpbnRlbF9kcC0+cHBzX3BpcGUpOwo+IEBAIC02NDQsNyArNjQ0LDcgQEAgYnh0X3Bvd2VyX3Nl cXVlbmNlcl9pZHgoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiAgCWxvY2tkZXBfYXNzZXJ0 X2hlbGQoJmRldl9wcml2LT5wcHNfbXV0ZXgpOwo+ICAKPiAgCS8qIFdlIHNob3VsZCBuZXZlciBs YW5kIGhlcmUgd2l0aCByZWd1bGFyIERQIHBvcnRzICovCj4gLQlXQVJOX09OKCFpc19lZHAoaW50 ZWxfZHApKTsKPiArCVdBUk5fT04oIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpOwo+ICAKPiAg CS8qCj4gIAkgKiBUT0RPOiBCWFQgaGFzIDIgUFBTIGluc3RhbmNlcy4gVGhlIGNvcnJlY3QgcG9y dC0+UFBTIGluc3RhbmNlCj4gQEAgLTg0Nyw3ICs4NDcsNyBAQCBzdGF0aWMgaW50IGVkcF9ub3Rp ZnlfaGFuZGxlcihzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sgKnRoaXMsIHVuc2lnbmVkIGxvbmcgY29k ZSwKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBpbnRlbF9kcF90b19kZXYoaW50ZWxfZHAp Owo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ ICAKPiAtCWlmICghaXNfZWRwKGludGVsX2RwKSB8fCBjb2RlICE9IFNZU19SRVNUQVJUKQo+ICsJ aWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApIHx8IGNvZGUgIT0gU1lTX1JFU1RBUlQpCj4g IAkJcmV0dXJuIDA7Cj4gIAo+ICAJcHBzX2xvY2soaW50ZWxfZHApOwo+IEBAIC05MDcsNyArOTA3 LDcgQEAgaW50ZWxfZHBfY2hlY2tfZWRwKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIAlz dHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfZHBfdG9fZGV2KGludGVsX2RwKTsKPiAgCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiAgCj4gLQlp ZiAoIWlzX2VkcChpbnRlbF9kcCkpCj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkp Cj4gIAkJcmV0dXJuOwo+ICAKPiAgCWlmICghZWRwX2hhdmVfcGFuZWxfcG93ZXIoaW50ZWxfZHAp ICYmICFlZHBfaGF2ZV9wYW5lbF92ZGQoaW50ZWxfZHApKSB7Cj4gQEAgLTE2ODEsNyArMTY4MSw3 IEBAIGludGVsX2RwX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy LAo+ICAJZWxzZQo+ICAJCXBpcGVfY29uZmlnLT5oYXNfYXVkaW8gPSBpbnRlbF9jb25uX3N0YXRl LT5mb3JjZV9hdWRpbyA9PSBIRE1JX0FVRElPX09OOwo+ICAKPiAtCWlmIChpc19lZHAoaW50ZWxf ZHApICYmIGludGVsX2Nvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZSkgewo+ICsJaWYgKGludGVs X2RwX2lzX2VkcChpbnRlbF9kcCkgJiYgaW50ZWxfY29ubmVjdG9yLT5wYW5lbC5maXhlZF9tb2Rl KSB7Cj4gIAkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKnBhbmVsX21vZGUgPQo+ICAJCQlpbnRl bF9jb25uZWN0b3ItPnBhbmVsLmFsdF9maXhlZF9tb2RlOwo+ICAJCXN0cnVjdCBkcm1fZGlzcGxh eV9tb2RlICpyZXFfbW9kZSA9ICZwaXBlX2NvbmZpZy0+YmFzZS5tb2RlOwo+IEBAIC0xNzM2LDcg KzE3MzYsNyBAQCBpbnRlbF9kcF9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlciwKPiAgCS8qIFdhbGsgdGhyb3VnaCBhbGwgYnBwIHZhbHVlcy4gTHVja2lseSB0aGV5 J3JlIGFsbCBuaWNlbHkgc3BhY2VkIHdpdGggMgo+ICAJICogYnBjIGluIGJldHdlZW4uICovCj4g IAlicHAgPSBpbnRlbF9kcF9jb21wdXRlX2JwcChpbnRlbF9kcCwgcGlwZV9jb25maWcpOwo+IC0J aWYgKGlzX2VkcChpbnRlbF9kcCkpIHsKPiArCWlmIChpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHAp KSB7Cj4gIAo+ICAJCS8qIEdldCBicHAgZnJvbSB2YnQgb25seSBmb3IgcGFuZWxzIHRoYXQgZG9u dCBoYXZlIGJwcCBpbiBlZGlkICovCj4gIAkJaWYgKGludGVsX2Nvbm5lY3Rvci0+YmFzZS5kaXNw bGF5X2luZm8uYnBjID09IDAgJiYKPiBAQCAtMTgyOSw3ICsxODI5LDcgQEAgaW50ZWxfZHBfY29t cHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkgKiBEUExMMCBW Q08gbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gZ2V0IHRoZSBjb3JyZWN0Cj4gIAkgKiBjbG9j ayBmb3IgZURQLiBUaGlzIHdpbGwgYWZmZWN0IGNkY2xrIGFzIHdlbGwuCj4gIAkgKi8KPiAtCWlm IChpc19lZHAoaW50ZWxfZHApICYmIElTX0dFTjlfQkMoZGV2X3ByaXYpKSB7Cj4gKwlpZiAoaW50 ZWxfZHBfaXNfZWRwKGludGVsX2RwKSAmJiBJU19HRU45X0JDKGRldl9wcml2KSkgewo+ICAJCWlu dCB2Y287Cj4gIAo+ICAJCXN3aXRjaCAocGlwZV9jb25maWctPnBvcnRfY2xvY2sgLyAyKSB7Cj4g QEAgLTIwNjksNyArMjA2OSw3IEBAIHN0YXRpYyBib29sIGVkcF9wYW5lbF92ZGRfb24oc3RydWN0 IGludGVsX2RwICppbnRlbF9kcCkKPiAgCj4gIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJp di0+cHBzX211dGV4KTsKPiAgCj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkpCj4gKwlpZiAoIWlu dGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAKPiAgCWNhbmNl bF9kZWxheWVkX3dvcmsoJmludGVsX2RwLT5wYW5lbF92ZGRfd29yayk7Cj4gQEAgLTIxMTksNyAr MjExOSw3IEBAIHZvaWQgaW50ZWxfZWRwX3BhbmVsX3ZkZF9vbihzdHJ1Y3QgaW50ZWxfZHAgKmlu dGVsX2RwKQo+ICB7Cj4gIAlib29sIHZkZDsKPiAgCj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkp Cj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4gIAkJcmV0dXJuOwo+ICAKPiAg CXBwc19sb2NrKGludGVsX2RwKTsKPiBAQCAtMjIwMyw3ICsyMjAzLDcgQEAgc3RhdGljIHZvaWQg ZWRwX3BhbmVsX3ZkZF9vZmYoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwgYm9vbCBzeW5jKQo+ ICAKPiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5wcHNfbXV0ZXgpOwo+ICAKPiAt CWlmICghaXNfZWRwKGludGVsX2RwKSkKPiArCWlmICghaW50ZWxfZHBfaXNfZWRwKGludGVsX2Rw KSkKPiAgCQlyZXR1cm47Cj4gIAo+ICAJSTkxNV9TVEFURV9XQVJOKCFpbnRlbF9kcC0+d2FudF9w YW5lbF92ZGQsICJlRFAgcG9ydCAlYyBWREQgbm90IGZvcmNlZCBvbiIsCj4gQEAgLTIyMjYsNyAr MjIyNiw3IEBAIHN0YXRpYyB2b2lkIGVkcF9wYW5lbF9vbihzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwKQo+ICAKPiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5wcHNfbXV0ZXgpOwo+ ICAKPiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPiArCWlmICghaW50ZWxfZHBfaXNfZWRwKGlu dGVsX2RwKSkKPiAgCQlyZXR1cm47Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygiVHVybiBlRFAgcG9y dCAlYyBwYW5lbCBwb3dlciBvblxuIiwKPiBAQCAtMjI2Nyw3ICsyMjY3LDcgQEAgc3RhdGljIHZv aWQgZWRwX3BhbmVsX29uKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIAo+ICB2b2lkIGlu dGVsX2VkcF9wYW5lbF9vbihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICB7Cj4gLQlpZiAo IWlzX2VkcChpbnRlbF9kcCkpCj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4g IAkJcmV0dXJuOwo+ICAKPiAgCXBwc19sb2NrKGludGVsX2RwKTsKPiBAQCAtMjI4NSw3ICsyMjg1 LDcgQEAgc3RhdGljIHZvaWQgZWRwX3BhbmVsX29mZihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2Rw KQo+ICAKPiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5wcHNfbXV0ZXgpOwo+ICAK PiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPiArCWlmICghaW50ZWxfZHBfaXNfZWRwKGludGVs X2RwKSkKPiAgCQlyZXR1cm47Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygiVHVybiBlRFAgcG9ydCAl YyBwYW5lbCBwb3dlciBvZmZcbiIsCj4gQEAgLTIzMTYsNyArMjMxNiw3IEBAIHN0YXRpYyB2b2lk IGVkcF9wYW5lbF9vZmYoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiAgCj4gIHZvaWQgaW50 ZWxfZWRwX3BhbmVsX29mZihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICB7Cj4gLQlpZiAo IWlzX2VkcChpbnRlbF9kcCkpCj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4g IAkJcmV0dXJuOwo+ICAKPiAgCXBwc19sb2NrKGludGVsX2RwKTsKPiBAQCAtMjM2MCw3ICsyMzYw LDcgQEAgdm9pZCBpbnRlbF9lZHBfYmFja2xpZ2h0X29uKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlLAo+ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0g ZW5jX3RvX2ludGVsX2RwKGNvbm5fc3RhdGUtPmJlc3RfZW5jb2Rlcik7Cj4gIAo+IC0JaWYgKCFp c19lZHAoaW50ZWxfZHApKQo+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKQo+ICAJ CXJldHVybjsKPiAgCj4gIAlEUk1fREVCVUdfS01TKCJcbiIpOwo+IEBAIC0yMzc3LDcgKzIzNzcs NyBAQCBzdGF0aWMgdm9pZCBfaW50ZWxfZWRwX2JhY2tsaWdodF9vZmYoc3RydWN0IGludGVsX2Rw ICppbnRlbF9kcCkKPiAgCXUzMiBwcDsKPiAgCWk5MTVfcmVnX3QgcHBfY3RybF9yZWc7Cj4gIAo+ IC0JaWYgKCFpc19lZHAoaW50ZWxfZHApKQo+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxf ZHApKQo+ICAJCXJldHVybjsKPiAgCj4gIAlwcHNfbG9jayhpbnRlbF9kcCk7Cj4gQEAgLTI0MDEs NyArMjQwMSw3IEBAIHZvaWQgaW50ZWxfZWRwX2JhY2tsaWdodF9vZmYoY29uc3Qgc3RydWN0IGRy bV9jb25uZWN0b3Jfc3RhdGUgKm9sZF9jb25uX3N0YXRlKQo+ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxf ZHAgKmludGVsX2RwID0gZW5jX3RvX2ludGVsX2RwKG9sZF9jb25uX3N0YXRlLT5iZXN0X2VuY29k ZXIpOwo+ICAKPiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPiArCWlmICghaW50ZWxfZHBfaXNf ZWRwKGludGVsX2RwKSkKPiAgCQlyZXR1cm47Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygiXG4iKTsK PiBAQCAtMjY2Niw3ICsyNjY2LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHBfZ2V0X2NvbmZpZyhz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQlpbnRlbF9kb3RjbG9ja19jYWxjdWxh dGUocGlwZV9jb25maWctPnBvcnRfY2xvY2ssCj4gIAkJCQkJICZwaXBlX2NvbmZpZy0+ZHBfbV9u KTsKPiAgCj4gLQlpZiAoaXNfZWRwKGludGVsX2RwKSAmJiBkZXZfcHJpdi0+dmJ0LmVkcC5icHAg JiYKPiArCWlmIChpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApICYmIGRldl9wcml2LT52YnQuZWRw LmJwcCAmJgo+ICAJICAgIHBpcGVfY29uZmlnLT5waXBlX2JwcCA+IGRldl9wcml2LT52YnQuZWRw LmJwcCkgewo+ICAJCS8qCj4gIAkJICogVGhpcyBpcyBhIGJpZyBmYXQgdWdseSBoYWNrLgo+IEBA IC0zMDQwLDcgKzMwNDAsNyBAQCBzdGF0aWMgdm9pZCB2bHZfaW5pdF9wYW5lbF9wb3dlcl9zZXF1 ZW5jZXIoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiAgCj4gIAlpbnRlbF9kcC0+YWN0aXZl X3BpcGUgPSBjcnRjLT5waXBlOwo+ICAKPiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPiArCWlm ICghaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkKPiAgCQlyZXR1cm47Cj4gIAo+ICAJLyogbm93 IGl0J3MgYWxsIG91cnMgKi8KPiBAQCAtMzc4NCw3ICszNzg0LDcgQEAgaW50ZWxfZHBfZ2V0X2Rw Y2Qoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICAJ LyogRG9uJ3QgY2xvYmJlciBjYWNoZWQgZURQIHJhdGVzLiAqLwo+IC0JaWYgKCFpc19lZHAoaW50 ZWxfZHApKSB7Cj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpIHsKPiAgCQlpbnRl bF9kcF9zZXRfc2lua19yYXRlcyhpbnRlbF9kcCk7Cj4gIAkJaW50ZWxfZHBfc2V0X2NvbW1vbl9y YXRlcyhpbnRlbF9kcCk7Cj4gIAl9Cj4gQEAgLTM4MDYsNyArMzgwNiw3IEBAIGludGVsX2RwX2dl dF9kcGNkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIAkgKiBkb3duc3RyZWFtIHBvcnQg aW5mb3JtYXRpb24uIFNvLCBhbiBlYXJseSByZXR1cm4gaGVyZSBzYXZlcwo+ICAJICogdGltZSBm cm9tIHBlcmZvcm1pbmcgb3RoZXIgb3BlcmF0aW9ucyB3aGljaCBhcmUgbm90IHJlcXVpcmVkLgo+ ICAJICovCj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkgJiYgIWludGVsX2RwLT5zaW5rX2NvdW50 KQo+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApICYmICFpbnRlbF9kcC0+c2lua19j b3VudCkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICAJaWYgKCFkcm1fZHBfaXNfYnJhbmNoKGlu dGVsX2RwLT5kcGNkKSkKPiBAQCAtNDM5Niw3ICs0Mzk2LDcgQEAgaW50ZWxfZHBfZGV0ZWN0X2Rw Y2Qoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiAgCWlmICghaW50ZWxfZHBfZ2V0X2RwY2Qo aW50ZWxfZHApKQo+ICAJCXJldHVybiBjb25uZWN0b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKPiAg Cj4gLQlpZiAoaXNfZWRwKGludGVsX2RwKSkKPiArCWlmIChpbnRlbF9kcF9pc19lZHAoaW50ZWxf ZHApKQo+ICAJCXJldHVybiBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZDsKPiAgCj4gIAkvKiBp ZiB0aGVyZSdzIG5vIGRvd25zdHJlYW0gcG9ydCwgd2UncmUgZG9uZSAqLwo+IEBAIC00NzEyLDcg KzQ3MTIsNyBAQCBpbnRlbF9kcF9sb25nX3B1bHNlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmlu dGVsX2Nvbm5lY3RvcikKPiAgCWludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KHRvX2k5MTUoZGV2KSwg aW50ZWxfZHAtPmF1eF9wb3dlcl9kb21haW4pOwo+ICAKPiAgCS8qIENhbid0IGRpc2Nvbm5lY3Qg ZURQLCBidXQgeW91IGNhbiBjbG9zZSB0aGUgbGlkLi4uICovCj4gLQlpZiAoaXNfZWRwKGludGVs X2RwKSkKPiArCWlmIChpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKQo+ICAJCXN0YXR1cyA9IGVk cF9kZXRlY3QoaW50ZWxfZHApOwo+ICAJZWxzZSBpZiAoaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5l Y3RlZCh0b19pOTE1KGRldiksCj4gIAkJCQkJICAgICAgZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHAp KSkKPiBAQCAtNDc5Miw3ICs0NzkyLDcgQEAgaW50ZWxfZHBfbG9uZ19wdWxzZShzdHJ1Y3QgaW50 ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IpCj4gIAlpbnRlbF9kcC0+YXV4LmkyY19kZWZl cl9jb3VudCA9IDA7Cj4gIAo+ICAJaW50ZWxfZHBfc2V0X2VkaWQoaW50ZWxfZHApOwo+IC0JaWYg KGlzX2VkcChpbnRlbF9kcCkgfHwgaW50ZWxfY29ubmVjdG9yLT5kZXRlY3RfZWRpZCkKPiArCWlm IChpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApIHx8IGludGVsX2Nvbm5lY3Rvci0+ZGV0ZWN0X2Vk aWQpCj4gIAkJc3RhdHVzID0gY29ubmVjdG9yX3N0YXR1c19jb25uZWN0ZWQ7Cj4gIAlpbnRlbF9k cC0+ZGV0ZWN0X2RvbmUgPSB0cnVlOwo+ICAKPiBAQCAtNDg3Niw3ICs0ODc2LDcgQEAgc3RhdGlj IGludCBpbnRlbF9kcF9nZXRfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikK PiAgCX0KPiAgCj4gIAkvKiBpZiBlRFAgaGFzIG5vIEVESUQsIGZhbGwgYmFjayB0byBmaXhlZCBt b2RlICovCj4gLQlpZiAoaXNfZWRwKGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3RvcikpICYmCj4g KwlpZiAoaW50ZWxfZHBfaXNfZWRwKGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3RvcikpICYmCj4g IAkgICAgaW50ZWxfY29ubmVjdG9yLT5wYW5lbC5maXhlZF9tb2RlKSB7Cj4gIAkJc3RydWN0IGRy bV9kaXNwbGF5X21vZGUgKm1vZGU7Cj4gIAo+IEBAIC00OTI3LDggKzQ5MjcsMTAgQEAgaW50ZWxf ZHBfY29ubmVjdG9yX2Rlc3Ryb3koc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiAg CWlmICghSVNfRVJSX09SX05VTEwoaW50ZWxfY29ubmVjdG9yLT5lZGlkKSkKPiAgCQlrZnJlZShp bnRlbF9jb25uZWN0b3ItPmVkaWQpOwo+ICAKPiAtCS8qIENhbid0IGNhbGwgaXNfZWRwKCkgc2lu Y2UgdGhlIGVuY29kZXIgbWF5IGhhdmUgYmVlbiBkZXN0cm95ZWQKPiAtCSAqIGFscmVhZHkuICov Cj4gKwkvKgo+ICsJICogQ2FuJ3QgY2FsbCBpbnRlbF9kcF9pc19lZHAoKSBzaW5jZSB0aGUgZW5j b2RlciBtYXkgaGF2ZSBiZWVuCj4gKwkgKiBkZXN0cm95ZWQgYWxyZWFkeS4KPiArCSAqLwo+ICAJ aWYgKGNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUgPT0gRFJNX01PREVfQ09OTkVDVE9SX2VEUCkK PiAgCQlpbnRlbF9wYW5lbF9maW5pKCZpbnRlbF9jb25uZWN0b3ItPnBhbmVsKTsKPiAgCj4gQEAg LTQ5NDIsNyArNDk0NCw3IEBAIHZvaWQgaW50ZWxfZHBfZW5jb2Rlcl9kZXN0cm95KHN0cnVjdCBk cm1fZW5jb2RlciAqZW5jb2RlcikKPiAgCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSAmaW50 ZWxfZGlnX3BvcnQtPmRwOwo+ICAKPiAgCWludGVsX2RwX21zdF9lbmNvZGVyX2NsZWFudXAoaW50 ZWxfZGlnX3BvcnQpOwo+IC0JaWYgKGlzX2VkcChpbnRlbF9kcCkpIHsKPiArCWlmIChpbnRlbF9k cF9pc19lZHAoaW50ZWxfZHApKSB7Cj4gIAkJY2FuY2VsX2RlbGF5ZWRfd29ya19zeW5jKCZpbnRl bF9kcC0+cGFuZWxfdmRkX3dvcmspOwo+ICAJCS8qCj4gIAkJICogdmRkIG1pZ2h0IHN0aWxsIGJl IGVuYWJsZWQgZG8gdG8gdGhlIGRlbGF5ZWQgdmRkIG9mZi4KPiBAQCAtNDk2OCw3ICs0OTcwLDcg QEAgdm9pZCBpbnRlbF9kcF9lbmNvZGVyX3N1c3BlbmQoc3RydWN0IGludGVsX2VuY29kZXIgKmlu dGVsX2VuY29kZXIpCj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSBlbmNfdG9f aW50ZWxfZHAoJmludGVsX2VuY29kZXItPmJhc2UpOwo+ICAKPiAtCWlmICghaXNfZWRwKGludGVs X2RwKSkKPiArCWlmICghaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkKPiAgCQlyZXR1cm47Cj4g IAo+ICAJLyoKPiBAQCAtNTAzNiw3ICs1MDM4LDcgQEAgdm9pZCBpbnRlbF9kcF9lbmNvZGVyX3Jl c2V0KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKPiAgCWlmIChJU19WQUxMRVlWSUVXKGRl dl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRldl9wcml2KSkKPiAgCQlpbnRlbF9kcC0+YWN0aXZl X3BpcGUgPSB2bHZfYWN0aXZlX3BpcGUoaW50ZWxfZHApOwo+ICAKPiAtCWlmIChpc19lZHAoaW50 ZWxfZHApKSB7Cj4gKwlpZiAoaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkgewo+ICAJCS8qIFJl aW5pdCB0aGUgcG93ZXIgc2VxdWVuY2VyLCBpbiBjYXNlIEJJT1MgZGlkIHNvbWV0aGluZyB3aXRo IGl0LiAqLwo+ICAJCWludGVsX2RwX3Bwc19pbml0KGVuY29kZXItPmRldiwgaW50ZWxfZHApOwo+ ICAJCWludGVsX2VkcF9wYW5lbF92ZGRfc2FuaXRpemUoaW50ZWxfZHApOwo+IEBAIC01MTYwLDcg KzUxNjIsNyBAQCBpbnRlbF9kcF9hZGRfcHJvcGVydGllcyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwLCBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdAo+ICAJaW50ZWxfYXR0YWNoX2ZvcmNl X2F1ZGlvX3Byb3BlcnR5KGNvbm5lY3Rvcik7Cj4gIAlpbnRlbF9hdHRhY2hfYnJvYWRjYXN0X3Jn Yl9wcm9wZXJ0eShjb25uZWN0b3IpOwo+ICAKPiAtCWlmIChpc19lZHAoaW50ZWxfZHApKSB7Cj4g KwlpZiAoaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkgewo+ICAJCXUzMiBhbGxvd2VkX3NjYWxl cnM7Cj4gIAo+ICAJCWFsbG93ZWRfc2NhbGVycyA9IEJJVChEUk1fTU9ERV9TQ0FMRV9BU1BFQ1Qp IHwgQklUKERSTV9NT0RFX1NDQUxFX0ZVTExTQ1JFRU4pOwo+IEBAIC01ODI2LDcgKzU4MjgsNyBA QCBzdGF0aWMgYm9vbCBpbnRlbF9lZHBfaW5pdF9jb25uZWN0b3Ioc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCwKPiAgCXN0cnVjdCBlZGlkICplZGlkOwo+ICAJZW51bSBwaXBlIHBpcGUgPSBJTlZB TElEX1BJUEU7Cj4gIAo+IC0JaWYgKCFpc19lZHAoaW50ZWxfZHApKQo+ICsJaWYgKCFpbnRlbF9k cF9pc19lZHAoaW50ZWxfZHApKQo+ICAJCXJldHVybiB0cnVlOwo+ICAKPiAgCS8qCj4gQEAgLTYw NjAsNyArNjA2Miw4IEBAIGludGVsX2RwX2luaXRfY29ubmVjdG9yKHN0cnVjdCBpbnRlbF9kaWdp dGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LAo+ICAKPiAgCS8qIGVEUCBvbmx5IG9uIHBvcnQgQiBh bmQvb3IgQyBvbiB2bHYvY2h2ICovCj4gIAlpZiAoV0FSTl9PTigoSVNfVkFMTEVZVklFVyhkZXZf cHJpdikgfHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpICYmCj4gLQkJICAgIGlzX2VkcChpbnRl bF9kcCkgJiYgcG9ydCAhPSBQT1JUX0IgJiYgcG9ydCAhPSBQT1JUX0MpKQo+ICsJCSAgICBpbnRl bF9kcF9pc19lZHAoaW50ZWxfZHApICYmCj4gKwkJICAgIHBvcnQgIT0gUE9SVF9CICYmIHBvcnQg IT0gUE9SVF9DKSkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICAJRFJNX0RFQlVHX0tNUygiQWRk aW5nICVzIGNvbm5lY3RvciBvbiBwb3J0ICVjXG4iLAo+IEBAIC02MDg4LDcgKzYwOTEsNyBAQCBp bnRlbF9kcF9pbml0X2Nvbm5lY3RvcihzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9k aWdfcG9ydCwKPiAgCQlpbnRlbF9jb25uZWN0b3ItPmdldF9od19zdGF0ZSA9IGludGVsX2Nvbm5l Y3Rvcl9nZXRfaHdfc3RhdGU7Cj4gIAo+ICAJLyogaW5pdCBNU1Qgb24gcG9ydHMgdGhhdCBjYW4g c3VwcG9ydCBpdCAqLwo+IC0JaWYgKEhBU19EUF9NU1QoZGV2X3ByaXYpICYmICFpc19lZHAoaW50 ZWxfZHApICYmCj4gKwlpZiAoSEFTX0RQX01TVChkZXZfcHJpdikgJiYgIWludGVsX2RwX2lzX2Vk cChpbnRlbF9kcCkgJiYKPiAgCSAgICAocG9ydCA9PSBQT1JUX0IgfHwgcG9ydCA9PSBQT1JUX0Mg fHwgcG9ydCA9PSBQT1JUX0QpKQo+ICAJCWludGVsX2RwX21zdF9lbmNvZGVyX2luaXQoaW50ZWxf ZGlnX3BvcnQsCj4gIAkJCQkJICBpbnRlbF9jb25uZWN0b3ItPmJhc2UuYmFzZS5pZCk7Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBpbmRleCA2OTBlM2I2N2RjMWMuLjI5NDBkMzkzZWNmZCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTE0OTksNiArMTQ5OSw3IEBAIGlu dCBpbnRlbF9kcF9zaW5rX2NyYyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCB1OCAqY3JjKTsK PiAgYm9vbCBpbnRlbF9kcF9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5j b2RlciwKPiAgCQkJICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcsCj4g IAkJCSAgICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwo+ICtib29s IGludGVsX2RwX2lzX2VkcChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKTsKPiAgYm9vbCBpbnRl bF9kcF9pc19wb3J0X2VkcChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0g cG9ydCBwb3J0KTsKPiAgZW51bSBpcnFyZXR1cm4gaW50ZWxfZHBfaHBkX3B1bHNlKHN0cnVjdCBp bnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LAo+ICAJCQkJICBib29sIGxvbmdfaHBk KTsKPiAtLSAKPiAyLjExLjAKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==