From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= Subject: [PATCH 2/5] drm/i915/psr: Refactor psr short pulse handler Date: Tue, 5 Nov 2019 17:45:01 -0800 Message-ID: <20191106014504.167656-2-jose.souza@intel.com> References: <20191106014504.167656-1-jose.souza@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA9246E11D for ; Wed, 6 Nov 2019 01:45:10 +0000 (UTC) In-Reply-To: <20191106014504.167656-1-jose.souza@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 ZURQIHNwZWMgc3RhdGVzIHRoYXQgd2hlbiBzaW5rIGVuY29udGVycyBhIHByb2JsZW0gdGhhdCBw cmV2ZW50cyBpdAp0byBrZWVwIFBTUiBydW5uaW5nIGl0IHNob3VsZCBzZXQgUFNSIHN0YXR1cyB0 byBpbnRlcm5hbCBlcnJvciBhbmQKc2V0IHRoZSByZWFzb24gd2h5IGl0IGhhcHBlbiB0byBQU1Jf RVJST1JfU1RBVFVTIGJ1dCBpdCBpcyBub3QgaG93IGl0CndhcyBpbXBsZW1lbnRlZC4KQnV0IGFs c28gSSBkb24ndCB3YW50IHRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCB3aG8ga25vd3MgaWYgdGhl cmUgaXMKYSBwYW5lbCBvdXQgdGhlcmUgdGhhdCBvbmx5IHNldCB0aGUgUFNSX0VSUk9SX1NUQVRV Uy4KClNvIGhlcmUgcmVmYWN0b3JpbmcgdGhlIGNvZGUgYSBiaXQgdG8gbWFrZSBtb3JlIGVhc3kg dG8gcmVhZCB3aGF0IHdhcwpzdGF0ZSBhYm92ZSBhcyBtb3JlIGNoZWNrcyB3aWxsIGJlIGFkZGVk IHRvIHRoaXMgZnVuY3Rpb24uCgpDYzogR3dhbi1neWVvbmcgTXVuIDxnd2FuLWd5ZW9uZy5tdW5A aW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNv dXphQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bz ci5jIHwgNTEgKysrKysrKysrKysrKystLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMzEgaW5z ZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfcHNyLmMKaW5kZXggMGQ4NGVhMjhiYzZmLi5mMzhkYTFiOWIzMjMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYwpAQCAtMTM4NiwxMSArMTM4NiwzMCBAQCB2 b2lkIGludGVsX3Bzcl9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlt dXRleF9pbml0KCZkZXZfcHJpdi0+cHNyLmxvY2spOwogfQogCitzdGF0aWMgYm9vbCBwc3JfZ2V0 X3N0YXR1c19hbmRfZXJyb3Jfc3RhdHVzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCisJCQkJ CSAgICB1OCAqc3RhdHVzLCB1OCAqZXJyb3Jfc3RhdHVzKQoreworCXN0cnVjdCBkcm1fZHBfYXV4 ICphdXggPSAmaW50ZWxfZHAtPmF1eDsKKwlpbnQgcjsKKworCXIgPSBkcm1fZHBfZHBjZF9yZWFk YihhdXgsIERQX1BTUl9TVEFUVVMsIHN0YXR1cyk7CisJaWYgKHIgIT0gMSkKKwkJcmV0dXJuIGZh bHNlOworCisJciA9IGRybV9kcF9kcGNkX3JlYWRiKGF1eCwgRFBfUFNSX0VSUk9SX1NUQVRVUywg ZXJyb3Jfc3RhdHVzKTsKKwlpZiAociAhPSAxKQorCQlyZXR1cm4gZmFsc2U7CisKKwkqc3RhdHVz ID0gKnN0YXR1cyAmIERQX1BTUl9TSU5LX1NUQVRFX01BU0s7CisKKwlyZXR1cm4gdHJ1ZTsKK30K Kwogdm9pZCBpbnRlbF9wc3Jfc2hvcnRfcHVsc2Uoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkK IHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVs X2RwKTsKIAlzdHJ1Y3QgaTkxNV9wc3IgKnBzciA9ICZkZXZfcHJpdi0+cHNyOwotCXU4IHZhbDsK Kwl1OCBzdGF0dXMsIGVycm9yX3N0YXR1czsKIAljb25zdCB1OCBlcnJvcnMgPSBEUF9QU1JfUkZC X1NUT1JBR0VfRVJST1IgfAogCQkJICBEUF9QU1JfVlNDX1NEUF9VTkNPUlJFQ1RBQkxFX0VSUk9S IHwKIAkJCSAgRFBfUFNSX0xJTktfQ1JDX0VSUk9SOwpAQCAtMTQwMywzOCArMTQyMiwzMCBAQCB2 b2lkIGludGVsX3Bzcl9zaG9ydF9wdWxzZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQogCWlm ICghcHNyLT5lbmFibGVkIHx8IHBzci0+ZHAgIT0gaW50ZWxfZHApCiAJCWdvdG8gZXhpdDsKIAot CWlmIChkcm1fZHBfZHBjZF9yZWFkYigmaW50ZWxfZHAtPmF1eCwgRFBfUFNSX1NUQVRVUywgJnZh bCkgIT0gMSkgewotCQlEUk1fRVJST1IoIlBTUl9TVEFUVVMgZHBjZCByZWFkIGZhaWxlZFxuIik7 CisJaWYgKCFwc3JfZ2V0X3N0YXR1c19hbmRfZXJyb3Jfc3RhdHVzKGludGVsX2RwLCAmc3RhdHVz LCAmZXJyb3Jfc3RhdHVzKSkgeworCQlEUk1fRVJST1IoIkVycm9yIHJlYWRpbmcgUFNSIHN0YXR1 cyBvciBlcnJvciBzdGF0dXNcbiIpOwogCQlnb3RvIGV4aXQ7CiAJfQogCi0JaWYgKCh2YWwgJiBE UF9QU1JfU0lOS19TVEFURV9NQVNLKSA9PSBEUF9QU1JfU0lOS19JTlRFUk5BTF9FUlJPUikgewot CQlEUk1fREVCVUdfS01TKCJQU1Igc2luayBpbnRlcm5hbCBlcnJvciwgZGlzYWJsaW5nIFBTUlxu Iik7CisJaWYgKHN0YXR1cyA9PSBEUF9QU1JfU0lOS19JTlRFUk5BTF9FUlJPUiB8fCAoZXJyb3Jf c3RhdHVzICYgZXJyb3JzKSkgewogCQlpbnRlbF9wc3JfZGlzYWJsZV9sb2NrZWQoaW50ZWxfZHAp OwogCQlwc3ItPnNpbmtfbm90X3JlbGlhYmxlID0gdHJ1ZTsKIAl9CiAKLQlpZiAoZHJtX2RwX2Rw Y2RfcmVhZGIoJmludGVsX2RwLT5hdXgsIERQX1BTUl9FUlJPUl9TVEFUVVMsICZ2YWwpICE9IDEp IHsKLQkJRFJNX0VSUk9SKCJQU1JfRVJST1JfU1RBVFVTIGRwY2QgcmVhZCBmYWlsZWRcbiIpOwot CQlnb3RvIGV4aXQ7Ci0JfQotCi0JaWYgKHZhbCAmIERQX1BTUl9SRkJfU1RPUkFHRV9FUlJPUikK KwlpZiAoc3RhdHVzID09IERQX1BTUl9TSU5LX0lOVEVSTkFMX0VSUk9SICYmICFlcnJvcl9zdGF0 dXMpCisJCURSTV9ERUJVR19LTVMoIlBTUiBzaW5rIGludGVybmFsIGVycm9yLCBkaXNhYmxpbmcg UFNSXG4iKTsKKwlpZiAoZXJyb3Jfc3RhdHVzICYgRFBfUFNSX1JGQl9TVE9SQUdFX0VSUk9SKQog CQlEUk1fREVCVUdfS01TKCJQU1IgUkZCIHN0b3JhZ2UgZXJyb3IsIGRpc2FibGluZyBQU1JcbiIp OwotCWlmICh2YWwgJiBEUF9QU1JfVlNDX1NEUF9VTkNPUlJFQ1RBQkxFX0VSUk9SKQorCWlmIChl cnJvcl9zdGF0dXMgJiBEUF9QU1JfVlNDX1NEUF9VTkNPUlJFQ1RBQkxFX0VSUk9SKQogCQlEUk1f REVCVUdfS01TKCJQU1IgVlNDIFNEUCB1bmNvcnJlY3RhYmxlIGVycm9yLCBkaXNhYmxpbmcgUFNS XG4iKTsKLQlpZiAodmFsICYgRFBfUFNSX0xJTktfQ1JDX0VSUk9SKQorCWlmIChlcnJvcl9zdGF0 dXMgJiBEUF9QU1JfTElOS19DUkNfRVJST1IpCiAJCURSTV9ERUJVR19LTVMoIlBTUiBMaW5rIENS QyBlcnJvciwgZGlzYWJsaW5nIFBTUlxuIik7CiAKLQlpZiAodmFsICYgfmVycm9ycykKKwlpZiAo ZXJyb3Jfc3RhdHVzICYgfmVycm9ycykKIAkJRFJNX0VSUk9SKCJQU1JfRVJST1JfU1RBVFVTIHVu aGFuZGxlZCBlcnJvcnMgJXhcbiIsCi0JCQkgIHZhbCAmIH5lcnJvcnMpOwotCWlmICh2YWwgJiBl cnJvcnMpIHsKLQkJaW50ZWxfcHNyX2Rpc2FibGVfbG9ja2VkKGludGVsX2RwKTsKLQkJcHNyLT5z aW5rX25vdF9yZWxpYWJsZSA9IHRydWU7Ci0JfQorCQkJICBlcnJvcl9zdGF0dXMgJiB+ZXJyb3Jz KTsKIAkvKiBjbGVhciBzdGF0dXMgcmVnaXN0ZXIgKi8KLQlkcm1fZHBfZHBjZF93cml0ZWIoJmlu dGVsX2RwLT5hdXgsIERQX1BTUl9FUlJPUl9TVEFUVVMsIHZhbCk7CisJZHJtX2RwX2RwY2Rfd3Jp dGViKCZpbnRlbF9kcC0+YXV4LCBEUF9QU1JfRVJST1JfU1RBVFVTLCBlcnJvcl9zdGF0dXMpOwog ZXhpdDoKIAltdXRleF91bmxvY2soJnBzci0+bG9jayk7CiB9Ci0tIAoyLjI0LjAKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA== 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=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, 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 175FBC5DF60 for ; Wed, 6 Nov 2019 01:45:17 +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 CA2F12053B for ; Wed, 6 Nov 2019 01:45:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CA2F12053B 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 05BCA6EBBF; Wed, 6 Nov 2019 01:45:14 +0000 (UTC) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA9246E11D for ; Wed, 6 Nov 2019 01:45:10 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Nov 2019 17:45:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,272,1569308400"; d="scan'208";a="196037939" Received: from josouza-mobl.jf.intel.com (HELO josouza-MOBL.intel.com) ([10.24.9.135]) by orsmga008.jf.intel.com with ESMTP; 05 Nov 2019 17:45:09 -0800 From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= To: intel-gfx@lists.freedesktop.org Date: Tue, 5 Nov 2019 17:45:01 -0800 Message-Id: <20191106014504.167656-2-jose.souza@intel.com> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191106014504.167656-1-jose.souza@intel.com> References: <20191106014504.167656-1-jose.souza@intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 2/5] drm/i915/psr: Refactor psr short pulse handler X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 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" Message-ID: <20191106014501.AoczcJ3PuXWcBtB6d3zdTlqRKx1SvE-vdVrsAvzQjoo@z> ZURQIHNwZWMgc3RhdGVzIHRoYXQgd2hlbiBzaW5rIGVuY29udGVycyBhIHByb2JsZW0gdGhhdCBw cmV2ZW50cyBpdAp0byBrZWVwIFBTUiBydW5uaW5nIGl0IHNob3VsZCBzZXQgUFNSIHN0YXR1cyB0 byBpbnRlcm5hbCBlcnJvciBhbmQKc2V0IHRoZSByZWFzb24gd2h5IGl0IGhhcHBlbiB0byBQU1Jf RVJST1JfU1RBVFVTIGJ1dCBpdCBpcyBub3QgaG93IGl0CndhcyBpbXBsZW1lbnRlZC4KQnV0IGFs c28gSSBkb24ndCB3YW50IHRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCB3aG8ga25vd3MgaWYgdGhl cmUgaXMKYSBwYW5lbCBvdXQgdGhlcmUgdGhhdCBvbmx5IHNldCB0aGUgUFNSX0VSUk9SX1NUQVRV Uy4KClNvIGhlcmUgcmVmYWN0b3JpbmcgdGhlIGNvZGUgYSBiaXQgdG8gbWFrZSBtb3JlIGVhc3kg dG8gcmVhZCB3aGF0IHdhcwpzdGF0ZSBhYm92ZSBhcyBtb3JlIGNoZWNrcyB3aWxsIGJlIGFkZGVk IHRvIHRoaXMgZnVuY3Rpb24uCgpDYzogR3dhbi1neWVvbmcgTXVuIDxnd2FuLWd5ZW9uZy5tdW5A aW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNv dXphQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bz ci5jIHwgNTEgKysrKysrKysrKysrKystLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMzEgaW5z ZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfcHNyLmMKaW5kZXggMGQ4NGVhMjhiYzZmLi5mMzhkYTFiOWIzMjMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYwpAQCAtMTM4NiwxMSArMTM4NiwzMCBAQCB2 b2lkIGludGVsX3Bzcl9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlt dXRleF9pbml0KCZkZXZfcHJpdi0+cHNyLmxvY2spOwogfQogCitzdGF0aWMgYm9vbCBwc3JfZ2V0 X3N0YXR1c19hbmRfZXJyb3Jfc3RhdHVzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCisJCQkJ CSAgICB1OCAqc3RhdHVzLCB1OCAqZXJyb3Jfc3RhdHVzKQoreworCXN0cnVjdCBkcm1fZHBfYXV4 ICphdXggPSAmaW50ZWxfZHAtPmF1eDsKKwlpbnQgcjsKKworCXIgPSBkcm1fZHBfZHBjZF9yZWFk YihhdXgsIERQX1BTUl9TVEFUVVMsIHN0YXR1cyk7CisJaWYgKHIgIT0gMSkKKwkJcmV0dXJuIGZh bHNlOworCisJciA9IGRybV9kcF9kcGNkX3JlYWRiKGF1eCwgRFBfUFNSX0VSUk9SX1NUQVRVUywg ZXJyb3Jfc3RhdHVzKTsKKwlpZiAociAhPSAxKQorCQlyZXR1cm4gZmFsc2U7CisKKwkqc3RhdHVz ID0gKnN0YXR1cyAmIERQX1BTUl9TSU5LX1NUQVRFX01BU0s7CisKKwlyZXR1cm4gdHJ1ZTsKK30K Kwogdm9pZCBpbnRlbF9wc3Jfc2hvcnRfcHVsc2Uoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkK IHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVs X2RwKTsKIAlzdHJ1Y3QgaTkxNV9wc3IgKnBzciA9ICZkZXZfcHJpdi0+cHNyOwotCXU4IHZhbDsK Kwl1OCBzdGF0dXMsIGVycm9yX3N0YXR1czsKIAljb25zdCB1OCBlcnJvcnMgPSBEUF9QU1JfUkZC X1NUT1JBR0VfRVJST1IgfAogCQkJICBEUF9QU1JfVlNDX1NEUF9VTkNPUlJFQ1RBQkxFX0VSUk9S IHwKIAkJCSAgRFBfUFNSX0xJTktfQ1JDX0VSUk9SOwpAQCAtMTQwMywzOCArMTQyMiwzMCBAQCB2 b2lkIGludGVsX3Bzcl9zaG9ydF9wdWxzZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQogCWlm ICghcHNyLT5lbmFibGVkIHx8IHBzci0+ZHAgIT0gaW50ZWxfZHApCiAJCWdvdG8gZXhpdDsKIAot CWlmIChkcm1fZHBfZHBjZF9yZWFkYigmaW50ZWxfZHAtPmF1eCwgRFBfUFNSX1NUQVRVUywgJnZh bCkgIT0gMSkgewotCQlEUk1fRVJST1IoIlBTUl9TVEFUVVMgZHBjZCByZWFkIGZhaWxlZFxuIik7 CisJaWYgKCFwc3JfZ2V0X3N0YXR1c19hbmRfZXJyb3Jfc3RhdHVzKGludGVsX2RwLCAmc3RhdHVz LCAmZXJyb3Jfc3RhdHVzKSkgeworCQlEUk1fRVJST1IoIkVycm9yIHJlYWRpbmcgUFNSIHN0YXR1 cyBvciBlcnJvciBzdGF0dXNcbiIpOwogCQlnb3RvIGV4aXQ7CiAJfQogCi0JaWYgKCh2YWwgJiBE UF9QU1JfU0lOS19TVEFURV9NQVNLKSA9PSBEUF9QU1JfU0lOS19JTlRFUk5BTF9FUlJPUikgewot CQlEUk1fREVCVUdfS01TKCJQU1Igc2luayBpbnRlcm5hbCBlcnJvciwgZGlzYWJsaW5nIFBTUlxu Iik7CisJaWYgKHN0YXR1cyA9PSBEUF9QU1JfU0lOS19JTlRFUk5BTF9FUlJPUiB8fCAoZXJyb3Jf c3RhdHVzICYgZXJyb3JzKSkgewogCQlpbnRlbF9wc3JfZGlzYWJsZV9sb2NrZWQoaW50ZWxfZHAp OwogCQlwc3ItPnNpbmtfbm90X3JlbGlhYmxlID0gdHJ1ZTsKIAl9CiAKLQlpZiAoZHJtX2RwX2Rw Y2RfcmVhZGIoJmludGVsX2RwLT5hdXgsIERQX1BTUl9FUlJPUl9TVEFUVVMsICZ2YWwpICE9IDEp IHsKLQkJRFJNX0VSUk9SKCJQU1JfRVJST1JfU1RBVFVTIGRwY2QgcmVhZCBmYWlsZWRcbiIpOwot CQlnb3RvIGV4aXQ7Ci0JfQotCi0JaWYgKHZhbCAmIERQX1BTUl9SRkJfU1RPUkFHRV9FUlJPUikK KwlpZiAoc3RhdHVzID09IERQX1BTUl9TSU5LX0lOVEVSTkFMX0VSUk9SICYmICFlcnJvcl9zdGF0 dXMpCisJCURSTV9ERUJVR19LTVMoIlBTUiBzaW5rIGludGVybmFsIGVycm9yLCBkaXNhYmxpbmcg UFNSXG4iKTsKKwlpZiAoZXJyb3Jfc3RhdHVzICYgRFBfUFNSX1JGQl9TVE9SQUdFX0VSUk9SKQog CQlEUk1fREVCVUdfS01TKCJQU1IgUkZCIHN0b3JhZ2UgZXJyb3IsIGRpc2FibGluZyBQU1JcbiIp OwotCWlmICh2YWwgJiBEUF9QU1JfVlNDX1NEUF9VTkNPUlJFQ1RBQkxFX0VSUk9SKQorCWlmIChl cnJvcl9zdGF0dXMgJiBEUF9QU1JfVlNDX1NEUF9VTkNPUlJFQ1RBQkxFX0VSUk9SKQogCQlEUk1f REVCVUdfS01TKCJQU1IgVlNDIFNEUCB1bmNvcnJlY3RhYmxlIGVycm9yLCBkaXNhYmxpbmcgUFNS XG4iKTsKLQlpZiAodmFsICYgRFBfUFNSX0xJTktfQ1JDX0VSUk9SKQorCWlmIChlcnJvcl9zdGF0 dXMgJiBEUF9QU1JfTElOS19DUkNfRVJST1IpCiAJCURSTV9ERUJVR19LTVMoIlBTUiBMaW5rIENS QyBlcnJvciwgZGlzYWJsaW5nIFBTUlxuIik7CiAKLQlpZiAodmFsICYgfmVycm9ycykKKwlpZiAo ZXJyb3Jfc3RhdHVzICYgfmVycm9ycykKIAkJRFJNX0VSUk9SKCJQU1JfRVJST1JfU1RBVFVTIHVu aGFuZGxlZCBlcnJvcnMgJXhcbiIsCi0JCQkgIHZhbCAmIH5lcnJvcnMpOwotCWlmICh2YWwgJiBl cnJvcnMpIHsKLQkJaW50ZWxfcHNyX2Rpc2FibGVfbG9ja2VkKGludGVsX2RwKTsKLQkJcHNyLT5z aW5rX25vdF9yZWxpYWJsZSA9IHRydWU7Ci0JfQorCQkJICBlcnJvcl9zdGF0dXMgJiB+ZXJyb3Jz KTsKIAkvKiBjbGVhciBzdGF0dXMgcmVnaXN0ZXIgKi8KLQlkcm1fZHBfZHBjZF93cml0ZWIoJmlu dGVsX2RwLT5hdXgsIERQX1BTUl9FUlJPUl9TVEFUVVMsIHZhbCk7CisJZHJtX2RwX2RwY2Rfd3Jp dGViKCZpbnRlbF9kcC0+YXV4LCBEUF9QU1JfRVJST1JfU1RBVFVTLCBlcnJvcl9zdGF0dXMpOwog ZXhpdDoKIAltdXRleF91bmxvY2soJnBzci0+bG9jayk7CiB9Ci0tIAoyLjI0LjAKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==