From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: [PATCH v3 13/23] drm/i915: Fix the TypeC port mode sanitization during loading/resume Date: Wed, 26 Jun 2019 21:04:19 +0300 Message-ID: <20190626180420.16541-3-imre.deak@intel.com> References: <20190626180420.16541-1-imre.deak@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 B17406E4DD for ; Wed, 26 Jun 2019 18:04:28 +0000 (UTC) In-Reply-To: <20190626180420.16541-1-imre.deak@intel.com> In-Reply-To: <20190620140600.11357-14-imre.deak@intel.com> References: <20190620140600.11357-14-imre.deak@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org Rm9yIHVzaW5nIHRoZSBjb3JyZWN0IEFVWCBwb3dlciBkb21haW5zIHdlIGhhdmUgdG8gc2FuaXRp emUgdGhlIFR5cGVDCnBvcnQgbW9kZSBlYXJseSwgc28gbW92ZSB0aGF0IGJlZm9yZSBlbmNvZGVy IHNhbml0aXphdGlvbi4gVG8gZG8gdGhpcwpwcm9wZXJseSByZWFkIG91dCB0aGUgYWN0dWFsIHBv cnQgbW9kZSBpbnN0ZWFkIG9mIGp1c3QgcmVseWluZyBvbiB0aGUKVkJUIGxlZ2FjeSBwb3J0IGZs YWcgKHdoaWNoIGNhbiBiZSBpbmNvcnJlY3QpLgoKV2UgYWxzbyB2ZXJpZnkgdGhhdCB0aGUgUEhZ IGlzIGNvbm5lY3RlZCBhcyBleHBlY3RlZCBpZiB0aGUgcG9ydCBpcwphY3RpdmUuIEluIGNhc2Ug dGhlIHBvcnQgaXMgaW5hY3RpdmUgd2UgY29ubmVjdCB0aGUgUEhZIGluIGNhc2Ugb2YgYQpsZWdh Y3kgcG9ydCAtIGFzIHdlIGRpZCBzbyBmYXIuIFRoZSBQSFkgd2lsbCBiZSBjb25uZWN0ZWQgZHVy aW5nCmRldGVjdGlvbiBmb3IgRFAtYWx0IG1vZGUgLSBhcyBpdCB3YXMgZG9uZSBzbyBmYXIuIEZv ciBUQlQtYWx0IG1vZGUKbm90aGluZyBuZWVkcyB0byBiZSBkb25lIHRvIGNvbm5lY3QgdGhlIFBI WS4KCnYyOgotIFVzZSBEUk1fREVCVUdfS01TIGluc3RlYWQgb2YgRFJNX0RFQlVHX0RSSVZFUi4g KEpvc8OpKQp2MzoKLSBEZXRlY3QgVENDT0xEIGFueSB0aW1lIFBPUlRfVFhfREZMRVhEUENTU1Mg aXMgcmVhZC4gKFZpbGxlKQoKQ2M6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFA aW50ZWwuY29tPgpDYzogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZpdmlAaW50ZWwuY29tPgpDYzog UGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CkNjOiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBJbXJlIERl YWsgPGltcmUuZGVha0BpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBKb3PDqSBSb2JlcnRvIGRlIFNv dXphIDxqb3NlLnNvdXphQGludGVsLmNvbT4gKHYyKQotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGRpLmMgICAgIHwgMTYgKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgfCAxMCArKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfZHBfbXN0LmggIHwgIDggKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfdGMuYyAgICAgIHwgODQgKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMuaCAgICAgIHwgIDIgKwogNSBmaWxlcyBjaGFuZ2Vk LCAxMDQgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGRpLmMKaW5kZXggMmJlN2NkYzMxOWJhLi4wYzViZmJkNjZiMTkgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGkuYwpAQCAtMzkzMSwxNyArMzkz MSw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2RkaV9lbmNvZGVyX3N1c3BlbmQoc3RydWN0IGludGVs X2VuY29kZXIgKmVuY29kZXIpCiAJCWljbF90Y19waHlfZGlzY29ubmVjdChkaWdfcG9ydCk7CiB9 CiAKLXN0YXRpYyB2b2lkIGludGVsX2RkaV9lbmNvZGVyX3Jlc2V0KHN0cnVjdCBkcm1fZW5jb2Rl ciAqZHJtX2VuY29kZXIpCi17Ci0Jc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQg PSBlbmNfdG9fZGlnX3BvcnQoZHJtX2VuY29kZXIpOwotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1ID0gdG9faTkxNShkcm1fZW5jb2Rlci0+ZGV2KTsKLQotCWlmIChpbnRlbF9wb3J0X2lz X3RjKGk5MTUsIGRpZ19wb3J0LT5iYXNlLnBvcnQpKQotCQlpbnRlbF9kaWdpdGFsX3BvcnRfY29u bmVjdGVkKCZkaWdfcG9ydC0+YmFzZSk7Ci0KLQlpbnRlbF9kcF9lbmNvZGVyX3Jlc2V0KGRybV9l bmNvZGVyKTsKLX0KLQogc3RhdGljIHZvaWQgaW50ZWxfZGRpX2VuY29kZXJfZGVzdHJveShzdHJ1 Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCiB7CiAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAq ZGlnX3BvcnQgPSBlbmNfdG9fZGlnX3BvcnQoZW5jb2Rlcik7CkBAIC0zOTU3LDcgKzM5NDYsNyBA QCBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfZW5jb2Rlcl9kZXN0cm95KHN0cnVjdCBkcm1fZW5jb2Rl ciAqZW5jb2RlcikKIH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZW5jb2Rlcl9mdW5jcyBp bnRlbF9kZGlfZnVuY3MgPSB7Ci0JLnJlc2V0ID0gaW50ZWxfZGRpX2VuY29kZXJfcmVzZXQsCisJ LnJlc2V0ID0gaW50ZWxfZHBfZW5jb2Rlcl9yZXNldCwKIAkuZGVzdHJveSA9IGludGVsX2RkaV9l bmNvZGVyX2Rlc3Ryb3ksCiB9OwogCkBAIC00MzI4LDkgKzQzMTcsNiBAQCB2b2lkIGludGVsX2Rk aV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51bSBwb3J0IHBvcnQp CiAKIAlpbnRlbF9pbmZvZnJhbWVfaW5pdChpbnRlbF9kaWdfcG9ydCk7CiAKLQlpZiAoaW50ZWxf cG9ydF9pc190YyhkZXZfcHJpdiwgcG9ydCkpCi0JCWludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0 ZWQoaW50ZWxfZW5jb2Rlcik7Ci0KIAlyZXR1cm47CiAKIGVycjoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggZTQ3ZGY4YTg0MDFlLi5kZWU5Yjg5 ZWIzZWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlz cGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5j CkBAIC03OCw2ICs3OCw3IEBACiAjaW5jbHVkZSAiaW50ZWxfcXVpcmtzLmgiCiAjaW5jbHVkZSAi aW50ZWxfc2lkZWJhbmQuaCIKICNpbmNsdWRlICJpbnRlbF9zcHJpdGUuaCIKKyNpbmNsdWRlICJp bnRlbF90Yy5oIgogCiAvKiBQcmltYXJ5IHBsYW5lIGZvcm1hdHMgZm9yIGdlbiA8PSAzICovCiBz dGF0aWMgY29uc3QgdTMyIGk4eHhfcHJpbWFyeV9mb3JtYXRzW10gPSB7CkBAIC0xNjg0NCw2ICsx Njg0NSwxNSBAQCBpbnRlbF9tb2Rlc2V0X3NldHVwX2h3X3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsCiAJaW50ZWxfbW9kZXNldF9yZWFkb3V0X2h3X3N0YXRlKGRldik7CiAKIAkvKiBIVyBz dGF0ZSBpcyByZWFkIG91dCwgbm93IHdlIG5lZWQgdG8gc2FuaXRpemUgdGhpcyBtZXNzLiAqLwor CisJLyogU2FuaXRpemUgdGhlIFR5cGVDIHBvcnQgbW9kZSB1cGZyb250LCBlbmNvZGVycyBkZXBl bmQgb24gdGhpcyAqLworCWZvcl9lYWNoX2ludGVsX2VuY29kZXIoZGV2LCBlbmNvZGVyKSB7CisJ CS8qIFdlIG5lZWQgdG8gc2FuaXRpemUgb25seSB0aGUgTVNUIHByaW1hcnkgcG9ydC4gKi8KKwkJ aWYgKGVuY29kZXItPnR5cGUgIT0gSU5URUxfT1VUUFVUX0RQX01TVCAmJgorCQkgICAgaW50ZWxf cG9ydF9pc190YyhkZXZfcHJpdiwgZW5jb2Rlci0+cG9ydCkpCisJCQlpbnRlbF90Y19wb3J0X3Nh bml0aXplKGVuY190b19kaWdfcG9ydCgmZW5jb2Rlci0+YmFzZSkpOworCX0KKwogCWdldF9lbmNv ZGVyX3Bvd2VyX2RvbWFpbnMoZGV2X3ByaXYpOwogCiAJaWYgKEhBU19QQ0hfSUJYKGRldl9wcml2 KSkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfbXN0 LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5oCmluZGV4IDE0 NzBjNmUwNTE0Yi4uNjc1NGMyMTEyMDVhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2RwX21zdC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZHBfbXN0LmgKQEAgLTYsOSArNiwxNSBAQAogI2lmbmRlZiBfX0lOVEVMX0RQX01T VF9IX18KICNkZWZpbmUgX19JTlRFTF9EUF9NU1RfSF9fCiAKLXN0cnVjdCBpbnRlbF9kaWdpdGFs X3BvcnQ7CisjaW5jbHVkZSAiaW50ZWxfZHJ2LmgiCiAKIGludCBpbnRlbF9kcF9tc3RfZW5jb2Rl cl9pbml0KHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LCBpbnQgY29u bl9pZCk7CiB2b2lkIGludGVsX2RwX21zdF9lbmNvZGVyX2NsZWFudXAoc3RydWN0IGludGVsX2Rp Z2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQpOworc3RhdGljIGlubGluZSBpbnQKK2ludGVsX2Rw X21zdF9lbmNvZGVyX2FjdGl2ZV9saW5rcyhzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRl bF9kaWdfcG9ydCkKK3sKKwlyZXR1cm4gaW50ZWxfZGlnX3BvcnQtPmRwLmFjdGl2ZV9tc3RfbGlu a3M7Cit9CisKIAogI2VuZGlmIC8qIF9fSU5URUxfRFBfTVNUX0hfXyAqLwpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF90Yy5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF90Yy5jCmluZGV4IGY2M2RkZjM5YjM2OS4uNzgzNDAxMTViOTk0 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3RjLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF90Yy5jCkBAIC00LDYgKzQsNyBA QAogICovCiAKICNpbmNsdWRlICJpbnRlbF9kaXNwbGF5LmgiCisjaW5jbHVkZSAiaW50ZWxfZHBf bXN0LmgiCiAjaW5jbHVkZSAiaTkxNV9kcnYuaCIKICNpbmNsdWRlICJpbnRlbF90Yy5oIgogCkBA IC0xNjAsNiArMTYxLDIyIEBAIHN0YXRpYyBib29sIGljbF90Y19waHlfc2V0X3NhZmVfbW9kZShz dHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydCwKIAlyZXR1cm4gdHJ1ZTsKIH0KIAor c3RhdGljIGJvb2wgaWNsX3RjX3BoeV9pc19pbl9zYWZlX21vZGUoc3RydWN0IGludGVsX2RpZ2l0 YWxfcG9ydCAqZGlnX3BvcnQpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gdG9faTkxNShkaWdfcG9ydC0+YmFzZS5iYXNlLmRldik7CisJZW51bSB0Y19wb3J0IHRjX3Bv cnQgPSBpbnRlbF9wb3J0X3RvX3RjKGRldl9wcml2LCBkaWdfcG9ydC0+YmFzZS5wb3J0KTsKKwl1 MzIgdmFsOworCisJdmFsID0gSTkxNV9SRUFEKFBPUlRfVFhfREZMRVhEUENTU1MpOworCWlmICh2 YWwgPT0gMHhmZmZmZmZmZikgeworCQlEUk1fREVCVUdfS01TKCJQb3J0ICVzOiBQSFkgaW4gVEND T0xELCBhc3N1bWUgc2FmZSBtb2RlXG4iLAorCQkJICAgICAgZGlnX3BvcnQtPnRjX3BvcnRfbmFt ZSk7CisJCXJldHVybiB0cnVlOworCX0KKworCXJldHVybiAhKHZhbCAmIERQX1BIWV9NT0RFX1NU QVRVU19OT1RfU0FGRSh0Y19wb3J0KSk7Cit9CisKIC8qCiAgKiBUaGlzIGZ1bmN0aW9uIGltcGxl bWVudHMgdGhlIGZpcnN0IHBhcnQgb2YgdGhlIENvbm5lY3QgRmxvdyBkZXNjcmliZWQgYnkgb3Vy CiAgKiBzcGVjaWZpY2F0aW9uLCBHZW4xMSBUeXBlQyBQcm9ncmFtbWluZyBjaGFwdGVyLiBUaGUg cmVzdCBvZiB0aGUgZmxvdyAocmVhZGluZwpAQCAtMjQwLDYgKzI1Nyw0NiBAQCB2b2lkIGljbF90 Y19waHlfZGlzY29ubmVjdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydCkKIAl9 CiB9CiAKK3N0YXRpYyBib29sIGljbF90Y19waHlfaXNfY29ubmVjdGVkKHN0cnVjdCBpbnRlbF9k aWdpdGFsX3BvcnQgKmRpZ19wb3J0KQoreworCWlmICghaWNsX3RjX3BoeV9zdGF0dXNfY29tcGxl dGUoZGlnX3BvcnQpKSB7CisJCURSTV9ERUJVR19LTVMoIlBvcnQgJXM6IFBIWSBzdGF0dXMgbm90 IGNvbXBsZXRlXG4iLAorCQkJICAgICAgZGlnX3BvcnQtPnRjX3BvcnRfbmFtZSk7CisJCXJldHVy biBkaWdfcG9ydC0+dGNfbW9kZSA9PSBUQ19QT1JUX1RCVF9BTFQ7CisJfQorCisJaWYgKGljbF90 Y19waHlfaXNfaW5fc2FmZV9tb2RlKGRpZ19wb3J0KSkgeworCQlEUk1fREVCVUdfS01TKCJQb3J0 ICVzOiBQSFkgc3RpbGwgaW4gc2FmZSBtb2RlXG4iLAorCQkJICAgICAgZGlnX3BvcnQtPnRjX3Bv cnRfbmFtZSk7CisKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXJldHVybiBkaWdfcG9ydC0+dGNf bW9kZSA9PSBUQ19QT1JUX0RQX0FMVCB8fAorCSAgICAgICBkaWdfcG9ydC0+dGNfbW9kZSA9PSBU Q19QT1JUX0xFR0FDWTsKK30KKworc3RhdGljIGVudW0gdGNfcG9ydF9tb2RlCitpbnRlbF90Y19w b3J0X2dldF9jdXJyZW50X21vZGUoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQp Cit7CisJdTMyIGxpdmVfc3RhdHVzX21hc2sgPSB0Y19wb3J0X2xpdmVfc3RhdHVzX21hc2soZGln X3BvcnQpOworCWJvb2wgaW5fc2FmZV9tb2RlID0gaWNsX3RjX3BoeV9pc19pbl9zYWZlX21vZGUo ZGlnX3BvcnQpOworCWVudW0gdGNfcG9ydF9tb2RlIG1vZGU7CisKKwlpZiAoaW5fc2FmZV9tb2Rl IHx8IFdBUk5fT04oIWljbF90Y19waHlfc3RhdHVzX2NvbXBsZXRlKGRpZ19wb3J0KSkpCisJCXJl dHVybiBUQ19QT1JUX1RCVF9BTFQ7CisKKwltb2RlID0gZGlnX3BvcnQtPnRjX2xlZ2FjeV9wb3J0 ID8gVENfUE9SVF9MRUdBQ1kgOiBUQ19QT1JUX0RQX0FMVDsKKwlpZiAobGl2ZV9zdGF0dXNfbWFz aykgeworCQllbnVtIHRjX3BvcnRfbW9kZSBsaXZlX21vZGUgPSBmbHMobGl2ZV9zdGF0dXNfbWFz aykgLSAxOworCisJCWlmICghV0FSTl9PTihsaXZlX21vZGUgPT0gVENfUE9SVF9UQlRfQUxUKSkK KwkJCW1vZGUgPSBsaXZlX21vZGU7CisJfQorCisJcmV0dXJuIG1vZGU7Cit9CisKIHN0YXRpYyBl bnVtIHRjX3BvcnRfbW9kZQogaW50ZWxfdGNfcG9ydF9nZXRfdGFyZ2V0X21vZGUoc3RydWN0IGlu dGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQpCiB7CkBAIC0yNjYsNiArMzIzLDMzIEBAIHN0YXRp YyB2b2lkIGludGVsX3RjX3BvcnRfcmVzZXRfbW9kZShzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 ICpkaWdfcG9ydCkKIAkJICAgICAgdGNfcG9ydF9tb2RlX25hbWUoZGlnX3BvcnQtPnRjX21vZGUp KTsKIH0KIAordm9pZCBpbnRlbF90Y19wb3J0X3Nhbml0aXplKHN0cnVjdCBpbnRlbF9kaWdpdGFs X3BvcnQgKmRpZ19wb3J0KQoreworCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyID0gJmRp Z19wb3J0LT5iYXNlOworCWludCBhY3RpdmVfbGlua3MgPSAwOworCisJZGlnX3BvcnQtPnRjX21v ZGUgPSBpbnRlbF90Y19wb3J0X2dldF9jdXJyZW50X21vZGUoZGlnX3BvcnQpOworCWlmIChkaWdf cG9ydC0+ZHAuaXNfbXN0KQorCQlhY3RpdmVfbGlua3MgPSBpbnRlbF9kcF9tc3RfZW5jb2Rlcl9h Y3RpdmVfbGlua3MoZGlnX3BvcnQpOworCWVsc2UgaWYgKGVuY29kZXItPmJhc2UuY3J0YykKKwkJ YWN0aXZlX2xpbmtzID0gdG9faW50ZWxfY3J0YyhlbmNvZGVyLT5iYXNlLmNydGMpLT5hY3RpdmU7 CisKKwlpZiAoYWN0aXZlX2xpbmtzKSB7CisJCWlmICghaWNsX3RjX3BoeV9pc19jb25uZWN0ZWQo ZGlnX3BvcnQpKQorCQkJRFJNX0RFQlVHX0tNUygiUG9ydCAlczogUEhZIGRpc2Nvbm5lY3RlZCB3 aXRoICVkIGFjdGl2ZSBsaW5rKHMpXG4iLAorCQkJCSAgICAgIGRpZ19wb3J0LT50Y19wb3J0X25h bWUsIGFjdGl2ZV9saW5rcyk7CisJCWdvdG8gb3V0OworCX0KKworCWlmIChkaWdfcG9ydC0+dGNf bGVnYWN5X3BvcnQpCisJCWljbF90Y19waHlfY29ubmVjdChkaWdfcG9ydCk7CisKK291dDoKKwlE Uk1fREVCVUdfS01TKCJQb3J0ICVzOiBzYW5pdGl6ZSBtb2RlICglcylcbiIsCisJCSAgICAgIGRp Z19wb3J0LT50Y19wb3J0X25hbWUsCisJCSAgICAgIHRjX3BvcnRfbW9kZV9uYW1lKGRpZ19wb3J0 LT50Y19tb2RlKSk7Cit9CisKIHN0YXRpYyBib29sIGludGVsX3RjX3BvcnRfbmVlZHNfcmVzZXQo c3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQpCiB7CiAJcmV0dXJuIGludGVsX3Rj X3BvcnRfZ2V0X3RhcmdldF9tb2RlKGRpZ19wb3J0KSAhPSBkaWdfcG9ydC0+dGNfbW9kZTsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMuaAppbmRleCA4YzMzOGM0NTc5NmQuLjVh Nzg3NmE3NDUyMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF90Yy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMuaApAQCAt MTYsNiArMTYsOCBAQCBib29sIGludGVsX3RjX3BvcnRfY29ubmVjdGVkKHN0cnVjdCBpbnRlbF9k aWdpdGFsX3BvcnQgKmRpZ19wb3J0KTsKIHUzMiBpbnRlbF90Y19wb3J0X2dldF9sYW5lX21hc2so c3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQpOwogaW50IGludGVsX3RjX3BvcnRf ZmlhX21heF9sYW5lX2NvdW50KHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0KTsK IAordm9pZCBpbnRlbF90Y19wb3J0X3Nhbml0aXplKHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQg KmRpZ19wb3J0KTsKKwogdm9pZCBpbnRlbF90Y19wb3J0X2luaXQoc3RydWN0IGludGVsX2RpZ2l0 YWxfcG9ydCAqZGlnX3BvcnQsIGJvb2wgaXNfbGVnYWN5KTsKIAogI2VuZGlmIC8qIF9fSU5URUxf VENfSF9fICovCi0tIAoyLjE3LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeA==