From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.9 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,UNWANTED_LANGUAGE_BODY, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D7336C2D0E4 for ; Tue, 17 Nov 2020 19:45:03 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 827662222E for ; Tue, 17 Nov 2020 19:45:03 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 827662222E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A44106E077; Tue, 17 Nov 2020 19:44:58 +0000 (UTC) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id B666C6E063 for ; Tue, 17 Nov 2020 19:44:55 +0000 (UTC) IronPort-SDR: z+ldOIXSAy5sp+1lxILevLAv80oOwKQzq34U7tTbX8bVBLd3rjfE+0BF0LiQHkFlFYZy+YSBAs PCyKW6LLELcQ== X-IronPort-AV: E=McAfee;i="6000,8403,9808"; a="232612534" X-IronPort-AV: E=Sophos;i="5.77,486,1596524400"; d="scan'208";a="232612534" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Nov 2020 11:44:53 -0800 IronPort-SDR: +/yPkTprSg+rzT3rdZxST2A7WoCryBqRbD/3WqS3JODsmKMCcSsYqfEetLoUgwhT+7k5zDkdoA bobk+FLay0wQ== X-IronPort-AV: E=Sophos;i="5.77,486,1596524400"; d="scan'208";a="359034191" Received: from labuser-z97x-ud5h.jf.intel.com ([10.165.21.211]) by fmsmga004-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 17 Nov 2020 11:44:53 -0800 From: Manasi Navare To: intel-gfx@lists.freedesktop.org Date: Tue, 17 Nov 2020 11:47:09 -0800 Message-Id: <20201117194718.11462-7-manasi.d.navare@intel.com> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20201117194718.11462-1-manasi.d.navare@intel.com> References: <20201117194718.11462-1-manasi.d.navare@intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [CI 06/15] drm/i915: HW state readout for Bigjoiner case X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" U2tpcCBpdGVyYXRpbmcgb3ZlciBiaWdqb2luZXIgc2xhdmVzLCBvbmx5IHRoZSBtYXN0ZXIgaGFz IHRoZSBzdGF0ZSB3ZQpjYXJlIGFib3V0LgoKQWRkIHRoZSB3aWR0aCBvZiB0aGUgYmlnam9pbmVy IHNsYXZlIHRvIHRoZSByZWNvbnN0cnVjdGVkIGZiLgoKSGlkZSB0aGUgYmlnam9pbmVyIHNsYXZl IHRvIHVzZXJzcGFjZSwgYW5kIGRvdWJsZSB0aGUgbW9kZSBvbiBiaWdqb2luZXIKbWFzdGVyLgoK QW5kIGxhc3QsIGRpc2FibGUgYmlnam9pbmVyIHNsYXZlIGZyb20gcHJpbWFyeSBpZiByZWNvbnN0 cnVjdGlvbiBmYWlscy4KCnYzOgoqIEZpeCB0aGUgZGRpX2dldF9jb25maWcgc2xhdmUgZXJyb3Ig KEFua2l0IE5hdXRpeWFsKQp2MjoKKiBVbnN1cHBvcnRlZCBiaWdqb2luZXIgY29uZmlnIGZvciBp bml0aWFsIGZiIChWaWxsZSkKClNpZ25lZC1vZmYtYnk6IE1hbmFzaSBOYXZhcmUgPG1hbmFzaS5k Lm5hdmFyZUBpbnRlbC5jb20+Clt2c3lyamFsYToKKiBEb24ndCBkbyBhbnkgaHctPnVhcGkgc3Rh dGUgY29weSBmb3IgYmlnam9pbmVyIHNsYXZlCiogV2Ugc3RpbGwgaGF2ZSBody5tb2RlIHNvIG5v IG5lZWQgdG8gcGFzcyBpdCBpbgoqIEFwcGVhc2UgY2hlY2twYXRjaF0KU2lnbmVkLW9mZi1ieTog VmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQt Ynk6IEFuaW1lc2ggTWFubmEgPGFuaW1lc2gubWFubmFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaWNsX2RzaS5jICAgICAgICB8ICAgMiAtCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jICAgICAgfCAgMzcgKystCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyAgfCAzMDcgKysrKysrKysrKysrLS0t LS0tCiAuLi4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggICAgfCAgIDEg KwogNCBmaWxlcyBjaGFuZ2VkLCAyMzggaW5zZXJ0aW9ucygrKSwgMTA5IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaWNsX2RzaS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pY2xfZHNpLmMKaW5kZXggZTgzMzY0YjU3NzRmLi5h OTQzOWI0MTU2MDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaWNs X2RzaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaWNsX2RzaS5jCkBAIC0x NDkyLDggKzE0OTIsNiBAQCBzdGF0aWMgdm9pZCBnZW4xMV9kc2lfZ2V0X2NvbmZpZyhzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2lu dGVsX2NydGMocGlwZV9jb25maWctPnVhcGkuY3J0Yyk7CiAJc3RydWN0IGludGVsX2RzaSAqaW50 ZWxfZHNpID0gZW5jX3RvX2ludGVsX2RzaShlbmNvZGVyKTsKIAotCWludGVsX2RzY19nZXRfY29u ZmlnKHBpcGVfY29uZmlnKTsKLQogCS8qIEZJWE1FOiBhZGFwdCBpY2xfZGRpX2Nsb2NrX2dldCgp IGZvciBEU0kgYW5kIHVzZSB0aGF0PyAqLwogCXBpcGVfY29uZmlnLT5wb3J0X2Nsb2NrID0gaW50 ZWxfZHBsbF9nZXRfZnJlcShpOTE1LAogCQkJCQkJICAgICAgcGlwZV9jb25maWctPnNoYXJlZF9k cGxsLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGku YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMKaW5kZXggODFjNDA0 M2NlNDJhLi5jNTgwYTFkZTE1MGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfZGRpLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9kZGkuYwpAQCAtNDU3NywyMCArNDU3NywxNCBAQCBzdGF0aWMgdm9pZCBiZHdfZ2V0X3RyYW5z X3BvcnRfc3luY19jb25maWcoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJ CSAgICBjcnRjX3N0YXRlLT5zeW5jX21vZGVfc2xhdmVzX21hc2spOwogfQogCi12b2lkIGludGVs X2RkaV9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAotCQkJICBzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCitzdGF0aWMgdm9pZCBpbnRlbF9kZGlf cmVhZF9mdW5jX2N0bChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKKwkJCQkgICAgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKQogewogCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYpOwogCXN0cnVjdCBp bnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhwaXBlX2NvbmZpZy0+dWFwaS5j cnRjKTsKIAllbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBwaXBlX2NvbmZpZy0+Y3B1 X3RyYW5zY29kZXI7CiAJdTMyIHRlbXAsIGZsYWdzID0gMDsKIAotCS8qIFhYWDogRFNJIHRyYW5z Y29kZXIgcGFyYW5vaWEgKi8KLQlpZiAoZHJtX1dBUk5fT04oJmRldl9wcml2LT5kcm0sIHRyYW5z Y29kZXJfaXNfZHNpKGNwdV90cmFuc2NvZGVyKSkpCi0JCXJldHVybjsKLQotCWludGVsX2RzY19n ZXRfY29uZmlnKHBpcGVfY29uZmlnKTsKLQogCXRlbXAgPSBpbnRlbF9kZV9yZWFkKGRldl9wcml2 LCBUUkFOU19ERElfRlVOQ19DVEwoY3B1X3RyYW5zY29kZXIpKTsKIAlpZiAodGVtcCAmIFRSQU5T X0RESV9QSFNZTkMpCiAJCWZsYWdzIHw9IERSTV9NT0RFX0ZMQUdfUEhTWU5DOwpAQCAtNDY4NCw2 ICs0Njc4LDMwIEBAIHZvaWQgaW50ZWxfZGRpX2dldF9jb25maWcoc3RydWN0IGludGVsX2VuY29k ZXIgKmVuY29kZXIsCiAJZGVmYXVsdDoKIAkJYnJlYWs7CiAJfQorfQorCit2b2lkIGludGVsX2Rk aV9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAorCQkJICBzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShlbmNvZGVyLT5iYXNlLmRldik7CisJZW51bSB0cmFuc2Nv ZGVyIGNwdV90cmFuc2NvZGVyID0gcGlwZV9jb25maWctPmNwdV90cmFuc2NvZGVyOworCisJLyog WFhYOiBEU0kgdHJhbnNjb2RlciBwYXJhbm9pYSAqLworCWlmIChkcm1fV0FSTl9PTigmZGV2X3By aXYtPmRybSwgdHJhbnNjb2Rlcl9pc19kc2koY3B1X3RyYW5zY29kZXIpKSkKKwkJcmV0dXJuOwor CisJaWYgKHBpcGVfY29uZmlnLT5iaWdqb2luZXJfc2xhdmUpIHsKKwkJLyogcmVhZCBvdXQgcGlw ZSBzZXR0aW5ncyBmcm9tIG1hc3RlciAqLworCQllbnVtIHRyYW5zY29kZXIgc2F2ZSA9IHBpcGVf Y29uZmlnLT5jcHVfdHJhbnNjb2RlcjsKKworCQkvKiBPdXIgb3duIHRyYW5zY29kZXIgbmVlZHMg dG8gYmUgZGlzYWJsZWQgd2hlbiByZWFkaW5nIGl0IGluIGludGVsX2RkaV9yZWFkX2Z1bmNfY3Rs KCkgKi8KKwkJV0FSTl9PTihwaXBlX2NvbmZpZy0+b3V0cHV0X3R5cGVzKTsKKwkJcGlwZV9jb25m aWctPmNwdV90cmFuc2NvZGVyID0gKGVudW0gdHJhbnNjb2RlcilwaXBlX2NvbmZpZy0+Ymlnam9p bmVyX2xpbmtlZF9jcnRjLT5waXBlOworCQlpbnRlbF9kZGlfcmVhZF9mdW5jX2N0bChlbmNvZGVy LCBwaXBlX2NvbmZpZyk7CisJCXBpcGVfY29uZmlnLT5jcHVfdHJhbnNjb2RlciA9IHNhdmU7CisJ fSBlbHNlIHsKKwkJaW50ZWxfZGRpX3JlYWRfZnVuY19jdGwoZW5jb2RlciwgcGlwZV9jb25maWcp OworCX0KIAogCXBpcGVfY29uZmlnLT5oYXNfYXVkaW8gPQogCQlpbnRlbF9kZGlfaXNfYXVkaW9f ZW5hYmxlZChkZXZfcHJpdiwgY3B1X3RyYW5zY29kZXIpOwpAQCAtNDcwOSw3ICs0NzI3LDggQEAg dm9pZCBpbnRlbF9kZGlfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwK IAkJZGV2X3ByaXYtPnZidC5lZHAuYnBwID0gcGlwZV9jb25maWctPnBpcGVfYnBwOwogCX0KIAot CWludGVsX2RkaV9jbG9ja19nZXQoZW5jb2RlciwgcGlwZV9jb25maWcpOworCWlmICghcGlwZV9j b25maWctPmJpZ2pvaW5lcl9zbGF2ZSkKKwkJaW50ZWxfZGRpX2Nsb2NrX2dldChlbmNvZGVyLCBw aXBlX2NvbmZpZyk7CiAKIAlpZiAoSVNfR0VOOV9MUChkZXZfcHJpdikpCiAJCXBpcGVfY29uZmln LT5sYW5lX2xhdF9vcHRpbV9tYXNrID0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5LmMKaW5kZXggZTVhNTY5MDRmMzNmLi42OGM0ZjZjY2E4MmQgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCkBAIC0zNjMxLDYgKzM2 MzEsOCBAQCBpbnRlbF9maW5kX2luaXRpYWxfcGxhbmVfb2JqKHN0cnVjdCBpbnRlbF9jcnRjICpp bnRlbF9jcnRjLAogCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmUgPSB0b19pbnRlbF9w bGFuZShwcmltYXJ5KTsKIAlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKmludGVsX3N0YXRlID0K IAkJdG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmVfc3RhdGUpOworCSBzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9CisJCSB0b19pbnRlbF9jcnRjX3N0YXRlKGludGVsX2NydGMt PmJhc2Uuc3RhdGUpOwogCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiOwogCXN0cnVjdCBpOTE1 X3ZtYSAqdm1hOwogCkBAIC0zNjUzLDcgKzM2NTUsNyBAQCBpbnRlbF9maW5kX2luaXRpYWxfcGxh bmVfb2JqKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAogCQlpZiAoYyA9PSAmaW50ZWxf Y3J0Yy0+YmFzZSkKIAkJCWNvbnRpbnVlOwogCi0JCWlmICghdG9faW50ZWxfY3J0YyhjKS0+YWN0 aXZlKQorCQlpZiAoIXRvX2ludGVsX2NydGNfc3RhdGUoYy0+c3RhdGUpLT51YXBpLmFjdGl2ZSkK IAkJCWNvbnRpbnVlOwogCiAJCXN0YXRlID0gdG9faW50ZWxfcGxhbmVfc3RhdGUoYy0+cHJpbWFy eS0+c3RhdGUpOwpAQCAtMzY3NSw2ICszNjc3LDExIEBAIGludGVsX2ZpbmRfaW5pdGlhbF9wbGFu ZV9vYmooc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCiAJICogcHJldGVuZCB0aGUgQklP UyBuZXZlciBoYWQgaXQgZW5hYmxlZC4KIAkgKi8KIAlpbnRlbF9wbGFuZV9kaXNhYmxlX25vYXRv bWljKGludGVsX2NydGMsIGludGVsX3BsYW5lKTsKKwlpZiAoY3J0Y19zdGF0ZS0+Ymlnam9pbmVy KSB7CisJCXN0cnVjdCBpbnRlbF9jcnRjICpzbGF2ZSA9CisJCQljcnRjX3N0YXRlLT5iaWdqb2lu ZXJfbGlua2VkX2NydGM7CisJCWludGVsX3BsYW5lX2Rpc2FibGVfbm9hdG9taWMoc2xhdmUsIHRv X2ludGVsX3BsYW5lKHNsYXZlLT5iYXNlLnByaW1hcnkpKTsKKwl9CiAKIAlyZXR1cm47CiAKQEAg LTgyMjAsMTMgKzgyMjcsMjcgQEAgc3RhdGljIHZvaWQgaW50ZWxfY3J0Y19yZWFkb3V0X2Rlcml2 ZWRfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUKIAogCWRybV9tb2Rl X2NvcHkocGlwZV9tb2RlLCBhZGp1c3RlZF9tb2RlKTsKIAorCWlmIChjcnRjX3N0YXRlLT5iaWdq b2luZXIpIHsKKwkJLyoKKwkJICogdHJhbnNjb2RlciBpcyBwcm9ncmFtbWVkIHRvIHRoZSBmdWxs IG1vZGUsCisJCSAqIGJ1dCBwaXBlIHRpbWluZ3MgYXJlIGhhbGYgb2YgdGhlIHRyYW5zY29kZXIg bW9kZQorCQkgKi8KKwkJcGlwZV9tb2RlLT5jcnRjX2hkaXNwbGF5IC89IDI7CisJCXBpcGVfbW9k ZS0+Y3J0Y19oYmxhbmtfc3RhcnQgLz0gMjsKKwkJcGlwZV9tb2RlLT5jcnRjX2hibGFua19lbmQg Lz0gMjsKKwkJcGlwZV9tb2RlLT5jcnRjX2hzeW5jX3N0YXJ0IC89IDI7CisJCXBpcGVfbW9kZS0+ Y3J0Y19oc3luY19lbmQgLz0gMjsKKwkJcGlwZV9tb2RlLT5jcnRjX2h0b3RhbCAvPSAyOworCQlw aXBlX21vZGUtPmNydGNfY2xvY2sgLz0gMjsKKwl9CisKIAlpbnRlbF9tb2RlX2Zyb21fY3J0Y190 aW1pbmdzKHBpcGVfbW9kZSwgcGlwZV9tb2RlKTsKIAlpbnRlbF9tb2RlX2Zyb21fY3J0Y190aW1p bmdzKGFkanVzdGVkX21vZGUsIGFkanVzdGVkX21vZGUpOwogCiAJaW50ZWxfY3J0Y19jb21wdXRl X3BpeGVsX3JhdGUoY3J0Y19zdGF0ZSk7CiAKIAlkcm1fbW9kZV9jb3B5KG1vZGUsIGFkanVzdGVk X21vZGUpOwotCW1vZGUtPmhkaXNwbGF5ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfdzsKKwltb2Rl LT5oZGlzcGxheSA9IGNydGNfc3RhdGUtPnBpcGVfc3JjX3cgPDwgY3J0Y19zdGF0ZS0+Ymlnam9p bmVyOwogCW1vZGUtPnZkaXNwbGF5ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfaDsKIH0KIApAQCAt MTA2OTgsNiArMTA3MTksNyBAQCBzdGF0aWMgdm9pZAogc2tsX2dldF9pbml0aWFsX3BsYW5lX2Nv bmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKIAkJCSAgICAgc3RydWN0IGludGVsX2luaXRp YWxfcGxhbmVfY29uZmlnICpwbGFuZV9jb25maWcpCiB7CisJc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUgPSB0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPmJhc2Uuc3RhdGUpOwog CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNlLmRldjsKIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CiAJc3RydWN0IGludGVsX3BsYW5l ICpwbGFuZSA9IHRvX2ludGVsX3BsYW5lKGNydGMtPmJhc2UucHJpbWFyeSk7CkBAIC0xMDcxNCw2 ICsxMDczNiwxMiBAQCBza2xfZ2V0X2luaXRpYWxfcGxhbmVfY29uZmlnKHN0cnVjdCBpbnRlbF9j cnRjICpjcnRjLAogCiAJZHJtX1dBUk5fT04oZGV2LCBwaXBlICE9IGNydGMtPnBpcGUpOwogCisJ aWYgKGNydGNfc3RhdGUtPmJpZ2pvaW5lcikgeworCQlkcm1fZGJnX2ttcygmZGV2X3ByaXYtPmRy bSwKKwkJCSAgICAiVW5zdXBwb3J0ZWQgYmlnam9pbmVyIGNvbmZpZ3VyYXRpb24gZm9yIGluaXRp YWwgRkJcbiIpOworCQlyZXR1cm47CisJfQorCiAJaW50ZWxfZmIgPSBremFsbG9jKHNpemVvZigq aW50ZWxfZmIpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWludGVsX2ZiKSB7CiAJCWRybV9kYmdfa21z KCZkZXZfcHJpdi0+ZHJtLCAiZmFpbGVkIHRvIGFsbG9jIGZiXG4iKTsKQEAgLTExMzY1LDYgKzEx MzkzLDggQEAgc3RhdGljIHZvaWQgaHN3X2dldF9kZGlfcG9ydF9zdGF0ZShzdHJ1Y3QgaW50ZWxf Y3J0YyAqY3J0YywKIAl9IGVsc2UgewogCQl0bXAgPSBpbnRlbF9kZV9yZWFkKGRldl9wcml2LAog CQkJCSAgICBUUkFOU19ERElfRlVOQ19DVEwoY3B1X3RyYW5zY29kZXIpKTsKKwkJaWYgKCEodG1w ICYgVFJBTlNfRERJX0ZVTkNfRU5BQkxFKSkKKwkJCXJldHVybjsKIAkJaWYgKElOVEVMX0dFTihk ZXZfcHJpdikgPj0gMTIpCiAJCQlwb3J0ID0gVEdMX1RSQU5TX0RESV9GVU5DX0NUTF9WQUxfVE9f UE9SVCh0bXApOwogCQllbHNlCkBAIC0xMTQzMywxMCArMTE0NjMsMTkgQEAgc3RhdGljIGJvb2wg aHN3X2dldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKIAkJYWN0aXZlID0g dHJ1ZTsKIAl9CiAKLQlpZiAoIWFjdGl2ZSkKLQkJZ290byBvdXQ7CisJaW50ZWxfZHNjX2dldF9j b25maWcocGlwZV9jb25maWcpOworCisJaWYgKCFhY3RpdmUpIHsKKwkJLyogYmlnam9pbmVyIHNs YXZlIGRvZXNuJ3QgZW5hYmxlIHRyYW5zY29kZXIgKi8KKwkJaWYgKCFwaXBlX2NvbmZpZy0+Ymln am9pbmVyX3NsYXZlKQorCQkJZ290byBvdXQ7CiAKLQlpZiAoIXRyYW5zY29kZXJfaXNfZHNpKHBp cGVfY29uZmlnLT5jcHVfdHJhbnNjb2RlcikgfHwKKwkJYWN0aXZlID0gdHJ1ZTsKKwkJcGlwZV9j b25maWctPnBpeGVsX211bHRpcGxpZXIgPSAxOworCisJCS8qIHdlIGNhbm5vdCByZWFkIG91dCBt b3N0IHN0YXRlLCBzbyBkb24ndCBib3RoZXIuLiAqLworCQlwaXBlX2NvbmZpZy0+cXVpcmtzIHw9 IFBJUEVfQ09ORklHX1FVSVJLX0JJR0pPSU5FUl9TTEFWRTsKKwl9IGVsc2UgaWYgKCF0cmFuc2Nv ZGVyX2lzX2RzaShwaXBlX2NvbmZpZy0+Y3B1X3RyYW5zY29kZXIpIHx8CiAJICAgIElOVEVMX0dF TihkZXZfcHJpdikgPj0gMTEpIHsKIAkJaHN3X2dldF9kZGlfcG9ydF9zdGF0ZShjcnRjLCBwaXBl X2NvbmZpZyk7CiAJCWludGVsX2dldF90cmFuc2NvZGVyX3RpbWluZ3MoY3J0YywgcGlwZV9jb25m aWcpOwpAQCAtMTE1MTEsNyArMTE1NTAsMTAgQEAgc3RhdGljIGJvb2wgaHN3X2dldF9waXBlX2Nv bmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKIAkJfQogCX0KIAotCWlmIChwaXBlX2NvbmZp Zy0+Y3B1X3RyYW5zY29kZXIgIT0gVFJBTlNDT0RFUl9FRFAgJiYKKwlpZiAocGlwZV9jb25maWct PmJpZ2pvaW5lcl9zbGF2ZSkgeworCQkvKiBDYW5ub3QgYmUgcmVhZCBvdXQgYXMgYSBzbGF2ZSwg c2V0IHRvIDAuICovCisJCXBpcGVfY29uZmlnLT5waXhlbF9tdWx0aXBsaWVyID0gMDsKKwl9IGVs c2UgaWYgKHBpcGVfY29uZmlnLT5jcHVfdHJhbnNjb2RlciAhPSBUUkFOU0NPREVSX0VEUCAmJgog CSAgICAhdHJhbnNjb2Rlcl9pc19kc2kocGlwZV9jb25maWctPmNwdV90cmFuc2NvZGVyKSkgewog CQlwaXBlX2NvbmZpZy0+cGl4ZWxfbXVsdGlwbGllciA9CiAJCQlpbnRlbF9kZV9yZWFkKGRldl9w cml2LApAQCAtMTM1NTUsNiArMTM1OTcsOSBAQCBpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19z dGF0ZShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwKIAogc3RhdGljIHZvaWQgaW50 ZWxfY3J0Y19jb3B5X2h3X3RvX3VhcGlfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNy dGNfc3RhdGUpCiB7CisJaWYgKGNydGNfc3RhdGUtPmJpZ2pvaW5lcl9zbGF2ZSkKKwkJcmV0dXJu OworCiAJY3J0Y19zdGF0ZS0+dWFwaS5lbmFibGUgPSBjcnRjX3N0YXRlLT5ody5lbmFibGU7CiAJ Y3J0Y19zdGF0ZS0+dWFwaS5hY3RpdmUgPSBjcnRjX3N0YXRlLT5ody5hY3RpdmU7CiAJZHJtX1dB Uk5fT04oY3J0Y19zdGF0ZS0+dWFwaS5jcnRjLT5kZXYsCkBAIC0xNDE5NiwzNSArMTQyNDEsNTMg QEAgaW50ZWxfcGlwZV9jb25maWdfY29tcGFyZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3VycmVudF9jb25maWcsCiAKIAlQSVBFX0NPTkZfQ0hFQ0tfWChvdXRwdXRfdHlwZXMpOwog Ci0JUElQRV9DT05GX0NIRUNLX0koaHcucGlwZV9tb2RlLmNydGNfaGRpc3BsYXkpOwotCVBJUEVf Q09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX2h0b3RhbCk7Ci0JUElQRV9DT05GX0NIRUNL X0koaHcucGlwZV9tb2RlLmNydGNfaGJsYW5rX3N0YXJ0KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSSho dy5waXBlX21vZGUuY3J0Y19oYmxhbmtfZW5kKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5waXBl X21vZGUuY3J0Y19oc3luY19zdGFydCk7Ci0JUElQRV9DT05GX0NIRUNLX0koaHcucGlwZV9tb2Rl LmNydGNfaHN5bmNfZW5kKTsKLQotCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRj X3ZkaXNwbGF5KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5waXBlX21vZGUuY3J0Y192dG90YWwp OwotCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX3ZibGFua19zdGFydCk7Ci0J UElQRV9DT05GX0NIRUNLX0koaHcucGlwZV9tb2RlLmNydGNfdmJsYW5rX2VuZCk7Ci0JUElQRV9D T05GX0NIRUNLX0koaHcucGlwZV9tb2RlLmNydGNfdnN5bmNfc3RhcnQpOwotCVBJUEVfQ09ORl9D SEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX3ZzeW5jX2VuZCk7Ci0KLQlQSVBFX0NPTkZfQ0hFQ0tf SShody5hZGp1c3RlZF9tb2RlLmNydGNfaGRpc3BsYXkpOwotCVBJUEVfQ09ORl9DSEVDS19JKGh3 LmFkanVzdGVkX21vZGUuY3J0Y19odG90YWwpOwotCVBJUEVfQ09ORl9DSEVDS19JKGh3LmFkanVz dGVkX21vZGUuY3J0Y19oYmxhbmtfc3RhcnQpOwotCVBJUEVfQ09ORl9DSEVDS19JKGh3LmFkanVz dGVkX21vZGUuY3J0Y19oYmxhbmtfZW5kKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5hZGp1c3Rl ZF9tb2RlLmNydGNfaHN5bmNfc3RhcnQpOwotCVBJUEVfQ09ORl9DSEVDS19JKGh3LmFkanVzdGVk X21vZGUuY3J0Y19oc3luY19lbmQpOwotCi0JUElQRV9DT05GX0NIRUNLX0koaHcuYWRqdXN0ZWRf bW9kZS5jcnRjX3ZkaXNwbGF5KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5hZGp1c3RlZF9tb2Rl LmNydGNfdnRvdGFsKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5hZGp1c3RlZF9tb2RlLmNydGNf dmJsYW5rX3N0YXJ0KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5hZGp1c3RlZF9tb2RlLmNydGNf dmJsYW5rX2VuZCk7Ci0JUElQRV9DT05GX0NIRUNLX0koaHcuYWRqdXN0ZWRfbW9kZS5jcnRjX3Zz eW5jX3N0YXJ0KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfSShody5hZGp1c3RlZF9tb2RlLmNydGNfdnN5 bmNfZW5kKTsKLQotCVBJUEVfQ09ORl9DSEVDS19JKHBpeGVsX211bHRpcGxpZXIpOworCS8qIEZJ WE1FIGRvIHRoZSByZWFkb3V0IHByb3Blcmx5IGFuZCBnZXQgcmlkIG9mIHRoaXMgcXVpcmsgKi8K KwlpZiAoIVBJUEVfQ09ORl9RVUlSSyhQSVBFX0NPTkZJR19RVUlSS19CSUdKT0lORVJfU0xBVkUp KSB7CisJCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX2hkaXNwbGF5KTsKKwkJ UElQRV9DT05GX0NIRUNLX0koaHcucGlwZV9tb2RlLmNydGNfaHRvdGFsKTsKKwkJUElQRV9DT05G X0NIRUNLX0koaHcucGlwZV9tb2RlLmNydGNfaGJsYW5rX3N0YXJ0KTsKKwkJUElQRV9DT05GX0NI RUNLX0koaHcucGlwZV9tb2RlLmNydGNfaGJsYW5rX2VuZCk7CisJCVBJUEVfQ09ORl9DSEVDS19J KGh3LnBpcGVfbW9kZS5jcnRjX2hzeW5jX3N0YXJ0KTsKKwkJUElQRV9DT05GX0NIRUNLX0koaHcu cGlwZV9tb2RlLmNydGNfaHN5bmNfZW5kKTsKKworCQlQSVBFX0NPTkZfQ0hFQ0tfSShody5waXBl X21vZGUuY3J0Y192ZGlzcGxheSk7CisJCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5j cnRjX3Z0b3RhbCk7CisJCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX3ZibGFu a19zdGFydCk7CisJCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX3ZibGFua19l bmQpOworCQlQSVBFX0NPTkZfQ0hFQ0tfSShody5waXBlX21vZGUuY3J0Y192c3luY19zdGFydCk7 CisJCVBJUEVfQ09ORl9DSEVDS19JKGh3LnBpcGVfbW9kZS5jcnRjX3ZzeW5jX2VuZCk7CisKKwkJ UElQRV9DT05GX0NIRUNLX0koaHcuYWRqdXN0ZWRfbW9kZS5jcnRjX2hkaXNwbGF5KTsKKwkJUElQ RV9DT05GX0NIRUNLX0koaHcuYWRqdXN0ZWRfbW9kZS5jcnRjX2h0b3RhbCk7CisJCVBJUEVfQ09O Rl9DSEVDS19JKGh3LmFkanVzdGVkX21vZGUuY3J0Y19oYmxhbmtfc3RhcnQpOworCQlQSVBFX0NP TkZfQ0hFQ0tfSShody5hZGp1c3RlZF9tb2RlLmNydGNfaGJsYW5rX2VuZCk7CisJCVBJUEVfQ09O Rl9DSEVDS19JKGh3LmFkanVzdGVkX21vZGUuY3J0Y19oc3luY19zdGFydCk7CisJCVBJUEVfQ09O Rl9DSEVDS19JKGh3LmFkanVzdGVkX21vZGUuY3J0Y19oc3luY19lbmQpOworCisJCVBJUEVfQ09O Rl9DSEVDS19JKGh3LmFkanVzdGVkX21vZGUuY3J0Y192ZGlzcGxheSk7CisJCVBJUEVfQ09ORl9D SEVDS19JKGh3LmFkanVzdGVkX21vZGUuY3J0Y192dG90YWwpOworCQlQSVBFX0NPTkZfQ0hFQ0tf SShody5hZGp1c3RlZF9tb2RlLmNydGNfdmJsYW5rX3N0YXJ0KTsKKwkJUElQRV9DT05GX0NIRUNL X0koaHcuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZibGFua19lbmQpOworCQlQSVBFX0NPTkZfQ0hFQ0tf SShody5hZGp1c3RlZF9tb2RlLmNydGNfdnN5bmNfc3RhcnQpOworCQlQSVBFX0NPTkZfQ0hFQ0tf SShody5hZGp1c3RlZF9tb2RlLmNydGNfdnN5bmNfZW5kKTsKKworCQlQSVBFX0NPTkZfQ0hFQ0tf SShwaXhlbF9tdWx0aXBsaWVyKTsKKworCQlQSVBFX0NPTkZfQ0hFQ0tfRkxBR1MoaHcuYWRqdXN0 ZWRfbW9kZS5mbGFncywKKwkJCQkgICAgICBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSk7CisKKwkJ aWYgKCFQSVBFX0NPTkZfUVVJUksoUElQRV9DT05GSUdfUVVJUktfTU9ERV9TWU5DX0ZMQUdTKSkg eworCQkJUElQRV9DT05GX0NIRUNLX0ZMQUdTKGh3LmFkanVzdGVkX21vZGUuZmxhZ3MsCisJCQkJ CSAgICAgIERSTV9NT0RFX0ZMQUdfUEhTWU5DKTsKKwkJCVBJUEVfQ09ORl9DSEVDS19GTEFHUyho dy5hZGp1c3RlZF9tb2RlLmZsYWdzLAorCQkJCQkgICAgICBEUk1fTU9ERV9GTEFHX05IU1lOQyk7 CisJCQlQSVBFX0NPTkZfQ0hFQ0tfRkxBR1MoaHcuYWRqdXN0ZWRfbW9kZS5mbGFncywKKwkJCQkJ ICAgICAgRFJNX01PREVfRkxBR19QVlNZTkMpOworCQkJUElQRV9DT05GX0NIRUNLX0ZMQUdTKGh3 LmFkanVzdGVkX21vZGUuZmxhZ3MsCisJCQkJCSAgICAgIERSTV9NT0RFX0ZMQUdfTlZTWU5DKTsK KwkJfQorCX0KKwogCVBJUEVfQ09ORl9DSEVDS19JKG91dHB1dF9mb3JtYXQpOwogCVBJUEVfQ09O Rl9DSEVDS19CT09MKGhhc19oZG1pX3NpbmspOwogCWlmICgoSU5URUxfR0VOKGRldl9wcml2KSA8 IDggJiYgIUlTX0hBU1dFTEwoZGV2X3ByaXYpKSB8fApAQCAtMTQyMzQsMjQgKzE0Mjk3LDEyIEBA IGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmN1cnJlbnRfY29uZmlnLAogCVBJUEVfQ09ORl9DSEVDS19CT09MKGhkbWlfc2NyYW1ibGluZyk7 CiAJUElQRV9DT05GX0NIRUNLX0JPT0woaGRtaV9oaWdoX3RtZHNfY2xvY2tfcmF0aW8pOwogCVBJ UEVfQ09ORl9DSEVDS19CT09MKGhhc19pbmZvZnJhbWUpOwotCVBJUEVfQ09ORl9DSEVDS19CT09M KGZlY19lbmFibGUpOworCS8qIEZJWE1FIGRvIHRoZSByZWFkb3V0IHByb3Blcmx5IGFuZCBnZXQg cmlkIG9mIHRoaXMgcXVpcmsgKi8KKwlpZiAoIVBJUEVfQ09ORl9RVUlSSyhQSVBFX0NPTkZJR19R VUlSS19CSUdKT0lORVJfU0xBVkUpKQorCQlQSVBFX0NPTkZfQ0hFQ0tfQk9PTChmZWNfZW5hYmxl KTsKIAogCVBJUEVfQ09ORl9DSEVDS19CT09MX0lOQ09NUExFVEUoaGFzX2F1ZGlvKTsKIAotCVBJ UEVfQ09ORl9DSEVDS19GTEFHUyhody5hZGp1c3RlZF9tb2RlLmZsYWdzLAotCQkJICAgICAgRFJN X01PREVfRkxBR19JTlRFUkxBQ0UpOwotCi0JaWYgKCFQSVBFX0NPTkZfUVVJUksoUElQRV9DT05G SUdfUVVJUktfTU9ERV9TWU5DX0ZMQUdTKSkgewotCQlQSVBFX0NPTkZfQ0hFQ0tfRkxBR1MoaHcu YWRqdXN0ZWRfbW9kZS5mbGFncywKLQkJCQkgICAgICBEUk1fTU9ERV9GTEFHX1BIU1lOQyk7Ci0J CVBJUEVfQ09ORl9DSEVDS19GTEFHUyhody5hZGp1c3RlZF9tb2RlLmZsYWdzLAotCQkJCSAgICAg IERSTV9NT0RFX0ZMQUdfTkhTWU5DKTsKLQkJUElQRV9DT05GX0NIRUNLX0ZMQUdTKGh3LmFkanVz dGVkX21vZGUuZmxhZ3MsCi0JCQkJICAgICAgRFJNX01PREVfRkxBR19QVlNZTkMpOwotCQlQSVBF X0NPTkZfQ0hFQ0tfRkxBR1MoaHcuYWRqdXN0ZWRfbW9kZS5mbGFncywKLQkJCQkgICAgICBEUk1f TU9ERV9GTEFHX05WU1lOQyk7Ci0JfQotCiAJUElQRV9DT05GX0NIRUNLX1goZ21jaF9wZml0LmNv bnRyb2wpOwogCS8qIHBmaXQgcmF0aW9zIGFyZSBhdXRvY29tcHV0ZWQgYnkgdGhlIGh3IG9uIGdl bjQrICovCiAJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPCA0KQpAQCAtMTQyNzcsNyArMTQzMjgs OSBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjdXJyZW50X2NvbmZpZywKIAkJfQogCiAJCVBJUEVfQ09ORl9DSEVDS19JKHNjYWxlcl9z dGF0ZS5zY2FsZXJfaWQpOwotCQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkocGl4ZWxfcmF0 ZSk7CisJCS8qIEZJWE1FIGRvIHRoZSByZWFkb3V0IHByb3Blcmx5IGFuZCBnZXQgcmlkIG9mIHRo aXMgcXVpcmsgKi8KKwkJaWYgKCFQSVBFX0NPTkZfUVVJUksoUElQRV9DT05GSUdfUVVJUktfQklH Sk9JTkVSX1NMQVZFKSkKKwkJCVBJUEVfQ09ORl9DSEVDS19DTE9DS19GVVpaWShwaXhlbF9yYXRl KTsKIAogCQlQSVBFX0NPTkZfQ0hFQ0tfWChnYW1tYV9tb2RlKTsKIAkJaWYgKElTX0NIRVJSWVZJ RVcoZGV2X3ByaXYpKQpAQCAtMTQyOTgsNDkgKzE0MzUxLDUzIEBAIGludGVsX3BpcGVfY29uZmln X2NvbXBhcmUoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmN1cnJlbnRfY29uZmlnLAog CVBJUEVfQ09ORl9DSEVDS19CT09MKGRvdWJsZV93aWRlKTsKIAogCVBJUEVfQ09ORl9DSEVDS19Q KHNoYXJlZF9kcGxsKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLmRwbGwpOwot CVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUuZHBsbF9tZCk7Ci0JUElQRV9DT05GX0NI RUNLX1goZHBsbF9od19zdGF0ZS5mcDApOwotCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3Rh dGUuZnAxKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLndycGxsKTsKLQlQSVBF X0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnNwbGwpOwotCVBJUEVfQ09ORl9DSEVDS19YKGRw bGxfaHdfc3RhdGUuY3RybDEpOwotCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUuY2Zn Y3IxKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLmNmZ2NyMik7Ci0JUElQRV9D T05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5jZmdjcjApOwotCVBJUEVfQ09ORl9DSEVDS19YKGRw bGxfaHdfc3RhdGUuZWJiMCk7Ci0JUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5lYmI0 KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBsbDApOwotCVBJUEVfQ09ORl9D SEVDS19YKGRwbGxfaHdfc3RhdGUucGxsMSk7Ci0JUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19z dGF0ZS5wbGwyKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBsbDMpOwotCVBJ UEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUucGxsNik7Ci0JUElQRV9DT05GX0NIRUNLX1go ZHBsbF9od19zdGF0ZS5wbGw4KTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBs bDkpOwotCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUucGxsMTApOwotCVBJUEVfQ09O Rl9DSEVDS19YKGRwbGxfaHdfc3RhdGUucGNzZHcxMik7Ci0JUElQRV9DT05GX0NIRUNLX1goZHBs bF9od19zdGF0ZS5tZ19yZWZjbGtpbl9jdGwpOwotCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdf c3RhdGUubWdfY2xrdG9wMl9jb3JlY2xrY3RsMSk7Ci0JUElQRV9DT05GX0NIRUNLX1goZHBsbF9o d19zdGF0ZS5tZ19jbGt0b3AyX2hzY2xrY3RsKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3 X3N0YXRlLm1nX3BsbF9kaXYwKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLm1n X3BsbF9kaXYxKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLm1nX3BsbF9sZik7 Ci0JUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5tZ19wbGxfZnJhY19sb2NrKTsKLQlQ SVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLm1nX3BsbF9zc2MpOwotCVBJUEVfQ09ORl9D SEVDS19YKGRwbGxfaHdfc3RhdGUubWdfcGxsX2JpYXMpOwotCVBJUEVfQ09ORl9DSEVDS19YKGRw bGxfaHdfc3RhdGUubWdfcGxsX3RkY19jb2xkc3RfYmlhcyk7Ci0KLQlQSVBFX0NPTkZfQ0hFQ0tf WChkc2lfcGxsLmN0cmwpOwotCVBJUEVfQ09ORl9DSEVDS19YKGRzaV9wbGwuZGl2KTsKLQotCWlm IChJU19HNFgoZGV2X3ByaXYpIHx8IElOVEVMX0dFTihkZXZfcHJpdikgPj0gNSkKLQkJUElQRV9D T05GX0NIRUNLX0kocGlwZV9icHApOwotCi0JUElQRV9DT05GX0NIRUNLX0NMT0NLX0ZVWlpZKGh3 LnBpcGVfbW9kZS5jcnRjX2Nsb2NrKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkoaHcu YWRqdXN0ZWRfbW9kZS5jcnRjX2Nsb2NrKTsKLQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlko cG9ydF9jbG9jayk7Ci0KLQlQSVBFX0NPTkZfQ0hFQ0tfSShtaW5fdm9sdGFnZV9sZXZlbCk7CisK KwkvKiBGSVhNRSBkbyB0aGUgcmVhZG91dCBwcm9wZXJseSBhbmQgZ2V0IHJpZCBvZiB0aGlzIHF1 aXJrICovCisJaWYgKCFQSVBFX0NPTkZfUVVJUksoUElQRV9DT05GSUdfUVVJUktfQklHSk9JTkVS X1NMQVZFKSkgeworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLmRwbGwpOworCQlQ SVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLmRwbGxfbWQpOworCQlQSVBFX0NPTkZfQ0hF Q0tfWChkcGxsX2h3X3N0YXRlLmZwMCk7CisJCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3Rh dGUuZnAxKTsKKwkJUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS53cnBsbCk7CisJCVBJ UEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUuc3BsbCk7CisJCVBJUEVfQ09ORl9DSEVDS19Y KGRwbGxfaHdfc3RhdGUuY3RybDEpOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRl LmNmZ2NyMSk7CisJCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUuY2ZnY3IyKTsKKwkJ UElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5jZmdjcjApOworCQlQSVBFX0NPTkZfQ0hF Q0tfWChkcGxsX2h3X3N0YXRlLmViYjApOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0 YXRlLmViYjQpOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBsbDApOworCQlQ SVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBsbDEpOworCQlQSVBFX0NPTkZfQ0hFQ0tf WChkcGxsX2h3X3N0YXRlLnBsbDIpOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRl LnBsbDMpOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBsbDYpOworCQlQSVBF X0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBsbDgpOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChk cGxsX2h3X3N0YXRlLnBsbDkpOworCQlQSVBFX0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLnBs bDEwKTsKKwkJUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5wY3NkdzEyKTsKKwkJUElQ RV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5tZ19yZWZjbGtpbl9jdGwpOworCQlQSVBFX0NP TkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLm1nX2Nsa3RvcDJfY29yZWNsa2N0bDEpOworCQlQSVBF X0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLm1nX2Nsa3RvcDJfaHNjbGtjdGwpOworCQlQSVBF X0NPTkZfQ0hFQ0tfWChkcGxsX2h3X3N0YXRlLm1nX3BsbF9kaXYwKTsKKwkJUElQRV9DT05GX0NI RUNLX1goZHBsbF9od19zdGF0ZS5tZ19wbGxfZGl2MSk7CisJCVBJUEVfQ09ORl9DSEVDS19YKGRw bGxfaHdfc3RhdGUubWdfcGxsX2xmKTsKKwkJUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0 ZS5tZ19wbGxfZnJhY19sb2NrKTsKKwkJUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5t Z19wbGxfc3NjKTsKKwkJUElQRV9DT05GX0NIRUNLX1goZHBsbF9od19zdGF0ZS5tZ19wbGxfYmlh cyk7CisJCVBJUEVfQ09ORl9DSEVDS19YKGRwbGxfaHdfc3RhdGUubWdfcGxsX3RkY19jb2xkc3Rf Ymlhcyk7CisKKwkJUElQRV9DT05GX0NIRUNLX1goZHNpX3BsbC5jdHJsKTsKKwkJUElQRV9DT05G X0NIRUNLX1goZHNpX3BsbC5kaXYpOworCisJCWlmIChJU19HNFgoZGV2X3ByaXYpIHx8IElOVEVM X0dFTihkZXZfcHJpdikgPj0gNSkKKwkJCVBJUEVfQ09ORl9DSEVDS19JKHBpcGVfYnBwKTsKKwor CQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkoaHcucGlwZV9tb2RlLmNydGNfY2xvY2spOwor CQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkoaHcuYWRqdXN0ZWRfbW9kZS5jcnRjX2Nsb2Nr KTsKKwkJUElQRV9DT05GX0NIRUNLX0NMT0NLX0ZVWlpZKHBvcnRfY2xvY2spOworCisJCVBJUEVf Q09ORl9DSEVDS19JKG1pbl92b2x0YWdlX2xldmVsKTsKKwl9CiAKIAlQSVBFX0NPTkZfQ0hFQ0tf WChpbmZvZnJhbWVzLmVuYWJsZSk7CiAJUElQRV9DT05GX0NIRUNLX1goaW5mb2ZyYW1lcy5nY3Ap OwpAQCAtMTQzNTIsNiArMTQ0MDksOSBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKGNvbnN0 IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjdXJyZW50X2NvbmZpZywKIAogCVBJUEVfQ09ORl9D SEVDS19YKHN5bmNfbW9kZV9zbGF2ZXNfbWFzayk7CiAJUElQRV9DT05GX0NIRUNLX0kobWFzdGVy X3RyYW5zY29kZXIpOworCVBJUEVfQ09ORl9DSEVDS19CT09MKGJpZ2pvaW5lcik7CisJUElQRV9D T05GX0NIRUNLX0JPT0woYmlnam9pbmVyX3NsYXZlKTsKKwlQSVBFX0NPTkZfQ0hFQ0tfUChiaWdq b2luZXJfbGlua2VkX2NydGMpOwogCiAJUElQRV9DT05GX0NIRUNLX0koZHNjLmNvbXByZXNzaW9u X2VuYWJsZSk7CiAJUElQRV9DT05GX0NIRUNLX0koZHNjLmRzY19zcGxpdCk7CkBAIC0xNDYyMyw2 ICsxNDY4Myw3IEBAIHZlcmlmeV9jcnRjX3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAog CXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyOwogCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpwaXBlX2NvbmZpZyA9IG9sZF9jcnRjX3N0YXRlOwogCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRl ICpzdGF0ZSA9IG9sZF9jcnRjX3N0YXRlLT51YXBpLnN0YXRlOworCXN0cnVjdCBpbnRlbF9jcnRj ICptYXN0ZXIgPSBjcnRjOwogCiAJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX2Rlc3Ryb3lfc3Rh dGUoJm9sZF9jcnRjX3N0YXRlLT51YXBpKTsKIAlpbnRlbF9jcnRjX2ZyZWVfaHdfc3RhdGUob2xk X2NydGNfc3RhdGUpOwpAQCAtMTQ2NTAsNyArMTQ3MTEsMTAgQEAgdmVyaWZ5X2NydGNfc3RhdGUo c3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCQkiKGV4cGVjdGVkICVpLCBmb3VuZCAlaSlcbiIs CiAJCQluZXdfY3J0Y19zdGF0ZS0+aHcuYWN0aXZlLCBjcnRjLT5hY3RpdmUpOwogCi0JZm9yX2Vh Y2hfZW5jb2Rlcl9vbl9jcnRjKGRldiwgJmNydGMtPmJhc2UsIGVuY29kZXIpIHsKKwlpZiAobmV3 X2NydGNfc3RhdGUtPmJpZ2pvaW5lcl9zbGF2ZSkKKwkJbWFzdGVyID0gbmV3X2NydGNfc3RhdGUt PmJpZ2pvaW5lcl9saW5rZWRfY3J0YzsKKworCWZvcl9lYWNoX2VuY29kZXJfb25fY3J0YyhkZXYs ICZtYXN0ZXItPmJhc2UsIGVuY29kZXIpIHsKIAkJZW51bSBwaXBlIHBpcGU7CiAJCWJvb2wgYWN0 aXZlOwogCkBAIC0xNDY2MCw3ICsxNDcyNCw3IEBAIHZlcmlmeV9jcnRjX3N0YXRlKHN0cnVjdCBp bnRlbF9jcnRjICpjcnRjLAogCQkJCWVuY29kZXItPmJhc2UuYmFzZS5pZCwgYWN0aXZlLAogCQkJ CW5ld19jcnRjX3N0YXRlLT5ody5hY3RpdmUpOwogCi0JCUk5MTVfU1RBVEVfV0FSTihhY3RpdmUg JiYgY3J0Yy0+cGlwZSAhPSBwaXBlLAorCQlJOTE1X1NUQVRFX1dBUk4oYWN0aXZlICYmIG1hc3Rl ci0+cGlwZSAhPSBwaXBlLAogCQkJCSJFbmNvZGVyIGNvbm5lY3RlZCB0byB3cm9uZyBwaXBlICVj XG4iLAogCQkJCXBpcGVfbmFtZShwaXBlKSk7CiAKQEAgLTE4NTY2LDcgKzE4NjMwLDcgQEAgaW50 IGludGVsX21vZGVzZXRfaW5pdF9ub2dlbShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkK IAlmb3JfZWFjaF9pbnRlbF9jcnRjKGRldiwgY3J0YykgewogCQlzdHJ1Y3QgaW50ZWxfaW5pdGlh bF9wbGFuZV9jb25maWcgcGxhbmVfY29uZmlnID0ge307CiAKLQkJaWYgKCFjcnRjLT5hY3RpdmUp CisJCWlmICghdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5iYXNlLnN0YXRlKS0+dWFwaS5hY3Rp dmUpCiAJCQljb250aW51ZTsKIAogCQkvKgpAQCAtMTg4NzcsNyArMTg5NDEsOCBAQCBzdGF0aWMg dm9pZCBpbnRlbF9zYW5pdGl6ZV9jcnRjKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCiAJLyog QWRqdXN0IHRoZSBzdGF0ZSBvZiB0aGUgb3V0cHV0IHBpcGUgYWNjb3JkaW5nIHRvIHdoZXRoZXIg d2UKIAkgKiBoYXZlIGFjdGl2ZSBjb25uZWN0b3JzL2VuY29kZXJzLiAqLwotCWlmIChjcnRjX3N0 YXRlLT5ody5hY3RpdmUgJiYgIWludGVsX2NydGNfaGFzX2VuY29kZXJzKGNydGMpKQorCWlmIChj cnRjX3N0YXRlLT5ody5hY3RpdmUgJiYgIWludGVsX2NydGNfaGFzX2VuY29kZXJzKGNydGMpICYm CisJICAgICFjcnRjX3N0YXRlLT5iaWdqb2luZXJfc2xhdmUpCiAJCWludGVsX2NydGNfZGlzYWJs ZV9ub2F0b21pYyhjcnRjLCBjdHgpOwogCiAJaWYgKGNydGNfc3RhdGUtPmh3LmFjdGl2ZSB8fCBI QVNfR01DSChkZXZfcHJpdikpIHsKQEAgLTE5MDkyLDYgKzE5MTU3LDE2IEBAIHN0YXRpYyB2b2lk IGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQog CQkJaW50ZWxfZW5jb2Rlcl9nZXRfY29uZmlnKGVuY29kZXIsIGNydGNfc3RhdGUpOwogCQkJaWYg KGVuY29kZXItPnN5bmNfc3RhdGUpCiAJCQkJZW5jb2Rlci0+c3luY19zdGF0ZShlbmNvZGVyLCBj cnRjX3N0YXRlKTsKKworCQkJLyogcmVhZCBvdXQgdG8gc2xhdmUgY3J0YyBhcyB3ZWxsIGZvciBi aWdqb2luZXIgKi8KKwkJCWlmIChjcnRjX3N0YXRlLT5iaWdqb2luZXIpIHsKKwkJCQkvKiBlbmNv ZGVyIHNob3VsZCByZWFkIGJlIGxpbmtlZCB0byBiaWdqb2luZXIgbWFzdGVyICovCisJCQkJV0FS Tl9PTihjcnRjX3N0YXRlLT5iaWdqb2luZXJfc2xhdmUpOworCisJCQkJY3J0YyA9IGNydGNfc3Rh dGUtPmJpZ2pvaW5lcl9saW5rZWRfY3J0YzsKKwkJCQljcnRjX3N0YXRlID0gdG9faW50ZWxfY3J0 Y19zdGF0ZShjcnRjLT5iYXNlLnN0YXRlKTsKKwkJCQlpbnRlbF9lbmNvZGVyX2dldF9jb25maWco ZW5jb2RlciwgY3J0Y19zdGF0ZSk7CisJCQl9CiAJCX0gZWxzZSB7CiAJCQllbmNvZGVyLT5iYXNl LmNydGMgPSBOVUxMOwogCQl9CkBAIC0xOTE0Nyw2ICsxOTIyMiw5IEBAIHN0YXRpYyB2b2lkIGlu dGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQlz dHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lOwogCQlpbnQgbWluX2NkY2xrID0gMDsKIAorCQlpZiAo Y3J0Y19zdGF0ZS0+Ymlnam9pbmVyX3NsYXZlKQorCQkJY29udGludWU7CisKIAkJaWYgKGNydGNf c3RhdGUtPmh3LmFjdGl2ZSkgewogCQkJLyoKIAkJCSAqIFRoZSBpbml0aWFsIG1vZGUgbmVlZHMg dG8gYmUgc2V0IGluIG9yZGVyIHRvIGtlZXAKQEAgLTE5MjA3LDYgKzE5Mjg1LDM5IEBAIHN0YXRp YyB2b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KQogCQlpbnRlbF9id19jcnRjX3VwZGF0ZShid19zdGF0ZSwgY3J0Y19zdGF0ZSk7CiAKIAkJ aW50ZWxfcGlwZV9jb25maWdfc2FuaXR5X2NoZWNrKGRldl9wcml2LCBjcnRjX3N0YXRlKTsKKwor CQkvKiBkaXNjYXJkIG91ciBpbmNvbXBsZXRlIHNsYXZlIHN0YXRlLCBjb3B5IGl0IGZyb20gbWFz dGVyICovCisJCWlmIChjcnRjX3N0YXRlLT5iaWdqb2luZXIgJiYgY3J0Y19zdGF0ZS0+aHcuYWN0 aXZlKSB7CisJCQlzdHJ1Y3QgaW50ZWxfY3J0YyAqc2xhdmUgPSBjcnRjX3N0YXRlLT5iaWdqb2lu ZXJfbGlua2VkX2NydGM7CisJCQlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqc2xhdmVfY3J0Y19z dGF0ZSA9CisJCQkJdG9faW50ZWxfY3J0Y19zdGF0ZShzbGF2ZS0+YmFzZS5zdGF0ZSk7CisKKwkJ CWNvcHlfYmlnam9pbmVyX2NydGNfc3RhdGUoc2xhdmVfY3J0Y19zdGF0ZSwgY3J0Y19zdGF0ZSk7 CisJCQlzbGF2ZS0+YmFzZS5tb2RlID0gY3J0Yy0+YmFzZS5tb2RlOworCisJCQljZGNsa19zdGF0 ZS0+bWluX2NkY2xrW3NsYXZlLT5waXBlXSA9IG1pbl9jZGNsazsKKwkJCWNkY2xrX3N0YXRlLT5t aW5fdm9sdGFnZV9sZXZlbFtzbGF2ZS0+cGlwZV0gPQorCQkJCWNydGNfc3RhdGUtPm1pbl92b2x0 YWdlX2xldmVsOworCisJCQlmb3JfZWFjaF9pbnRlbF9wbGFuZV9vbl9jcnRjKCZkZXZfcHJpdi0+ ZHJtLCBzbGF2ZSwgcGxhbmUpIHsKKwkJCQljb25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUg KnBsYW5lX3N0YXRlID0KKwkJCQkJdG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmUtPmJhc2Uuc3Rh dGUpOworCisJCQkJLyoKKwkJCQkgKiBGSVhNRSBkb24ndCBoYXZlIHRoZSBmYiB5ZXQsIHNvIGNh bid0CisJCQkJICogdXNlIGludGVsX3BsYW5lX2RhdGFfcmF0ZSgpIDooCisJCQkJICovCisJCQkJ aWYgKHBsYW5lX3N0YXRlLT51YXBpLnZpc2libGUpCisJCQkJCWNydGNfc3RhdGUtPmRhdGFfcmF0 ZVtwbGFuZS0+aWRdID0KKwkJCQkJCTQgKiBjcnRjX3N0YXRlLT5waXhlbF9yYXRlOworCQkJCWVs c2UKKwkJCQkJY3J0Y19zdGF0ZS0+ZGF0YV9yYXRlW3BsYW5lLT5pZF0gPSAwOworCQkJfQorCisJ CQlpbnRlbF9id19jcnRjX3VwZGF0ZShid19zdGF0ZSwgc2xhdmVfY3J0Y19zdGF0ZSk7CisJCQlk cm1fY2FsY190aW1lc3RhbXBpbmdfY29uc3RhbnRzKCZzbGF2ZS0+YmFzZSwKKwkJCQkJCQkmc2xh dmVfY3J0Y19zdGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZSk7CisJCX0KIAl9CiB9CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgKaW5kZXgg YjNkOTRlNmNkN2M1Li5jZTgyZDY1NGQwZjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCkBAIC04NTAsNiArODUwLDcgQEAgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgewogCSAqIGFjY29yZGluZ2x5LgogCSAqLwogI2RlZmluZSBQ SVBFX0NPTkZJR19RVUlSS19NT0RFX1NZTkNfRkxBR1MJKDE8PDApIC8qIHVucmVsaWFibGUgc3lu YyBtb2RlLmZsYWdzICovCisjZGVmaW5lIFBJUEVfQ09ORklHX1FVSVJLX0JJR0pPSU5FUl9TTEFW RSAgICAgICgxPDwxKSAvKiBiaWdqb2luZXIgc2xhdmUsIHBhcnRpYWwgcmVhZG91dCAqLwogCXVu c2lnbmVkIGxvbmcgcXVpcmtzOwogCiAJdW5zaWduZWQgZmJfYml0czsgLyogZnJhbWVidWZmZXJz IHRvIGZsaXAgKi8KLS0gCjIuMTkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==