From: Maarten Lankhorst Subject: [PATCH 01/13] drm/i915: Remove dereferences of crtc->config in set_pipeconf/misc functions. Date: Wed, 3 Oct 2018 15:37:03 +0200 Message-ID: <20181003133715.3713-2-maarten.lankhorst@linux.intel.com> References: <20181003133715.3713-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 05FCF6E4AD for ; Wed, 3 Oct 2018 13:37:18 +0000 (UTC) In-Reply-To: <20181003133715.3713-1-maarten.lankhorst@linux.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 List-Id: intel-gfx@lists.freedesktop.org T25lIG1vcmUgdXNlciBvZiBjcnRjLT5jb25maWcgZG93bi4gOikKClNpZ25lZC1vZmYtYnk6IE1h YXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgNzIgKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDM2IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCAzNjQzNGM1MzU5 YjEuLjI2NGZlZWQ3NmMwOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAt MTQxLDE1ICsxNDEsMTUgQEAgc3RhdGljIHZvaWQgaXJvbmxha2VfcGNoX2Nsb2NrX2dldChzdHJ1 Y3QgaW50ZWxfY3J0YyAqY3J0YywKIHN0YXRpYyBpbnQgaW50ZWxfZnJhbWVidWZmZXJfaW5pdChz dHJ1Y3QgaW50ZWxfZnJhbWVidWZmZXIgKmlmYiwKIAkJCQkgIHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmosCiAJCQkJICBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kMiAqbW9kZV9jbWQpOwot c3RhdGljIHZvaWQgaTl4eF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGMgKmludGVsX2Ny dGMpOworc3RhdGljIHZvaWQgaTl4eF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOwogc3RhdGljIHZvaWQgaW50ZWxfc2V0X3BpcGVfdGltaW5ncyhzdHJ1 Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0Yyk7CiBzdGF0aWMgdm9pZCBpbnRlbF9zZXRfcGlwZV9z cmNfc2l6ZShzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0Yyk7CiBzdGF0aWMgdm9pZCBpbnRl bF9jcHVfdHJhbnNjb2Rlcl9zZXRfbV9uKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCQkJCQkg c3RydWN0IGludGVsX2xpbmtfbV9uICptX24sCiAJCQkJCSBzdHJ1Y3QgaW50ZWxfbGlua19tX24g Km0yX24yKTsKLXN0YXRpYyB2b2lkIGlyb25sYWtlX3NldF9waXBlY29uZihzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMpOwotc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZWNvbmYoc3RydWN0IGRybV9j cnRjICpjcnRjKTsKLXN0YXRpYyB2b2lkIGhhc3dlbGxfc2V0X3BpcGVtaXNjKHN0cnVjdCBkcm1f Y3J0YyAqY3J0Yyk7CitzdGF0aWMgdm9pZCBpcm9ubGFrZV9zZXRfcGlwZWNvbmYoc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpOworc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlw ZWNvbmYoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpOworc3RhdGljIHZvaWQg aGFzd2VsbF9zZXRfcGlwZW1pc2Moc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUp Owogc3RhdGljIHZvaWQgdmx2X3ByZXBhcmVfcGxsKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAog CQkJICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7CiBzdGF0 aWMgdm9pZCBjaHZfcHJlcGFyZV9wbGwoc3RydWN0IGludGVsX2NydGMgKmNydGMsCkBAIC01NjA0 LDcgKzU2MDQsNyBAQCBzdGF0aWMgdm9pZCBpcm9ubGFrZV9jcnRjX2VuYWJsZShzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcsCiAJCQkJICAgICAmaW50ZWxfY3J0Yy0+Y29uZmln LT5mZGlfbV9uLCBOVUxMKTsKIAl9CiAKLQlpcm9ubGFrZV9zZXRfcGlwZWNvbmYoY3J0Yyk7CisJ aXJvbmxha2Vfc2V0X3BpcGVjb25mKHBpcGVfY29uZmlnKTsKIAogCWludGVsX2NydGMtPmFjdGl2 ZSA9IHRydWU7CiAKQEAgLTU3MzcsOSArNTczNyw5IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfY3J0 Y19lbmFibGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAogCX0KIAogCWlm ICghdHJhbnNjb2Rlcl9pc19kc2koY3B1X3RyYW5zY29kZXIpKQotCQloYXN3ZWxsX3NldF9waXBl Y29uZihjcnRjKTsKKwkJaGFzd2VsbF9zZXRfcGlwZWNvbmYocGlwZV9jb25maWcpOwogCi0JaGFz d2VsbF9zZXRfcGlwZW1pc2MoY3J0Yyk7CisJaGFzd2VsbF9zZXRfcGlwZW1pc2MocGlwZV9jb25m aWcpOwogCiAJaW50ZWxfY29sb3Jfc2V0X2NzYygmcGlwZV9jb25maWctPmJhc2UpOwogCkBAIC02 MDczLDcgKzYwNzMsNyBAQCBzdGF0aWMgdm9pZCB2YWxsZXl2aWV3X2NydGNfZW5hYmxlKHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKIAkJSTkxNV9XUklURShDSFZfQ0FOVkFT KHBpcGUpLCAwKTsKIAl9CiAKLQlpOXh4X3NldF9waXBlY29uZihpbnRlbF9jcnRjKTsKKwlpOXh4 X3NldF9waXBlY29uZihwaXBlX2NvbmZpZyk7CiAKIAlpbnRlbF9jb2xvcl9zZXRfY3NjKCZwaXBl X2NvbmZpZy0+YmFzZSk7CiAKQEAgLTYxMzgsNyArNjEzOCw3IEBAIHN0YXRpYyB2b2lkIGk5eHhf Y3J0Y19lbmFibGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAogCWludGVs X3NldF9waXBlX3RpbWluZ3MoaW50ZWxfY3J0Yyk7CiAJaW50ZWxfc2V0X3BpcGVfc3JjX3NpemUo aW50ZWxfY3J0Yyk7CiAKLQlpOXh4X3NldF9waXBlY29uZihpbnRlbF9jcnRjKTsKKwlpOXh4X3Nl dF9waXBlY29uZihwaXBlX2NvbmZpZyk7CiAKIAlpbnRlbF9jcnRjLT5hY3RpdmUgPSB0cnVlOwog CkBAIC03NDgwLDggKzc0ODAsOSBAQCB2b2lkIGludGVsX21vZGVfZnJvbV9waXBlX2NvbmZpZyhz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKIAlkcm1fbW9kZV9zZXRfbmFtZShtb2RlKTsK IH0KIAotc3RhdGljIHZvaWQgaTl4eF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGMgKmlu dGVsX2NydGMpCitzdGF0aWMgdm9pZCBpOXh4X3NldF9waXBlY29uZihzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9 IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGludGVsX2NydGMtPmJhc2UuZGV2KTsKIAl1aW50 MzJfdCBwaXBlY29uZjsKIApAQCAtNzQ5MSwxOCArNzQ5MiwxOCBAQCBzdGF0aWMgdm9pZCBpOXh4 X3NldF9waXBlY29uZihzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YykKIAlpZiAoSVNfSTgz MChkZXZfcHJpdikpCiAJCXBpcGVjb25mIHw9IEk5MTVfUkVBRChQSVBFQ09ORihpbnRlbF9jcnRj LT5waXBlKSkgJiBQSVBFQ09ORl9FTkFCTEU7CiAKLQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5k b3VibGVfd2lkZSkKKwlpZiAoY3J0Y19zdGF0ZS0+ZG91YmxlX3dpZGUpCiAJCXBpcGVjb25mIHw9 IFBJUEVDT05GX0RPVUJMRV9XSURFOwogCiAJLyogb25seSBnNHggYW5kIGxhdGVyIGhhdmUgZmFu Y3kgYnBjL2RpdGhlciBjb250cm9scyAqLwogCWlmIChJU19HNFgoZGV2X3ByaXYpIHx8IElTX1ZB TExFWVZJRVcoZGV2X3ByaXYpIHx8CiAJICAgIElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7CiAJ CS8qIEJzcGVjIGNsYWltcyB0aGF0IHdlIGNhbid0IHVzZSBkaXRoZXJpbmcgZm9yIDMwYnBwIHBp cGVzLiAqLwotCQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5kaXRoZXIgJiYgaW50ZWxfY3J0Yy0+ Y29uZmlnLT5waXBlX2JwcCAhPSAzMCkKKwkJaWYgKGNydGNfc3RhdGUtPmRpdGhlciAmJiBjcnRj X3N0YXRlLT5waXBlX2JwcCAhPSAzMCkKIAkJCXBpcGVjb25mIHw9IFBJUEVDT05GX0RJVEhFUl9F TiB8CiAJCQkJICAgIFBJUEVDT05GX0RJVEhFUl9UWVBFX1NQOwogCi0JCXN3aXRjaCAoaW50ZWxf Y3J0Yy0+Y29uZmlnLT5waXBlX2JwcCkgeworCQlzd2l0Y2ggKGNydGNfc3RhdGUtPnBpcGVfYnBw KSB7CiAJCWNhc2UgMTg6CiAJCQlwaXBlY29uZiB8PSBQSVBFQ09ORl82QlBDOwogCQkJYnJlYWs7 CkBAIC03NTE4LDkgKzc1MTksOSBAQCBzdGF0aWMgdm9pZCBpOXh4X3NldF9waXBlY29uZihzdHJ1 Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YykKIAkJfQogCX0KIAotCWlmIChpbnRlbF9jcnRjLT5j b25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZS5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNF KSB7CisJaWYgKGNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5mbGFncyAmIERSTV9NT0RF X0ZMQUdfSU5URVJMQUNFKSB7CiAJCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgNCB8fAotCQkg ICAgaW50ZWxfY3J0Y19oYXNfdHlwZShpbnRlbF9jcnRjLT5jb25maWcsIElOVEVMX09VVFBVVF9T RFZPKSkKKwkJICAgIGludGVsX2NydGNfaGFzX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVU X1NEVk8pKQogCQkJcGlwZWNvbmYgfD0gUElQRUNPTkZfSU5URVJMQUNFX1dfRklFTERfSU5ESUNB VElPTjsKIAkJZWxzZQogCQkJcGlwZWNvbmYgfD0gUElQRUNPTkZfSU5URVJMQUNFX1dfU1lOQ19T SElGVDsKQEAgLTc1MjgsNyArNzUyOSw3IEBAIHN0YXRpYyB2b2lkIGk5eHhfc2V0X3BpcGVjb25m KHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjKQogCQlwaXBlY29uZiB8PSBQSVBFQ09ORl9Q Uk9HUkVTU0lWRTsKIAogCWlmICgoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZ VklFVyhkZXZfcHJpdikpICYmCi0JICAgICBpbnRlbF9jcnRjLT5jb25maWctPmxpbWl0ZWRfY29s b3JfcmFuZ2UpCisJICAgICBjcnRjX3N0YXRlLT5saW1pdGVkX2NvbG9yX3JhbmdlKQogCQlwaXBl Y29uZiB8PSBQSVBFQ09ORl9DT0xPUl9SQU5HRV9TRUxFQ1Q7CiAKIAlJOTE1X1dSSVRFKFBJUEVD T05GKGludGVsX2NydGMtPnBpcGUpLCBwaXBlY29uZik7CkBAIC04NDMxLDE2ICs4NDMyLDE2IEBA IHZvaWQgaW50ZWxfaW5pdF9wY2hfcmVmY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdikKIAkJbHB0X2luaXRfcGNoX3JlZmNsayhkZXZfcHJpdik7CiB9CiAKLXN0YXRpYyB2b2lk IGlyb25sYWtlX3NldF9waXBlY29uZihzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9p ZCBpcm9ubGFrZV9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGUpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRj LT5kZXYpOwotCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0Yyhj cnRjKTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0 Y19zdGF0ZS0+YmFzZS5jcnRjKTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSB0b19pOTE1KGludGVsX2NydGMtPmJhc2UuZGV2KTsKIAlpbnQgcGlwZSA9IGludGVsX2NydGMt PnBpcGU7CiAJdWludDMyX3QgdmFsOwogCiAJdmFsID0gMDsKIAotCXN3aXRjaCAoaW50ZWxfY3J0 Yy0+Y29uZmlnLT5waXBlX2JwcCkgeworCXN3aXRjaCAoY3J0Y19zdGF0ZS0+cGlwZV9icHApIHsK IAljYXNlIDE4OgogCQl2YWwgfD0gUElQRUNPTkZfNkJQQzsKIAkJYnJlYWs7CkBAIC04NDU4LDMy ICs4NDU5LDMyIEBAIHN0YXRpYyB2b2lkIGlyb25sYWtlX3NldF9waXBlY29uZihzdHJ1Y3QgZHJt X2NydGMgKmNydGMpCiAJCUJVRygpOwogCX0KIAotCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmRp dGhlcikKKwlpZiAoY3J0Y19zdGF0ZS0+ZGl0aGVyKQogCQl2YWwgfD0gKFBJUEVDT05GX0RJVEhF Ul9FTiB8IFBJUEVDT05GX0RJVEhFUl9UWVBFX1NQKTsKIAotCWlmIChpbnRlbF9jcnRjLT5jb25m aWctPmJhc2UuYWRqdXN0ZWRfbW9kZS5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFKQor CWlmIChjcnRjX3N0YXRlLT5iYXNlLmFkanVzdGVkX21vZGUuZmxhZ3MgJiBEUk1fTU9ERV9GTEFH X0lOVEVSTEFDRSkKIAkJdmFsIHw9IFBJUEVDT05GX0lOVEVSTEFDRURfSUxLOwogCWVsc2UKIAkJ dmFsIHw9IFBJUEVDT05GX1BST0dSRVNTSVZFOwogCi0JaWYgKGludGVsX2NydGMtPmNvbmZpZy0+ bGltaXRlZF9jb2xvcl9yYW5nZSkKKwlpZiAoY3J0Y19zdGF0ZS0+bGltaXRlZF9jb2xvcl9yYW5n ZSkKIAkJdmFsIHw9IFBJUEVDT05GX0NPTE9SX1JBTkdFX1NFTEVDVDsKIAogCUk5MTVfV1JJVEUo UElQRUNPTkYocGlwZSksIHZhbCk7CiAJUE9TVElOR19SRUFEKFBJUEVDT05GKHBpcGUpKTsKIH0K IAotc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRj KQorc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g dG9faTkxNShjcnRjLT5kZXYpOwotCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9f aW50ZWxfY3J0YyhjcnRjKTsKLQllbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBpbnRl bF9jcnRjLT5jb25maWctPmNwdV90cmFuc2NvZGVyOworCXN0cnVjdCBpbnRlbF9jcnRjICppbnRl bF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOworCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoaW50ZWxfY3J0Yy0+YmFzZS5kZXYp OworCWVudW0gdHJhbnNjb2RlciBjcHVfdHJhbnNjb2RlciA9IGNydGNfc3RhdGUtPmNwdV90cmFu c2NvZGVyOwogCXUzMiB2YWwgPSAwOwogCi0JaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpICYmIGlu dGVsX2NydGMtPmNvbmZpZy0+ZGl0aGVyKQorCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSAmJiBj cnRjX3N0YXRlLT5kaXRoZXIpCiAJCXZhbCB8PSAoUElQRUNPTkZfRElUSEVSX0VOIHwgUElQRUNP TkZfRElUSEVSX1RZUEVfU1ApOwogCi0JaWYgKGludGVsX2NydGMtPmNvbmZpZy0+YmFzZS5hZGp1 c3RlZF9tb2RlLmZsYWdzICYgRFJNX01PREVfRkxBR19JTlRFUkxBQ0UpCisJaWYgKGNydGNfc3Rh dGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFKQog CQl2YWwgfD0gUElQRUNPTkZfSU5URVJMQUNFRF9JTEs7CiAJZWxzZQogCQl2YWwgfD0gUElQRUNP TkZfUFJPR1JFU1NJVkU7CkBAIC04NDkyLDE2ICs4NDkzLDE1IEBAIHN0YXRpYyB2b2lkIGhhc3dl bGxfc2V0X3BpcGVjb25mKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAlQT1NUSU5HX1JFQUQoUElQ RUNPTkYoY3B1X3RyYW5zY29kZXIpKTsKIH0KIAotc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlw ZW1pc2Moc3RydWN0IGRybV9jcnRjICpjcnRjKQorc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlw ZW1pc2Moc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7Ci0Jc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5kZXYpOwotCXN0cnVjdCBp bnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKLQlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY29uZmlnID0gaW50ZWxfY3J0Yy0+Y29uZmlnOworCXN0cnVjdCBpbnRl bF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMp OworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoaW50ZWxfY3J0 Yy0+YmFzZS5kZXYpOwogCiAJaWYgKElTX0JST0FEV0VMTChkZXZfcHJpdikgfHwgSU5URUxfR0VO KGRldl9wcml2KSA+PSA5KSB7CiAJCXUzMiB2YWwgPSAwOwogCi0JCXN3aXRjaCAoaW50ZWxfY3J0 Yy0+Y29uZmlnLT5waXBlX2JwcCkgeworCQlzd2l0Y2ggKGNydGNfc3RhdGUtPnBpcGVfYnBwKSB7 CiAJCWNhc2UgMTg6CiAJCQl2YWwgfD0gUElQRU1JU0NfRElUSEVSXzZfQlBDOwogCQkJYnJlYWs7 CkBAIC04NTE5LDEwICs4NTE5LDEwIEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfc2V0X3BpcGVtaXNj KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAkJCUJVRygpOwogCQl9CiAKLQkJaWYgKGludGVsX2Ny dGMtPmNvbmZpZy0+ZGl0aGVyKQorCQlpZiAoY3J0Y19zdGF0ZS0+ZGl0aGVyKQogCQkJdmFsIHw9 IFBJUEVNSVNDX0RJVEhFUl9FTkFCTEUgfCBQSVBFTUlTQ19ESVRIRVJfVFlQRV9TUDsKIAotCQlp ZiAoY29uZmlnLT55Y2JjcjQyMCkgeworCQlpZiAoY3J0Y19zdGF0ZS0+eWNiY3I0MjApIHsKIAkJ CXZhbCB8PSBQSVBFTUlTQ19PVVRQVVRfQ09MT1JTUEFDRV9ZVVYgfAogCQkJCVBJUEVNSVNDX1lV VjQyMF9FTkFCTEUgfAogCQkJCVBJUEVNSVNDX1lVVjQyMF9NT0RFX0ZVTExfQkxFTkQ7Ci0tIAoy LjE5LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=