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: Fri, 28 Jun 2019 17:36:25 +0300 Message-ID: <20190628143635.22066-14-imre.deak@intel.com> References: <20190628143635.22066-1-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id CED246E93C for ; Fri, 28 Jun 2019 14:37:08 +0000 (UTC) In-Reply-To: <20190628143635.22066-1-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 dXphIDxqb3NlLnNvdXphQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2RkaS5jICAgICB8IDE2ICstLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGlzcGxheS5jIHwgMTAgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2RwX21zdC5oICB8ICA4ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX3RjLmMgICAgICB8IDg0ICsrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX3RjLmggICAgICB8ICAyICsKIDUgZmlsZXMgY2hhbmdlZCwgMTA0 IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2RkaS5jCmluZGV4IDJiZTdjZGMzMTliYS4uMGM1YmZiZDY2YjE5IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMKQEAgLTM5MzEsMTcgKzM5MzEsNiBA QCBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfZW5jb2Rlcl9zdXNwZW5kKHN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyKQogCQlpY2xfdGNfcGh5X2Rpc2Nvbm5lY3QoZGlnX3BvcnQpOwogfQogCi1z dGF0aWMgdm9pZCBpbnRlbF9kZGlfZW5jb2Rlcl9yZXNldChzdHJ1Y3QgZHJtX2VuY29kZXIgKmRy bV9lbmNvZGVyKQotewotCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0ID0gZW5j X3RvX2RpZ19wb3J0KGRybV9lbmNvZGVyKTsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkx NSA9IHRvX2k5MTUoZHJtX2VuY29kZXItPmRldik7Ci0KLQlpZiAoaW50ZWxfcG9ydF9pc190Yyhp OTE1LCBkaWdfcG9ydC0+YmFzZS5wb3J0KSkKLQkJaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3Rl ZCgmZGlnX3BvcnQtPmJhc2UpOwotCi0JaW50ZWxfZHBfZW5jb2Rlcl9yZXNldChkcm1fZW5jb2Rl cik7Ci19Ci0KIHN0YXRpYyB2b2lkIGludGVsX2RkaV9lbmNvZGVyX2Rlc3Ryb3koc3RydWN0IGRy bV9lbmNvZGVyICplbmNvZGVyKQogewogCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19w b3J0ID0gZW5jX3RvX2RpZ19wb3J0KGVuY29kZXIpOwpAQCAtMzk1Nyw3ICszOTQ2LDcgQEAgc3Rh dGljIHZvaWQgaW50ZWxfZGRpX2VuY29kZXJfZGVzdHJveShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVu Y29kZXIpCiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2VuY29kZXJfZnVuY3MgaW50ZWxf ZGRpX2Z1bmNzID0gewotCS5yZXNldCA9IGludGVsX2RkaV9lbmNvZGVyX3Jlc2V0LAorCS5yZXNl dCA9IGludGVsX2RwX2VuY29kZXJfcmVzZXQsCiAJLmRlc3Ryb3kgPSBpbnRlbF9kZGlfZW5jb2Rl cl9kZXN0cm95LAogfTsKIApAQCAtNDMyOCw5ICs0MzE3LDYgQEAgdm9pZCBpbnRlbF9kZGlfaW5p dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0KQogCiAJ aW50ZWxfaW5mb2ZyYW1lX2luaXQoaW50ZWxfZGlnX3BvcnQpOwogCi0JaWYgKGludGVsX3BvcnRf aXNfdGMoZGV2X3ByaXYsIHBvcnQpKQotCQlpbnRlbF9kaWdpdGFsX3BvcnRfY29ubmVjdGVkKGlu dGVsX2VuY29kZXIpOwotCiAJcmV0dXJuOwogCiBlcnI6CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCmluZGV4IGU0N2RmOGE4NDAxZS4uZGVlOWI4OWViM2Vl IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwpAQCAt NzgsNiArNzgsNyBAQAogI2luY2x1ZGUgImludGVsX3F1aXJrcy5oIgogI2luY2x1ZGUgImludGVs X3NpZGViYW5kLmgiCiAjaW5jbHVkZSAiaW50ZWxfc3ByaXRlLmgiCisjaW5jbHVkZSAiaW50ZWxf dGMuaCIKIAogLyogUHJpbWFyeSBwbGFuZSBmb3JtYXRzIGZvciBnZW4gPD0gMyAqLwogc3RhdGlj IGNvbnN0IHUzMiBpOHh4X3ByaW1hcnlfZm9ybWF0c1tdID0gewpAQCAtMTY4NDQsNiArMTY4NDUs MTUgQEAgaW50ZWxfbW9kZXNldF9zZXR1cF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAogCWludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShkZXYpOwogCiAJLyogSFcgc3RhdGUg aXMgcmVhZCBvdXQsIG5vdyB3ZSBuZWVkIHRvIHNhbml0aXplIHRoaXMgbWVzcy4gKi8KKworCS8q IFNhbml0aXplIHRoZSBUeXBlQyBwb3J0IG1vZGUgdXBmcm9udCwgZW5jb2RlcnMgZGVwZW5kIG9u IHRoaXMgKi8KKwlmb3JfZWFjaF9pbnRlbF9lbmNvZGVyKGRldiwgZW5jb2RlcikgeworCQkvKiBX ZSBuZWVkIHRvIHNhbml0aXplIG9ubHkgdGhlIE1TVCBwcmltYXJ5IHBvcnQuICovCisJCWlmIChl bmNvZGVyLT50eXBlICE9IElOVEVMX09VVFBVVF9EUF9NU1QgJiYKKwkJICAgIGludGVsX3BvcnRf aXNfdGMoZGV2X3ByaXYsIGVuY29kZXItPnBvcnQpKQorCQkJaW50ZWxfdGNfcG9ydF9zYW5pdGl6 ZShlbmNfdG9fZGlnX3BvcnQoJmVuY29kZXItPmJhc2UpKTsKKwl9CisKIAlnZXRfZW5jb2Rlcl9w b3dlcl9kb21haW5zKGRldl9wcml2KTsKIAogCWlmIChIQVNfUENIX0lCWChkZXZfcHJpdikpCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9tc3QuaAppbmRleCAxNDcwYzZl MDUxNGIuLjY3NTRjMjExMjA1YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9kcF9tc3QuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2RwX21zdC5oCkBAIC02LDkgKzYsMTUgQEAKICNpZm5kZWYgX19JTlRFTF9EUF9NU1RfSF9f CiAjZGVmaW5lIF9fSU5URUxfRFBfTVNUX0hfXwogCi1zdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 OworI2luY2x1ZGUgImludGVsX2Rydi5oIgogCiBpbnQgaW50ZWxfZHBfbXN0X2VuY29kZXJfaW5p dChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwgaW50IGNvbm5faWQp Owogdm9pZCBpbnRlbF9kcF9tc3RfZW5jb2Rlcl9jbGVhbnVwKHN0cnVjdCBpbnRlbF9kaWdpdGFs X3BvcnQgKmludGVsX2RpZ19wb3J0KTsKK3N0YXRpYyBpbmxpbmUgaW50CitpbnRlbF9kcF9tc3Rf ZW5jb2Rlcl9hY3RpdmVfbGlua3Moc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGln X3BvcnQpCit7CisJcmV0dXJuIGludGVsX2RpZ19wb3J0LT5kcC5hY3RpdmVfbXN0X2xpbmtzOwor fQorCiAKICNlbmRpZiAvKiBfX0lOVEVMX0RQX01TVF9IX18gKi8KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfdGMuYwppbmRleCBmNjNkZGYzOWIzNjkuLjc4MzQwMTE1Yjk5NCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF90Yy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMuYwpAQCAtNCw2ICs0LDcgQEAKICAq LwogCiAjaW5jbHVkZSAiaW50ZWxfZGlzcGxheS5oIgorI2luY2x1ZGUgImludGVsX2RwX21zdC5o IgogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCiAjaW5jbHVkZSAiaW50ZWxfdGMuaCIKIApAQCAtMTYw LDYgKzE2MSwyMiBAQCBzdGF0aWMgYm9vbCBpY2xfdGNfcGh5X3NldF9zYWZlX21vZGUoc3RydWN0 IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQsCiAJcmV0dXJuIHRydWU7CiB9CiAKK3N0YXRp YyBib29sIGljbF90Y19waHlfaXNfaW5fc2FmZV9tb2RlKHN0cnVjdCBpbnRlbF9kaWdpdGFsX3Bv cnQgKmRpZ19wb3J0KQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoZGlnX3BvcnQtPmJhc2UuYmFzZS5kZXYpOworCWVudW0gdGNfcG9ydCB0Y19wb3J0ID0g aW50ZWxfcG9ydF90b190YyhkZXZfcHJpdiwgZGlnX3BvcnQtPmJhc2UucG9ydCk7CisJdTMyIHZh bDsKKworCXZhbCA9IEk5MTVfUkVBRChQT1JUX1RYX0RGTEVYRFBDU1NTKTsKKwlpZiAodmFsID09 IDB4ZmZmZmZmZmYpIHsKKwkJRFJNX0RFQlVHX0tNUygiUG9ydCAlczogUEhZIGluIFRDQ09MRCwg YXNzdW1lIHNhZmUgbW9kZVxuIiwKKwkJCSAgICAgIGRpZ19wb3J0LT50Y19wb3J0X25hbWUpOwor CQlyZXR1cm4gdHJ1ZTsKKwl9CisKKwlyZXR1cm4gISh2YWwgJiBEUF9QSFlfTU9ERV9TVEFUVVNf Tk9UX1NBRkUodGNfcG9ydCkpOworfQorCiAvKgogICogVGhpcyBmdW5jdGlvbiBpbXBsZW1lbnRz IHRoZSBmaXJzdCBwYXJ0IG9mIHRoZSBDb25uZWN0IEZsb3cgZGVzY3JpYmVkIGJ5IG91cgogICog c3BlY2lmaWNhdGlvbiwgR2VuMTEgVHlwZUMgUHJvZ3JhbW1pbmcgY2hhcHRlci4gVGhlIHJlc3Qg b2YgdGhlIGZsb3cgKHJlYWRpbmcKQEAgLTI0MCw2ICsyNTcsNDYgQEAgdm9pZCBpY2xfdGNfcGh5 X2Rpc2Nvbm5lY3Qoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQpCiAJfQogfQog CitzdGF0aWMgYm9vbCBpY2xfdGNfcGh5X2lzX2Nvbm5lY3RlZChzdHJ1Y3QgaW50ZWxfZGlnaXRh bF9wb3J0ICpkaWdfcG9ydCkKK3sKKwlpZiAoIWljbF90Y19waHlfc3RhdHVzX2NvbXBsZXRlKGRp Z19wb3J0KSkgeworCQlEUk1fREVCVUdfS01TKCJQb3J0ICVzOiBQSFkgc3RhdHVzIG5vdCBjb21w bGV0ZVxuIiwKKwkJCSAgICAgIGRpZ19wb3J0LT50Y19wb3J0X25hbWUpOworCQlyZXR1cm4gZGln X3BvcnQtPnRjX21vZGUgPT0gVENfUE9SVF9UQlRfQUxUOworCX0KKworCWlmIChpY2xfdGNfcGh5 X2lzX2luX3NhZmVfbW9kZShkaWdfcG9ydCkpIHsKKwkJRFJNX0RFQlVHX0tNUygiUG9ydCAlczog UEhZIHN0aWxsIGluIHNhZmUgbW9kZVxuIiwKKwkJCSAgICAgIGRpZ19wb3J0LT50Y19wb3J0X25h bWUpOworCisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlyZXR1cm4gZGlnX3BvcnQtPnRjX21vZGUg PT0gVENfUE9SVF9EUF9BTFQgfHwKKwkgICAgICAgZGlnX3BvcnQtPnRjX21vZGUgPT0gVENfUE9S VF9MRUdBQ1k7Cit9CisKK3N0YXRpYyBlbnVtIHRjX3BvcnRfbW9kZQoraW50ZWxfdGNfcG9ydF9n ZXRfY3VycmVudF9tb2RlKHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0KQorewor CXUzMiBsaXZlX3N0YXR1c19tYXNrID0gdGNfcG9ydF9saXZlX3N0YXR1c19tYXNrKGRpZ19wb3J0 KTsKKwlib29sIGluX3NhZmVfbW9kZSA9IGljbF90Y19waHlfaXNfaW5fc2FmZV9tb2RlKGRpZ19w b3J0KTsKKwllbnVtIHRjX3BvcnRfbW9kZSBtb2RlOworCisJaWYgKGluX3NhZmVfbW9kZSB8fCBX QVJOX09OKCFpY2xfdGNfcGh5X3N0YXR1c19jb21wbGV0ZShkaWdfcG9ydCkpKQorCQlyZXR1cm4g VENfUE9SVF9UQlRfQUxUOworCisJbW9kZSA9IGRpZ19wb3J0LT50Y19sZWdhY3lfcG9ydCA/IFRD X1BPUlRfTEVHQUNZIDogVENfUE9SVF9EUF9BTFQ7CisJaWYgKGxpdmVfc3RhdHVzX21hc2spIHsK KwkJZW51bSB0Y19wb3J0X21vZGUgbGl2ZV9tb2RlID0gZmxzKGxpdmVfc3RhdHVzX21hc2spIC0g MTsKKworCQlpZiAoIVdBUk5fT04obGl2ZV9tb2RlID09IFRDX1BPUlRfVEJUX0FMVCkpCisJCQlt b2RlID0gbGl2ZV9tb2RlOworCX0KKworCXJldHVybiBtb2RlOworfQorCiBzdGF0aWMgZW51bSB0 Y19wb3J0X21vZGUKIGludGVsX3RjX3BvcnRfZ2V0X3RhcmdldF9tb2RlKHN0cnVjdCBpbnRlbF9k aWdpdGFsX3BvcnQgKmRpZ19wb3J0KQogewpAQCAtMjY2LDYgKzMyMywzMyBAQCBzdGF0aWMgdm9p ZCBpbnRlbF90Y19wb3J0X3Jlc2V0X21vZGUoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGln X3BvcnQpCiAJCSAgICAgIHRjX3BvcnRfbW9kZV9uYW1lKGRpZ19wb3J0LT50Y19tb2RlKSk7CiB9 CiAKK3ZvaWQgaW50ZWxfdGNfcG9ydF9zYW5pdGl6ZShzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 ICpkaWdfcG9ydCkKK3sKKwlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciA9ICZkaWdfcG9y dC0+YmFzZTsKKwlpbnQgYWN0aXZlX2xpbmtzID0gMDsKKworCWRpZ19wb3J0LT50Y19tb2RlID0g aW50ZWxfdGNfcG9ydF9nZXRfY3VycmVudF9tb2RlKGRpZ19wb3J0KTsKKwlpZiAoZGlnX3BvcnQt PmRwLmlzX21zdCkKKwkJYWN0aXZlX2xpbmtzID0gaW50ZWxfZHBfbXN0X2VuY29kZXJfYWN0aXZl X2xpbmtzKGRpZ19wb3J0KTsKKwllbHNlIGlmIChlbmNvZGVyLT5iYXNlLmNydGMpCisJCWFjdGl2 ZV9saW5rcyA9IHRvX2ludGVsX2NydGMoZW5jb2Rlci0+YmFzZS5jcnRjKS0+YWN0aXZlOworCisJ aWYgKGFjdGl2ZV9saW5rcykgeworCQlpZiAoIWljbF90Y19waHlfaXNfY29ubmVjdGVkKGRpZ19w b3J0KSkKKwkJCURSTV9ERUJVR19LTVMoIlBvcnQgJXM6IFBIWSBkaXNjb25uZWN0ZWQgd2l0aCAl ZCBhY3RpdmUgbGluayhzKVxuIiwKKwkJCQkgICAgICBkaWdfcG9ydC0+dGNfcG9ydF9uYW1lLCBh Y3RpdmVfbGlua3MpOworCQlnb3RvIG91dDsKKwl9CisKKwlpZiAoZGlnX3BvcnQtPnRjX2xlZ2Fj eV9wb3J0KQorCQlpY2xfdGNfcGh5X2Nvbm5lY3QoZGlnX3BvcnQpOworCitvdXQ6CisJRFJNX0RF QlVHX0tNUygiUG9ydCAlczogc2FuaXRpemUgbW9kZSAoJXMpXG4iLAorCQkgICAgICBkaWdfcG9y dC0+dGNfcG9ydF9uYW1lLAorCQkgICAgICB0Y19wb3J0X21vZGVfbmFtZShkaWdfcG9ydC0+dGNf bW9kZSkpOworfQorCiBzdGF0aWMgYm9vbCBpbnRlbF90Y19wb3J0X25lZWRzX3Jlc2V0KHN0cnVj dCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0KQogewogCXJldHVybiBpbnRlbF90Y19wb3J0 X2dldF90YXJnZXRfbW9kZShkaWdfcG9ydCkgIT0gZGlnX3BvcnQtPnRjX21vZGU7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3RjLmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3RjLmgKaW5kZXggOGMzMzhjNDU3OTZkLi41YTc4NzZh NzQ1MjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfdGMu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3RjLmgKQEAgLTE2LDYg KzE2LDggQEAgYm9vbCBpbnRlbF90Y19wb3J0X2Nvbm5lY3RlZChzdHJ1Y3QgaW50ZWxfZGlnaXRh bF9wb3J0ICpkaWdfcG9ydCk7CiB1MzIgaW50ZWxfdGNfcG9ydF9nZXRfbGFuZV9tYXNrKHN0cnVj dCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0KTsKIGludCBpbnRlbF90Y19wb3J0X2ZpYV9t YXhfbGFuZV9jb3VudChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydCk7CiAKK3Zv aWQgaW50ZWxfdGNfcG9ydF9zYW5pdGl6ZShzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdf cG9ydCk7CisKIHZvaWQgaW50ZWxfdGNfcG9ydF9pbml0KHN0cnVjdCBpbnRlbF9kaWdpdGFsX3Bv cnQgKmRpZ19wb3J0LCBib29sIGlzX2xlZ2FjeSk7CiAKICNlbmRpZiAvKiBfX0lOVEVMX1RDX0hf XyAqLwotLSAKMi4xNy4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZng=