From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2 01/13] drm/i915: Remove dereferences of crtc->config in set_pipeconf/misc functions, v2. Date: Thu, 4 Oct 2018 11:45:52 +0200 Message-ID: <20181004094604.2646-2-maarten.lankhorst@linux.intel.com> References: <20181004094604.2646-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 47BA56E29E for ; Thu, 4 Oct 2018 09:46:08 +0000 (UTC) In-Reply-To: <20181004094604.2646-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 T25lIG1vcmUgdXNlciBvZiBjcnRjLT5jb25maWcgZG93bi4gOikKCkNoYW5nZXMgc2luY2UgdjE6 Ci0gQ29uc3RpZnkgY3J0Y19zdGF0ZQotIGludCBwaXBlIC0+IGVudW0gcGlwZSBwaXBlCi0gTW92 ZSBpOXh4X3NldF9waXBlY29uZiBkZWNsYXJhdGlvbiB0byB0aGUgb3RoZXIgcGlwZWNvbmYgZGVj bGFyYXRpb25zLgoKU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFu a2hvcnN0QGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmls bGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZGlzcGxheS5jIHwgODIgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNo YW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYwppbmRleCAzNjQzNGM1MzU5YjEuLmMyYTU0NDQwZGM2MyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtMTQxLDE1ICsxNDEsMTUgQEAgc3RhdGlj IHZvaWQgaXJvbmxha2VfcGNoX2Nsb2NrX2dldChzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKIHN0 YXRpYyBpbnQgaW50ZWxfZnJhbWVidWZmZXJfaW5pdChzdHJ1Y3QgaW50ZWxfZnJhbWVidWZmZXIg KmlmYiwKIAkJCQkgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkJICBzdHJ1 Y3QgZHJtX21vZGVfZmJfY21kMiAqbW9kZV9jbWQpOwotc3RhdGljIHZvaWQgaTl4eF9zZXRfcGlw ZWNvbmYoc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMpOwogc3RhdGljIHZvaWQgaW50ZWxf c2V0X3BpcGVfdGltaW5ncyhzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0Yyk7CiBzdGF0aWMg dm9pZCBpbnRlbF9zZXRfcGlwZV9zcmNfc2l6ZShzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0 Yyk7CiBzdGF0aWMgdm9pZCBpbnRlbF9jcHVfdHJhbnNjb2Rlcl9zZXRfbV9uKHN0cnVjdCBpbnRl bF9jcnRjICpjcnRjLAogCQkJCQkgc3RydWN0IGludGVsX2xpbmtfbV9uICptX24sCiAJCQkJCSBz dHJ1Y3QgaW50ZWxfbGlua19tX24gKm0yX24yKTsKLXN0YXRpYyB2b2lkIGlyb25sYWtlX3NldF9w aXBlY29uZihzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwotc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRf cGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKLXN0YXRpYyB2b2lkIGhhc3dlbGxfc2V0 X3BpcGVtaXNjKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7CitzdGF0aWMgdm9pZCBpOXh4X3NldF9w aXBlY29uZihjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7CitzdGF0 aWMgdm9pZCBpcm9ubGFrZV9zZXRfcGlwZWNvbmYoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOworc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZWNvbmYoY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpOworc3RhdGljIHZvaWQgaGFzd2Vs bF9zZXRfcGlwZW1pc2MoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUp Owogc3RhdGljIHZvaWQgdmx2X3ByZXBhcmVfcGxsKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAog CQkJICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7CiBzdGF0 aWMgdm9pZCBjaHZfcHJlcGFyZV9wbGwoc3RydWN0IGludGVsX2NydGMgKmNydGMsCkBAIC01NjA0 LDcgKzU2MDQsNyBAQCBzdGF0aWMgdm9pZCBpcm9ubGFrZV9jcnRjX2VuYWJsZShzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcsCiAJCQkJICAgICAmaW50ZWxfY3J0Yy0+Y29uZmln LT5mZGlfbV9uLCBOVUxMKTsKIAl9CiAKLQlpcm9ubGFrZV9zZXRfcGlwZWNvbmYoY3J0Yyk7CisJ aXJvbmxha2Vfc2V0X3BpcGVjb25mKHBpcGVfY29uZmlnKTsKIAogCWludGVsX2NydGMtPmFjdGl2 ZSA9IHRydWU7CiAKQEAgLTU3MzcsOSArNTczNyw5IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfY3J0 Y19lbmFibGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAogCX0KIAogCWlm ICghdHJhbnNjb2Rlcl9pc19kc2koY3B1X3RyYW5zY29kZXIpKQotCQloYXN3ZWxsX3NldF9waXBl Y29uZihjcnRjKTsKKwkJaGFzd2VsbF9zZXRfcGlwZWNvbmYocGlwZV9jb25maWcpOwogCi0JaGFz d2VsbF9zZXRfcGlwZW1pc2MoY3J0Yyk7CisJaGFzd2VsbF9zZXRfcGlwZW1pc2MocGlwZV9jb25m aWcpOwogCiAJaW50ZWxfY29sb3Jfc2V0X2NzYygmcGlwZV9jb25maWctPmJhc2UpOwogCkBAIC02 MDczLDcgKzYwNzMsNyBAQCBzdGF0aWMgdm9pZCB2YWxsZXl2aWV3X2NydGNfZW5hYmxlKHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZywKIAkJSTkxNV9XUklURShDSFZfQ0FOVkFT KHBpcGUpLCAwKTsKIAl9CiAKLQlpOXh4X3NldF9waXBlY29uZihpbnRlbF9jcnRjKTsKKwlpOXh4 X3NldF9waXBlY29uZihwaXBlX2NvbmZpZyk7CiAKIAlpbnRlbF9jb2xvcl9zZXRfY3NjKCZwaXBl X2NvbmZpZy0+YmFzZSk7CiAKQEAgLTYxMzgsNyArNjEzOCw3IEBAIHN0YXRpYyB2b2lkIGk5eHhf Y3J0Y19lbmFibGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAogCWludGVs X3NldF9waXBlX3RpbWluZ3MoaW50ZWxfY3J0Yyk7CiAJaW50ZWxfc2V0X3BpcGVfc3JjX3NpemUo aW50ZWxfY3J0Yyk7CiAKLQlpOXh4X3NldF9waXBlY29uZihpbnRlbF9jcnRjKTsKKwlpOXh4X3Nl dF9waXBlY29uZihwaXBlX2NvbmZpZyk7CiAKIAlpbnRlbF9jcnRjLT5hY3RpdmUgPSB0cnVlOwog CkBAIC03NDgwLDI5ICs3NDgwLDMwIEBAIHZvaWQgaW50ZWxfbW9kZV9mcm9tX3BpcGVfY29uZmln KHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAogCWRybV9tb2RlX3NldF9uYW1lKG1vZGUp OwogfQogCi1zdGF0aWMgdm9pZCBpOXh4X3NldF9waXBlY29uZihzdHJ1Y3QgaW50ZWxfY3J0YyAq aW50ZWxfY3J0YykKK3N0YXRpYyB2b2lkIGk5eHhfc2V0X3BpcGVjb25mKGNvbnN0IHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IHRvX2k5MTUoaW50ZWxfY3J0Yy0+YmFzZS5kZXYpOworCXN0cnVjdCBpbnRl bF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOworCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5kZXYp OwogCXVpbnQzMl90IHBpcGVjb25mOwogCiAJcGlwZWNvbmYgPSAwOwogCiAJLyogd2Uga2VlcCBi b3RoIHBpcGVzIGVuYWJsZWQgb24gODMwICovCiAJaWYgKElTX0k4MzAoZGV2X3ByaXYpKQotCQlw aXBlY29uZiB8PSBJOTE1X1JFQUQoUElQRUNPTkYoaW50ZWxfY3J0Yy0+cGlwZSkpICYgUElQRUNP TkZfRU5BQkxFOworCQlwaXBlY29uZiB8PSBJOTE1X1JFQUQoUElQRUNPTkYoY3J0Yy0+cGlwZSkp ICYgUElQRUNPTkZfRU5BQkxFOwogCi0JaWYgKGludGVsX2NydGMtPmNvbmZpZy0+ZG91YmxlX3dp ZGUpCisJaWYgKGNydGNfc3RhdGUtPmRvdWJsZV93aWRlKQogCQlwaXBlY29uZiB8PSBQSVBFQ09O Rl9ET1VCTEVfV0lERTsKIAogCS8qIG9ubHkgZzR4IGFuZCBsYXRlciBoYXZlIGZhbmN5IGJwYy9k aXRoZXIgY29udHJvbHMgKi8KIAlpZiAoSVNfRzRYKGRldl9wcml2KSB8fCBJU19WQUxMRVlWSUVX KGRldl9wcml2KSB8fAogCSAgICBJU19DSEVSUllWSUVXKGRldl9wcml2KSkgewogCQkvKiBCc3Bl YyBjbGFpbXMgdGhhdCB3ZSBjYW4ndCB1c2UgZGl0aGVyaW5nIGZvciAzMGJwcCBwaXBlcy4gKi8K LQkJaWYgKGludGVsX2NydGMtPmNvbmZpZy0+ZGl0aGVyICYmIGludGVsX2NydGMtPmNvbmZpZy0+ cGlwZV9icHAgIT0gMzApCisJCWlmIChjcnRjX3N0YXRlLT5kaXRoZXIgJiYgY3J0Y19zdGF0ZS0+ cGlwZV9icHAgIT0gMzApCiAJCQlwaXBlY29uZiB8PSBQSVBFQ09ORl9ESVRIRVJfRU4gfAogCQkJ CSAgICBQSVBFQ09ORl9ESVRIRVJfVFlQRV9TUDsKIAotCQlzd2l0Y2ggKGludGVsX2NydGMtPmNv bmZpZy0+cGlwZV9icHApIHsKKwkJc3dpdGNoIChjcnRjX3N0YXRlLT5waXBlX2JwcCkgewogCQlj YXNlIDE4OgogCQkJcGlwZWNvbmYgfD0gUElQRUNPTkZfNkJQQzsKIAkJCWJyZWFrOwpAQCAtNzUx OCw5ICs3NTE5LDkgQEAgc3RhdGljIHZvaWQgaTl4eF9zZXRfcGlwZWNvbmYoc3RydWN0IGludGVs X2NydGMgKmludGVsX2NydGMpCiAJCX0KIAl9CiAKLQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5i YXNlLmFkanVzdGVkX21vZGUuZmxhZ3MgJiBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSkgeworCWlm IChjcnRjX3N0YXRlLT5iYXNlLmFkanVzdGVkX21vZGUuZmxhZ3MgJiBEUk1fTU9ERV9GTEFHX0lO VEVSTEFDRSkgewogCQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA8IDQgfHwKLQkJICAgIGludGVs X2NydGNfaGFzX3R5cGUoaW50ZWxfY3J0Yy0+Y29uZmlnLCBJTlRFTF9PVVRQVVRfU0RWTykpCisJ CSAgICBpbnRlbF9jcnRjX2hhc190eXBlKGNydGNfc3RhdGUsIElOVEVMX09VVFBVVF9TRFZPKSkK IAkJCXBpcGVjb25mIHw9IFBJUEVDT05GX0lOVEVSTEFDRV9XX0ZJRUxEX0lORElDQVRJT047CiAJ CWVsc2UKIAkJCXBpcGVjb25mIHw9IFBJUEVDT05GX0lOVEVSTEFDRV9XX1NZTkNfU0hJRlQ7CkBA IC03NTI4LDExICs3NTI5LDExIEBAIHN0YXRpYyB2b2lkIGk5eHhfc2V0X3BpcGVjb25mKHN0cnVj dCBpbnRlbF9jcnRjICppbnRlbF9jcnRjKQogCQlwaXBlY29uZiB8PSBQSVBFQ09ORl9QUk9HUkVT U0lWRTsKIAogCWlmICgoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhk ZXZfcHJpdikpICYmCi0JICAgICBpbnRlbF9jcnRjLT5jb25maWctPmxpbWl0ZWRfY29sb3JfcmFu Z2UpCisJICAgICBjcnRjX3N0YXRlLT5saW1pdGVkX2NvbG9yX3JhbmdlKQogCQlwaXBlY29uZiB8 PSBQSVBFQ09ORl9DT0xPUl9SQU5HRV9TRUxFQ1Q7CiAKLQlJOTE1X1dSSVRFKFBJUEVDT05GKGlu dGVsX2NydGMtPnBpcGUpLCBwaXBlY29uZik7Ci0JUE9TVElOR19SRUFEKFBJUEVDT05GKGludGVs X2NydGMtPnBpcGUpKTsKKwlJOTE1X1dSSVRFKFBJUEVDT05GKGNydGMtPnBpcGUpLCBwaXBlY29u Zik7CisJUE9TVElOR19SRUFEKFBJUEVDT05GKGNydGMtPnBpcGUpKTsKIH0KIAogc3RhdGljIGlu dCBpOHh4X2NydGNfY29tcHV0ZV9jbG9jayhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKQEAgLTg0 MzEsMTYgKzg0MzIsMTYgQEAgdm9pZCBpbnRlbF9pbml0X3BjaF9yZWZjbGsoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlscHRfaW5pdF9wY2hfcmVmY2xrKGRldl9wcml2KTsK IH0KIAotc3RhdGljIHZvaWQgaXJvbmxha2Vfc2V0X3BpcGVjb25mKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YykKK3N0YXRpYyB2b2lkIGlyb25sYWtlX3NldF9waXBlY29uZihjb25zdCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmRldik7Ci0Jc3RydWN0IGludGVsX2NydGMgKmludGVs X2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwotCWludCBwaXBlID0gaW50ZWxfY3J0Yy0+cGlw ZTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+ YmFzZS5jcnRjKTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KGNydGMtPmJhc2UuZGV2KTsKKwllbnVtIHBpcGUgcGlwZSA9IGNydGMtPnBpcGU7CiAJdWludDMy X3QgdmFsOwogCiAJdmFsID0gMDsKIAotCXN3aXRjaCAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBl X2JwcCkgeworCXN3aXRjaCAoY3J0Y19zdGF0ZS0+cGlwZV9icHApIHsKIAljYXNlIDE4OgogCQl2 YWwgfD0gUElQRUNPTkZfNkJQQzsKIAkJYnJlYWs7CkBAIC04NDU4LDMyICs4NDU5LDMyIEBAIHN0 YXRpYyB2b2lkIGlyb25sYWtlX3NldF9waXBlY29uZihzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJ CUJVRygpOwogCX0KIAotCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmRpdGhlcikKKwlpZiAoY3J0 Y19zdGF0ZS0+ZGl0aGVyKQogCQl2YWwgfD0gKFBJUEVDT05GX0RJVEhFUl9FTiB8IFBJUEVDT05G X0RJVEhFUl9UWVBFX1NQKTsKIAotCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmJhc2UuYWRqdXN0 ZWRfbW9kZS5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFKQorCWlmIChjcnRjX3N0YXRl LT5iYXNlLmFkanVzdGVkX21vZGUuZmxhZ3MgJiBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSkKIAkJ dmFsIHw9IFBJUEVDT05GX0lOVEVSTEFDRURfSUxLOwogCWVsc2UKIAkJdmFsIHw9IFBJUEVDT05G X1BST0dSRVNTSVZFOwogCi0JaWYgKGludGVsX2NydGMtPmNvbmZpZy0+bGltaXRlZF9jb2xvcl9y YW5nZSkKKwlpZiAoY3J0Y19zdGF0ZS0+bGltaXRlZF9jb2xvcl9yYW5nZSkKIAkJdmFsIHw9IFBJ UEVDT05GX0NPTE9SX1JBTkdFX1NFTEVDVDsKIAogCUk5MTVfV1JJVEUoUElQRUNPTkYocGlwZSks IHZhbCk7CiAJUE9TVElOR19SRUFEKFBJUEVDT05GKHBpcGUpKTsKIH0KIAotc3RhdGljIHZvaWQg aGFzd2VsbF9zZXRfcGlwZWNvbmYoc3RydWN0IGRybV9jcnRjICpjcnRjKQorc3RhdGljIHZvaWQg aGFzd2VsbF9zZXRfcGlwZWNvbmYoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNf c3RhdGUpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShj cnRjLT5kZXYpOwotCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0 YyhjcnRjKTsKLQllbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBpbnRlbF9jcnRjLT5j b25maWctPmNwdV90cmFuc2NvZGVyOworCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50 ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5kZXYpOworCWVudW0gdHJhbnNjb2RlciBj cHVfdHJhbnNjb2RlciA9IGNydGNfc3RhdGUtPmNwdV90cmFuc2NvZGVyOwogCXUzMiB2YWwgPSAw OwogCi0JaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpICYmIGludGVsX2NydGMtPmNvbmZpZy0+ZGl0 aGVyKQorCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSAmJiBjcnRjX3N0YXRlLT5kaXRoZXIpCiAJ CXZhbCB8PSAoUElQRUNPTkZfRElUSEVSX0VOIHwgUElQRUNPTkZfRElUSEVSX1RZUEVfU1ApOwog Ci0JaWYgKGludGVsX2NydGMtPmNvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlLmZsYWdzICYgRFJN X01PREVfRkxBR19JTlRFUkxBQ0UpCisJaWYgKGNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9k ZS5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFKQogCQl2YWwgfD0gUElQRUNPTkZfSU5U RVJMQUNFRF9JTEs7CiAJZWxzZQogCQl2YWwgfD0gUElQRUNPTkZfUFJPR1JFU1NJVkU7CkBAIC04 NDkyLDE2ICs4NDkzLDE1IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfc2V0X3BpcGVjb25mKHN0cnVj dCBkcm1fY3J0YyAqY3J0YykKIAlQT1NUSU5HX1JFQUQoUElQRUNPTkYoY3B1X3RyYW5zY29kZXIp KTsKIH0KIAotc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZW1pc2Moc3RydWN0IGRybV9jcnRj ICpjcnRjKQorc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZW1pc2MoY29uc3Qgc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5kZXYpOwotCXN0cnVjdCBpbnRlbF9jcnRjICppbnRl bF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKLQlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y29uZmlnID0gaW50ZWxfY3J0Yy0+Y29uZmlnOworCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9j cnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOworCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoaW50ZWxfY3J0Yy0+YmFzZS5kZXYpOwog CiAJaWYgKElTX0JST0FEV0VMTChkZXZfcHJpdikgfHwgSU5URUxfR0VOKGRldl9wcml2KSA+PSA5 KSB7CiAJCXUzMiB2YWwgPSAwOwogCi0JCXN3aXRjaCAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBl X2JwcCkgeworCQlzd2l0Y2ggKGNydGNfc3RhdGUtPnBpcGVfYnBwKSB7CiAJCWNhc2UgMTg6CiAJ CQl2YWwgfD0gUElQRU1JU0NfRElUSEVSXzZfQlBDOwogCQkJYnJlYWs7CkBAIC04NTE5LDEwICs4 NTE5LDEwIEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfc2V0X3BpcGVtaXNjKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YykKIAkJCUJVRygpOwogCQl9CiAKLQkJaWYgKGludGVsX2NydGMtPmNvbmZpZy0+ZGl0 aGVyKQorCQlpZiAoY3J0Y19zdGF0ZS0+ZGl0aGVyKQogCQkJdmFsIHw9IFBJUEVNSVNDX0RJVEhF Ul9FTkFCTEUgfCBQSVBFTUlTQ19ESVRIRVJfVFlQRV9TUDsKIAotCQlpZiAoY29uZmlnLT55Y2Jj cjQyMCkgeworCQlpZiAoY3J0Y19zdGF0ZS0+eWNiY3I0MjApIHsKIAkJCXZhbCB8PSBQSVBFTUlT Q19PVVRQVVRfQ09MT1JTUEFDRV9ZVVYgfAogCQkJCVBJUEVNSVNDX1lVVjQyMF9FTkFCTEUgfAog CQkJCVBJUEVNSVNDX1lVVjQyMF9NT0RFX0ZVTExfQkxFTkQ7Ci0tIAoyLjE5LjAKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=