From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 2/2] drm/i915/dp: make is_edp non-static and rename to intel_dp_is_edp Date: Mon, 21 Aug 2017 11:50:24 +0300 Message-ID: <871so5719r.fsf@nikula.org> References: <20170818093020.19160-1-jani.nikula@intel.com> <20170818093020.19160-2-jani.nikula@intel.com> <20170818191542.GD27365@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3015289E01 for ; Mon, 21 Aug 2017 08:45:34 +0000 (UTC) In-Reply-To: <20170818191542.GD27365@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Manasi Navare Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAxOCBBdWcgMjAxNywgTWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVs LmNvbT4gd3JvdGU6Cj4gVGhhbmtzIGZvciB0aGUgcGF0Y2gsIHdpbGwgcmViYXNlIG15IHBhdGNo IG9uIHRvcCBvZiB0aGlzLgoKQm90aCBwdXNoZWQsIHRoYW5rcyBmb3IgdGhlIHJldmlld3MuCgpC UiwKSmFuaS4KCgo+Cj4gTWFuYXNpCj4KPiBPbiBGcmksIEF1ZyAxOCwgMjAxNyBhdCAxMjozMDoy MFBNICswMzAwLCBKYW5pIE5pa3VsYSB3cm90ZToKPj4gRXhwb3NlIGFjcm9zcyBkcml2ZXIgZm9y IGZ1dHVyZSB3b3JrLiBObyBmdW5jdGlvbmFsIGNoYW5nZXMuCj4+IAo+PiBDYzogTWFuYXNpIE5h dmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4KPj4gQ2M6IEppbSBCcmlkZSA8amltLmJy aWRlQGxpbnV4LmludGVsLmNvbT4KPj4gU2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmku bmlrdWxhQGludGVsLmNvbT4KPgo+IFJldmlld2VkLWJ5OiBNYW5hc2kgTmF2YXJlIDxtYW5hc2ku ZC5uYXZhcmVAaW50ZWwuY29tPgo+Cj4+IC0tLQo+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHAuYyAgfCA3NyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCj4+ ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCB8ICAxICsKPj4gIDIgZmlsZXMgY2hh bmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRpb25zKC0pCj4+IAo+PiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RwLmMKPj4gaW5kZXggMjllZDFkZWI5Yzg0Li5lMzg1NjU4MjlkMTkgMTAwNjQ0Cj4+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+PiBAQCAtMTAzLDEzICsxMDMsMTMgQEAgc3RhdGljIGNv bnN0IGludCBjbmxfcmF0ZXNbXSA9IHsgMTYyMDAwLCAyMTYwMDAsIDI3MDAwMCwKPj4gIHN0YXRp YyBjb25zdCBpbnQgZGVmYXVsdF9yYXRlc1tdID0geyAxNjIwMDAsIDI3MDAwMCwgNTQwMDAwIH07 Cj4+ICAKPj4gIC8qKgo+PiAtICogaXNfZWRwIC0gaXMgdGhlIGdpdmVuIHBvcnQgYXR0YWNoZWQg dG8gYW4gZURQIHBhbmVsIChlaXRoZXIgQ1BVIG9yIFBDSCkKPj4gKyAqIGludGVsX2RwX2lzX2Vk cCAtIGlzIHRoZSBnaXZlbiBwb3J0IGF0dGFjaGVkIHRvIGFuIGVEUCBwYW5lbCAoZWl0aGVyIENQ VSBvciBQQ0gpCj4+ICAgKiBAaW50ZWxfZHA6IERQIHN0cnVjdAo+PiAgICoKPj4gICAqIElmIGEg Q1BVIG9yIFBDSCBEUCBvdXRwdXQgaXMgYXR0YWNoZWQgdG8gYW4gZURQIHBhbmVsLCB0aGlzIGZ1 bmN0aW9uCj4+ICAgKiB3aWxsIHJldHVybiB0cnVlLCBhbmQgZmFsc2Ugb3RoZXJ3aXNlLgo+PiAg ICovCj4+IC1zdGF0aWMgYm9vbCBpc19lZHAoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPj4g K2Jvb2wgaW50ZWxfZHBfaXNfZWRwKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4+ICB7Cj4+ ICAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQgPSBkcF90b19kaWdf cG9ydChpbnRlbF9kcCk7Cj4+ICAKPj4gQEAgLTM4OCw3ICszODgsNyBAQCBpbnRlbF9kcF9tb2Rl X3ZhbGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4+ICAKPj4gIAltYXhfZG90 Y2xrID0gaW50ZWxfZHBfZG93bnN0cmVhbV9tYXhfZG90Y2xvY2soaW50ZWxfZHApOwo+PiAgCj4+ IC0JaWYgKGlzX2VkcChpbnRlbF9kcCkgJiYgZml4ZWRfbW9kZSkgewo+PiArCWlmIChpbnRlbF9k cF9pc19lZHAoaW50ZWxfZHApICYmIGZpeGVkX21vZGUpIHsKPj4gIAkJaWYgKG1vZGUtPmhkaXNw bGF5ID4gZml4ZWRfbW9kZS0+aGRpc3BsYXkpCj4+ICAJCQlyZXR1cm4gTU9ERV9QQU5FTDsKPj4g IAo+PiBAQCAtNTk3LDcgKzU5Nyw3IEBAIHZsdl9wb3dlcl9zZXF1ZW5jZXJfcGlwZShzdHJ1Y3Qg aW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5w cHNfbXV0ZXgpOwo+PiAgCj4+ICAJLyogV2Ugc2hvdWxkIG5ldmVyIGxhbmQgaGVyZSB3aXRoIHJl Z3VsYXIgRFAgcG9ydHMgKi8KPj4gLQlXQVJOX09OKCFpc19lZHAoaW50ZWxfZHApKTsKPj4gKwlX QVJOX09OKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKTsKPj4gIAo+PiAgCVdBUk5fT04oaW50 ZWxfZHAtPmFjdGl2ZV9waXBlICE9IElOVkFMSURfUElQRSAmJgo+PiAgCQlpbnRlbF9kcC0+YWN0 aXZlX3BpcGUgIT0gaW50ZWxfZHAtPnBwc19waXBlKTsKPj4gQEAgLTY0NCw3ICs2NDQsNyBAQCBi eHRfcG93ZXJfc2VxdWVuY2VyX2lkeChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCWxv Y2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5wcHNfbXV0ZXgpOwo+PiAgCj4+ICAJLyogV2Ug c2hvdWxkIG5ldmVyIGxhbmQgaGVyZSB3aXRoIHJlZ3VsYXIgRFAgcG9ydHMgKi8KPj4gLQlXQVJO X09OKCFpc19lZHAoaW50ZWxfZHApKTsKPj4gKwlXQVJOX09OKCFpbnRlbF9kcF9pc19lZHAoaW50 ZWxfZHApKTsKPj4gIAo+PiAgCS8qCj4+ICAJICogVE9ETzogQlhUIGhhcyAyIFBQUyBpbnN0YW5j ZXMuIFRoZSBjb3JyZWN0IHBvcnQtPlBQUyBpbnN0YW5jZQo+PiBAQCAtODQ3LDcgKzg0Nyw3IEBA IHN0YXRpYyBpbnQgZWRwX25vdGlmeV9oYW5kbGVyKHN0cnVjdCBub3RpZmllcl9ibG9jayAqdGhp cywgdW5zaWduZWQgbG9uZyBjb2RlLAo+PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBpbnRl bF9kcF90b19kZXYoaW50ZWxfZHApOwo+PiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IHRvX2k5MTUoZGV2KTsKPj4gIAo+PiAtCWlmICghaXNfZWRwKGludGVsX2RwKSB8fCBj b2RlICE9IFNZU19SRVNUQVJUKQo+PiArCWlmICghaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSB8 fCBjb2RlICE9IFNZU19SRVNUQVJUKQo+PiAgCQlyZXR1cm4gMDsKPj4gIAo+PiAgCXBwc19sb2Nr KGludGVsX2RwKTsKPj4gQEAgLTkwNyw3ICs5MDcsNyBAQCBpbnRlbF9kcF9jaGVja19lZHAoc3Ry dWN0IGludGVsX2RwICppbnRlbF9kcCkKPj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50 ZWxfZHBfdG9fZGV2KGludGVsX2RwKTsKPj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KGRldik7Cj4+ICAKPj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkpCj4+ ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKQo+PiAgCQlyZXR1cm47Cj4+ICAKPj4g IAlpZiAoIWVkcF9oYXZlX3BhbmVsX3Bvd2VyKGludGVsX2RwKSAmJiAhZWRwX2hhdmVfcGFuZWxf dmRkKGludGVsX2RwKSkgewo+PiBAQCAtMTY4MSw3ICsxNjgxLDcgQEAgaW50ZWxfZHBfY29tcHV0 ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4+ICAJZWxzZQo+PiAgCQlw aXBlX2NvbmZpZy0+aGFzX2F1ZGlvID0gaW50ZWxfY29ubl9zdGF0ZS0+Zm9yY2VfYXVkaW8gPT0g SERNSV9BVURJT19PTjsKPj4gIAo+PiAtCWlmIChpc19lZHAoaW50ZWxfZHApICYmIGludGVsX2Nv bm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZSkgewo+PiArCWlmIChpbnRlbF9kcF9pc19lZHAoaW50 ZWxfZHApICYmIGludGVsX2Nvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZSkgewo+PiAgCQlzdHJ1 Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqcGFuZWxfbW9kZSA9Cj4+ICAJCQlpbnRlbF9jb25uZWN0b3It PnBhbmVsLmFsdF9maXhlZF9tb2RlOwo+PiAgCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqcmVx X21vZGUgPSAmcGlwZV9jb25maWctPmJhc2UubW9kZTsKPj4gQEAgLTE3MzYsNyArMTczNiw3IEBA IGludGVsX2RwX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ PiAgCS8qIFdhbGsgdGhyb3VnaCBhbGwgYnBwIHZhbHVlcy4gTHVja2lseSB0aGV5J3JlIGFsbCBu aWNlbHkgc3BhY2VkIHdpdGggMgo+PiAgCSAqIGJwYyBpbiBiZXR3ZWVuLiAqLwo+PiAgCWJwcCA9 IGludGVsX2RwX2NvbXB1dGVfYnBwKGludGVsX2RwLCBwaXBlX2NvbmZpZyk7Cj4+IC0JaWYgKGlz X2VkcChpbnRlbF9kcCkpIHsKPj4gKwlpZiAoaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkgewo+ PiAgCj4+ICAJCS8qIEdldCBicHAgZnJvbSB2YnQgb25seSBmb3IgcGFuZWxzIHRoYXQgZG9udCBo YXZlIGJwcCBpbiBlZGlkICovCj4+ICAJCWlmIChpbnRlbF9jb25uZWN0b3ItPmJhc2UuZGlzcGxh eV9pbmZvLmJwYyA9PSAwICYmCj4+IEBAIC0xODI5LDcgKzE4MjksNyBAQCBpbnRlbF9kcF9jb21w dXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPj4gIAkgKiBEUExMMCBW Q08gbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gZ2V0IHRoZSBjb3JyZWN0Cj4+ICAJICogY2xv Y2sgZm9yIGVEUC4gVGhpcyB3aWxsIGFmZmVjdCBjZGNsayBhcyB3ZWxsLgo+PiAgCSAqLwo+PiAt CWlmIChpc19lZHAoaW50ZWxfZHApICYmIElTX0dFTjlfQkMoZGV2X3ByaXYpKSB7Cj4+ICsJaWYg KGludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkgJiYgSVNfR0VOOV9CQyhkZXZfcHJpdikpIHsKPj4g IAkJaW50IHZjbzsKPj4gIAo+PiAgCQlzd2l0Y2ggKHBpcGVfY29uZmlnLT5wb3J0X2Nsb2NrIC8g Mikgewo+PiBAQCAtMjA2OSw3ICsyMDY5LDcgQEAgc3RhdGljIGJvb2wgZWRwX3BhbmVsX3ZkZF9v bihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCj4+ICAJbG9ja2RlcF9hc3NlcnRfaGVs ZCgmZGV2X3ByaXYtPnBwc19tdXRleCk7Cj4+ICAKPj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkp Cj4+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKQo+PiAgCQlyZXR1cm4gZmFsc2U7 Cj4+ICAKPj4gIAljYW5jZWxfZGVsYXllZF93b3JrKCZpbnRlbF9kcC0+cGFuZWxfdmRkX3dvcmsp Owo+PiBAQCAtMjExOSw3ICsyMTE5LDcgQEAgdm9pZCBpbnRlbF9lZHBfcGFuZWxfdmRkX29uKHN0 cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4+ICB7Cj4+ICAJYm9vbCB2ZGQ7Cj4+ICAKPj4gLQlp ZiAoIWlzX2VkcChpbnRlbF9kcCkpCj4+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHAp KQo+PiAgCQlyZXR1cm47Cj4+ICAKPj4gIAlwcHNfbG9jayhpbnRlbF9kcCk7Cj4+IEBAIC0yMjAz LDcgKzIyMDMsNyBAQCBzdGF0aWMgdm9pZCBlZHBfcGFuZWxfdmRkX29mZihzdHJ1Y3QgaW50ZWxf ZHAgKmludGVsX2RwLCBib29sIHN5bmMpCj4+ICAKPj4gIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZk ZXZfcHJpdi0+cHBzX211dGV4KTsKPj4gIAo+PiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPj4g KwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4+ICAJCXJldHVybjsKPj4gIAo+PiAg CUk5MTVfU1RBVEVfV0FSTighaW50ZWxfZHAtPndhbnRfcGFuZWxfdmRkLCAiZURQIHBvcnQgJWMg VkREIG5vdCBmb3JjZWQgb24iLAo+PiBAQCAtMjIyNiw3ICsyMjI2LDcgQEAgc3RhdGljIHZvaWQg ZWRwX3BhbmVsX29uKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4+ICAKPj4gIAlsb2NrZGVw X2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+cHBzX211dGV4KTsKPj4gIAo+PiAtCWlmICghaXNfZWRw KGludGVsX2RwKSkKPj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4+ICAJCXJl dHVybjsKPj4gIAo+PiAgCURSTV9ERUJVR19LTVMoIlR1cm4gZURQIHBvcnQgJWMgcGFuZWwgcG93 ZXIgb25cbiIsCj4+IEBAIC0yMjY3LDcgKzIyNjcsNyBAQCBzdGF0aWMgdm9pZCBlZHBfcGFuZWxf b24oc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPj4gIAo+PiAgdm9pZCBpbnRlbF9lZHBfcGFu ZWxfb24oc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPj4gIHsKPj4gLQlpZiAoIWlzX2VkcChp bnRlbF9kcCkpCj4+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKQo+PiAgCQlyZXR1 cm47Cj4+ICAKPj4gIAlwcHNfbG9jayhpbnRlbF9kcCk7Cj4+IEBAIC0yMjg1LDcgKzIyODUsNyBA QCBzdGF0aWMgdm9pZCBlZHBfcGFuZWxfb2ZmKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4+ ICAKPj4gIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+cHBzX211dGV4KTsKPj4gIAo+ PiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRl bF9kcCkpCj4+ICAJCXJldHVybjsKPj4gIAo+PiAgCURSTV9ERUJVR19LTVMoIlR1cm4gZURQIHBv cnQgJWMgcGFuZWwgcG93ZXIgb2ZmXG4iLAo+PiBAQCAtMjMxNiw3ICsyMzE2LDcgQEAgc3RhdGlj IHZvaWQgZWRwX3BhbmVsX29mZihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCj4+ICB2 b2lkIGludGVsX2VkcF9wYW5lbF9vZmYoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPj4gIHsK Pj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkpCj4+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50 ZWxfZHApKQo+PiAgCQlyZXR1cm47Cj4+ICAKPj4gIAlwcHNfbG9jayhpbnRlbF9kcCk7Cj4+IEBA IC0yMzYwLDcgKzIzNjAsNyBAQCB2b2lkIGludGVsX2VkcF9iYWNrbGlnaHRfb24oY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4+ICB7Cj4+ICAJc3RydWN0IGludGVs X2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcChjb25uX3N0YXRlLT5iZXN0X2VuY29kZXIp Owo+PiAgCj4+IC0JaWYgKCFpc19lZHAoaW50ZWxfZHApKQo+PiArCWlmICghaW50ZWxfZHBfaXNf ZWRwKGludGVsX2RwKSkKPj4gIAkJcmV0dXJuOwo+PiAgCj4+ICAJRFJNX0RFQlVHX0tNUygiXG4i KTsKPj4gQEAgLTIzNzcsNyArMjM3Nyw3IEBAIHN0YXRpYyB2b2lkIF9pbnRlbF9lZHBfYmFja2xp Z2h0X29mZihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCXUzMiBwcDsKPj4gIAlpOTE1 X3JlZ190IHBwX2N0cmxfcmVnOwo+PiAgCj4+IC0JaWYgKCFpc19lZHAoaW50ZWxfZHApKQo+PiAr CWlmICghaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkKPj4gIAkJcmV0dXJuOwo+PiAgCj4+ICAJ cHBzX2xvY2soaW50ZWxfZHApOwo+PiBAQCAtMjQwMSw3ICsyNDAxLDcgQEAgdm9pZCBpbnRlbF9l ZHBfYmFja2xpZ2h0X29mZihjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqb2xkX2Nv bm5fc3RhdGUpCj4+ICB7Cj4+ICAJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19p bnRlbF9kcChvbGRfY29ubl9zdGF0ZS0+YmVzdF9lbmNvZGVyKTsKPj4gIAo+PiAtCWlmICghaXNf ZWRwKGludGVsX2RwKSkKPj4gKwlpZiAoIWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4+ICAJ CXJldHVybjsKPj4gIAo+PiAgCURSTV9ERUJVR19LTVMoIlxuIik7Cj4+IEBAIC0yNjY2LDcgKzI2 NjYsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyLAo+PiAgCQlpbnRlbF9kb3RjbG9ja19jYWxjdWxhdGUocGlwZV9jb25maWct PnBvcnRfY2xvY2ssCj4+ICAJCQkJCSAmcGlwZV9jb25maWctPmRwX21fbik7Cj4+ICAKPj4gLQlp ZiAoaXNfZWRwKGludGVsX2RwKSAmJiBkZXZfcHJpdi0+dmJ0LmVkcC5icHAgJiYKPj4gKwlpZiAo aW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSAmJiBkZXZfcHJpdi0+dmJ0LmVkcC5icHAgJiYKPj4g IAkgICAgcGlwZV9jb25maWctPnBpcGVfYnBwID4gZGV2X3ByaXYtPnZidC5lZHAuYnBwKSB7Cj4+ ICAJCS8qCj4+ICAJCSAqIFRoaXMgaXMgYSBiaWcgZmF0IHVnbHkgaGFjay4KPj4gQEAgLTMwNDAs NyArMzA0MCw3IEBAIHN0YXRpYyB2b2lkIHZsdl9pbml0X3BhbmVsX3Bvd2VyX3NlcXVlbmNlcihz dHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCj4+ICAJaW50ZWxfZHAtPmFjdGl2ZV9waXBl ID0gY3J0Yy0+cGlwZTsKPj4gIAo+PiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPj4gKwlpZiAo IWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpCj4+ICAJCXJldHVybjsKPj4gIAo+PiAgCS8qIG5v dyBpdCdzIGFsbCBvdXJzICovCj4+IEBAIC0zNzg0LDcgKzM3ODQsNyBAQCBpbnRlbF9kcF9nZXRf ZHBjZChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCQlyZXR1cm4gZmFsc2U7Cj4+ICAK Pj4gIAkvKiBEb24ndCBjbG9iYmVyIGNhY2hlZCBlRFAgcmF0ZXMuICovCj4+IC0JaWYgKCFpc19l ZHAoaW50ZWxfZHApKSB7Cj4+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAoaW50ZWxfZHApKSB7Cj4+ ICAJCWludGVsX2RwX3NldF9zaW5rX3JhdGVzKGludGVsX2RwKTsKPj4gIAkJaW50ZWxfZHBfc2V0 X2NvbW1vbl9yYXRlcyhpbnRlbF9kcCk7Cj4+ICAJfQo+PiBAQCAtMzgwNiw3ICszODA2LDcgQEAg aW50ZWxfZHBfZ2V0X2RwY2Qoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPj4gIAkgKiBkb3du c3RyZWFtIHBvcnQgaW5mb3JtYXRpb24uIFNvLCBhbiBlYXJseSByZXR1cm4gaGVyZSBzYXZlcwo+ PiAgCSAqIHRpbWUgZnJvbSBwZXJmb3JtaW5nIG90aGVyIG9wZXJhdGlvbnMgd2hpY2ggYXJlIG5v dCByZXF1aXJlZC4KPj4gIAkgKi8KPj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkgJiYgIWludGVs X2RwLT5zaW5rX2NvdW50KQo+PiArCWlmICghaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSAmJiAh aW50ZWxfZHAtPnNpbmtfY291bnQpCj4+ICAJCXJldHVybiBmYWxzZTsKPj4gIAo+PiAgCWlmICgh ZHJtX2RwX2lzX2JyYW5jaChpbnRlbF9kcC0+ZHBjZCkpCj4+IEBAIC00Mzk2LDcgKzQzOTYsNyBA QCBpbnRlbF9kcF9kZXRlY3RfZHBjZChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+PiAgCWlm ICghaW50ZWxfZHBfZ2V0X2RwY2QoaW50ZWxfZHApKQo+PiAgCQlyZXR1cm4gY29ubmVjdG9yX3N0 YXR1c19kaXNjb25uZWN0ZWQ7Cj4+ICAKPj4gLQlpZiAoaXNfZWRwKGludGVsX2RwKSkKPj4gKwlp ZiAoaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkKPj4gIAkJcmV0dXJuIGNvbm5lY3Rvcl9zdGF0 dXNfY29ubmVjdGVkOwo+PiAgCj4+ICAJLyogaWYgdGhlcmUncyBubyBkb3duc3RyZWFtIHBvcnQs IHdlJ3JlIGRvbmUgKi8KPj4gQEAgLTQ3MTIsNyArNDcxMiw3IEBAIGludGVsX2RwX2xvbmdfcHVs c2Uoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yKQo+PiAgCWludGVsX2Rp c3BsYXlfcG93ZXJfZ2V0KHRvX2k5MTUoZGV2KSwgaW50ZWxfZHAtPmF1eF9wb3dlcl9kb21haW4p Owo+PiAgCj4+ICAJLyogQ2FuJ3QgZGlzY29ubmVjdCBlRFAsIGJ1dCB5b3UgY2FuIGNsb3NlIHRo ZSBsaWQuLi4gKi8KPj4gLQlpZiAoaXNfZWRwKGludGVsX2RwKSkKPj4gKwlpZiAoaW50ZWxfZHBf aXNfZWRwKGludGVsX2RwKSkKPj4gIAkJc3RhdHVzID0gZWRwX2RldGVjdChpbnRlbF9kcCk7Cj4+ ICAJZWxzZSBpZiAoaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZCh0b19pOTE1KGRldiksCj4+ ICAJCQkJCSAgICAgIGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKSkpCj4+IEBAIC00NzkyLDcgKzQ3 OTIsNyBAQCBpbnRlbF9kcF9sb25nX3B1bHNlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVs X2Nvbm5lY3RvcikKPj4gIAlpbnRlbF9kcC0+YXV4LmkyY19kZWZlcl9jb3VudCA9IDA7Cj4+ICAK Pj4gIAlpbnRlbF9kcF9zZXRfZWRpZChpbnRlbF9kcCk7Cj4+IC0JaWYgKGlzX2VkcChpbnRlbF9k cCkgfHwgaW50ZWxfY29ubmVjdG9yLT5kZXRlY3RfZWRpZCkKPj4gKwlpZiAoaW50ZWxfZHBfaXNf ZWRwKGludGVsX2RwKSB8fCBpbnRlbF9jb25uZWN0b3ItPmRldGVjdF9lZGlkKQo+PiAgCQlzdGF0 dXMgPSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZDsKPj4gIAlpbnRlbF9kcC0+ZGV0ZWN0X2Rv bmUgPSB0cnVlOwo+PiAgCj4+IEBAIC00ODc2LDcgKzQ4NzYsNyBAQCBzdGF0aWMgaW50IGludGVs X2RwX2dldF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+PiAgCX0KPj4g IAo+PiAgCS8qIGlmIGVEUCBoYXMgbm8gRURJRCwgZmFsbCBiYWNrIHRvIGZpeGVkIG1vZGUgKi8K Pj4gLQlpZiAoaXNfZWRwKGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3RvcikpICYmCj4+ICsJaWYg KGludGVsX2RwX2lzX2VkcChpbnRlbF9hdHRhY2hlZF9kcChjb25uZWN0b3IpKSAmJgo+PiAgCSAg ICBpbnRlbF9jb25uZWN0b3ItPnBhbmVsLmZpeGVkX21vZGUpIHsKPj4gIAkJc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKm1vZGU7Cj4+ICAKPj4gQEAgLTQ5MjcsOCArNDkyNywxMCBAQCBpbnRlbF9k cF9jb25uZWN0b3JfZGVzdHJveShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+PiAg CWlmICghSVNfRVJSX09SX05VTEwoaW50ZWxfY29ubmVjdG9yLT5lZGlkKSkKPj4gIAkJa2ZyZWUo aW50ZWxfY29ubmVjdG9yLT5lZGlkKTsKPj4gIAo+PiAtCS8qIENhbid0IGNhbGwgaXNfZWRwKCkg c2luY2UgdGhlIGVuY29kZXIgbWF5IGhhdmUgYmVlbiBkZXN0cm95ZWQKPj4gLQkgKiBhbHJlYWR5 LiAqLwo+PiArCS8qCj4+ICsJICogQ2FuJ3QgY2FsbCBpbnRlbF9kcF9pc19lZHAoKSBzaW5jZSB0 aGUgZW5jb2RlciBtYXkgaGF2ZSBiZWVuCj4+ICsJICogZGVzdHJveWVkIGFscmVhZHkuCj4+ICsJ ICovCj4+ICAJaWYgKGNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUgPT0gRFJNX01PREVfQ09OTkVD VE9SX2VEUCkKPj4gIAkJaW50ZWxfcGFuZWxfZmluaSgmaW50ZWxfY29ubmVjdG9yLT5wYW5lbCk7 Cj4+ICAKPj4gQEAgLTQ5NDIsNyArNDk0NCw3IEBAIHZvaWQgaW50ZWxfZHBfZW5jb2Rlcl9kZXN0 cm95KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKPj4gIAlzdHJ1Y3QgaW50ZWxfZHAgKmlu dGVsX2RwID0gJmludGVsX2RpZ19wb3J0LT5kcDsKPj4gIAo+PiAgCWludGVsX2RwX21zdF9lbmNv ZGVyX2NsZWFudXAoaW50ZWxfZGlnX3BvcnQpOwo+PiAtCWlmIChpc19lZHAoaW50ZWxfZHApKSB7 Cj4+ICsJaWYgKGludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkpIHsKPj4gIAkJY2FuY2VsX2RlbGF5 ZWRfd29ya19zeW5jKCZpbnRlbF9kcC0+cGFuZWxfdmRkX3dvcmspOwo+PiAgCQkvKgo+PiAgCQkg KiB2ZGQgbWlnaHQgc3RpbGwgYmUgZW5hYmxlZCBkbyB0byB0aGUgZGVsYXllZCB2ZGQgb2ZmLgo+ PiBAQCAtNDk2OCw3ICs0OTcwLDcgQEAgdm9pZCBpbnRlbF9kcF9lbmNvZGVyX3N1c3BlbmQoc3Ry dWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIpCj4+ICB7Cj4+ICAJc3RydWN0IGludGVs X2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcCgmaW50ZWxfZW5jb2Rlci0+YmFzZSk7Cj4+ ICAKPj4gLQlpZiAoIWlzX2VkcChpbnRlbF9kcCkpCj4+ICsJaWYgKCFpbnRlbF9kcF9pc19lZHAo aW50ZWxfZHApKQo+PiAgCQlyZXR1cm47Cj4+ICAKPj4gIAkvKgo+PiBAQCAtNTAzNiw3ICs1MDM4 LDcgQEAgdm9pZCBpbnRlbF9kcF9lbmNvZGVyX3Jlc2V0KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5j b2RlcikKPj4gIAlpZiAoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhk ZXZfcHJpdikpCj4+ICAJCWludGVsX2RwLT5hY3RpdmVfcGlwZSA9IHZsdl9hY3RpdmVfcGlwZShp bnRlbF9kcCk7Cj4+ICAKPj4gLQlpZiAoaXNfZWRwKGludGVsX2RwKSkgewo+PiArCWlmIChpbnRl bF9kcF9pc19lZHAoaW50ZWxfZHApKSB7Cj4+ICAJCS8qIFJlaW5pdCB0aGUgcG93ZXIgc2VxdWVu Y2VyLCBpbiBjYXNlIEJJT1MgZGlkIHNvbWV0aGluZyB3aXRoIGl0LiAqLwo+PiAgCQlpbnRlbF9k cF9wcHNfaW5pdChlbmNvZGVyLT5kZXYsIGludGVsX2RwKTsKPj4gIAkJaW50ZWxfZWRwX3BhbmVs X3ZkZF9zYW5pdGl6ZShpbnRlbF9kcCk7Cj4+IEBAIC01MTYwLDcgKzUxNjIsNyBAQCBpbnRlbF9k cF9hZGRfcHJvcGVydGllcyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCBzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdAo+PiAgCWludGVsX2F0dGFjaF9mb3JjZV9hdWRpb19wcm9wZXJ0eShj b25uZWN0b3IpOwo+PiAgCWludGVsX2F0dGFjaF9icm9hZGNhc3RfcmdiX3Byb3BlcnR5KGNvbm5l Y3Rvcik7Cj4+ICAKPj4gLQlpZiAoaXNfZWRwKGludGVsX2RwKSkgewo+PiArCWlmIChpbnRlbF9k cF9pc19lZHAoaW50ZWxfZHApKSB7Cj4+ICAJCXUzMiBhbGxvd2VkX3NjYWxlcnM7Cj4+ICAKPj4g IAkJYWxsb3dlZF9zY2FsZXJzID0gQklUKERSTV9NT0RFX1NDQUxFX0FTUEVDVCkgfCBCSVQoRFJN X01PREVfU0NBTEVfRlVMTFNDUkVFTik7Cj4+IEBAIC01ODI2LDcgKzU4MjgsNyBAQCBzdGF0aWMg Ym9vbCBpbnRlbF9lZHBfaW5pdF9jb25uZWN0b3Ioc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwK Pj4gIAlzdHJ1Y3QgZWRpZCAqZWRpZDsKPj4gIAllbnVtIHBpcGUgcGlwZSA9IElOVkFMSURfUElQ RTsKPj4gIAo+PiAtCWlmICghaXNfZWRwKGludGVsX2RwKSkKPj4gKwlpZiAoIWludGVsX2RwX2lz X2VkcChpbnRlbF9kcCkpCj4+ICAJCXJldHVybiB0cnVlOwo+PiAgCj4+ICAJLyoKPj4gQEAgLTYw NjAsNyArNjA2Miw4IEBAIGludGVsX2RwX2luaXRfY29ubmVjdG9yKHN0cnVjdCBpbnRlbF9kaWdp dGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LAo+PiAgCj4+ICAJLyogZURQIG9ubHkgb24gcG9ydCBC IGFuZC9vciBDIG9uIHZsdi9jaHYgKi8KPj4gIAlpZiAoV0FSTl9PTigoSVNfVkFMTEVZVklFVyhk ZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpICYmCj4+IC0JCSAgICBpc19lZHAo aW50ZWxfZHApICYmIHBvcnQgIT0gUE9SVF9CICYmIHBvcnQgIT0gUE9SVF9DKSkKPj4gKwkJICAg IGludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkgJiYKPj4gKwkJICAgIHBvcnQgIT0gUE9SVF9CICYm IHBvcnQgIT0gUE9SVF9DKSkKPj4gIAkJcmV0dXJuIGZhbHNlOwo+PiAgCj4+ICAJRFJNX0RFQlVH X0tNUygiQWRkaW5nICVzIGNvbm5lY3RvciBvbiBwb3J0ICVjXG4iLAo+PiBAQCAtNjA4OCw3ICs2 MDkxLDcgQEAgaW50ZWxfZHBfaW5pdF9jb25uZWN0b3Ioc3RydWN0IGludGVsX2RpZ2l0YWxfcG9y dCAqaW50ZWxfZGlnX3BvcnQsCj4+ICAJCWludGVsX2Nvbm5lY3Rvci0+Z2V0X2h3X3N0YXRlID0g aW50ZWxfY29ubmVjdG9yX2dldF9od19zdGF0ZTsKPj4gIAo+PiAgCS8qIGluaXQgTVNUIG9uIHBv cnRzIHRoYXQgY2FuIHN1cHBvcnQgaXQgKi8KPj4gLQlpZiAoSEFTX0RQX01TVChkZXZfcHJpdikg JiYgIWlzX2VkcChpbnRlbF9kcCkgJiYKPj4gKwlpZiAoSEFTX0RQX01TVChkZXZfcHJpdikgJiYg IWludGVsX2RwX2lzX2VkcChpbnRlbF9kcCkgJiYKPj4gIAkgICAgKHBvcnQgPT0gUE9SVF9CIHx8 IHBvcnQgPT0gUE9SVF9DIHx8IHBvcnQgPT0gUE9SVF9EKSkKPj4gIAkJaW50ZWxfZHBfbXN0X2Vu Y29kZXJfaW5pdChpbnRlbF9kaWdfcG9ydCwKPj4gIAkJCQkJICBpbnRlbF9jb25uZWN0b3ItPmJh c2UuYmFzZS5pZCk7Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+IGluZGV4IDY5MGUzYjY3 ZGMxYy4uMjk0MGQzOTNlY2ZkIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaAo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+PiBA QCAtMTQ5OSw2ICsxNDk5LDcgQEAgaW50IGludGVsX2RwX3NpbmtfY3JjKHN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHAsIHU4ICpjcmMpOwo+PiAgYm9vbCBpbnRlbF9kcF9jb21wdXRlX2NvbmZpZyhz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPj4gIAkJCSAgICAgc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKnBpcGVfY29uZmlnLAo+PiAgCQkJICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9z dGF0ZSAqY29ubl9zdGF0ZSk7Cj4+ICtib29sIGludGVsX2RwX2lzX2VkcChzdHJ1Y3QgaW50ZWxf ZHAgKmludGVsX2RwKTsKPj4gIGJvb2wgaW50ZWxfZHBfaXNfcG9ydF9lZHAoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIHBvcnQgcG9ydCk7Cj4+ICBlbnVtIGlycXJldHVy biBpbnRlbF9kcF9ocGRfcHVsc2Uoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGln X3BvcnQsCj4+ICAJCQkJICBib29sIGxvbmdfaHBkKTsKPj4gLS0gCj4+IDIuMTEuMAo+PiAKCi0t IApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==