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=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,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 41011C433E0 for ; Wed, 24 Feb 2021 14:42:29 +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 D541964EC8 for ; Wed, 24 Feb 2021 14:42:28 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D541964EC8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.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 5E8596EAC7; Wed, 24 Feb 2021 14:42:28 +0000 (UTC) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6DEE56EAC7 for ; Wed, 24 Feb 2021 14:42:27 +0000 (UTC) IronPort-SDR: kH4iwXQjkDFqpUW+hzn1i3H7J00sfKu2tJ37kuz+UJANECUqTELwtmlTBM9jRaGw75FjJifSqF 6k27L+CfDhbg== X-IronPort-AV: E=McAfee;i="6000,8403,9904"; a="164408221" X-IronPort-AV: E=Sophos;i="5.81,203,1610438400"; d="scan'208";a="164408221" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Feb 2021 06:42:25 -0800 IronPort-SDR: evA/9B539Aotl1hSkSvXdUVo9KpWpiefzKNnL83P2ToipYuLKYhmwrbGLG3IfaqKU5to/W5KNL 3NUOeG92J7PA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,203,1610438400"; d="scan'208";a="380931744" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.171]) by orsmga002.jf.intel.com with SMTP; 24 Feb 2021 06:42:23 -0800 Received: by stinkbox (sSMTP sendmail emulation); Wed, 24 Feb 2021 16:42:23 +0200 From: Ville Syrjala To: intel-gfx@lists.freedesktop.org Date: Wed, 24 Feb 2021 16:42:11 +0200 Message-Id: <20210224144214.24803-4-ville.syrjala@linux.intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210224144214.24803-1-ville.syrjala@linux.intel.com> References: <20210224144214.24803-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 3/6] drm/i915: Use pipes instead crtc indices in PLL state tracking 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" RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkFs bCB0aGUgb3RoZXIgcGxhY2VzIHdlIGhhdmUgdXNlIHBpcGVzIGluc3RlYWQgb2YgY3J0YyBpbmRp Y2VzCndoZW4gdHJhY2tpbmcgcmVzb3VyY2UgdXNhZ2UuIExpZmUgaXMgZWFzaWVyIHdoZW4gd2Ug ZG8gaXQKdGhlIHNhbWUgd2F5IGFsd2F5cywgc28gc3dpdGNoIHRoZSBkcGxsIG1nciB0byB1c2lu ZyBwaXBlcyBhcwp3ZWxsLiBMb29rcyBsaWtlIGl0IHdhcyBhY3R1YWxseSBtaXhpbmcgdGhlc2Ug dXAgaW4gc29tZSBjYXNlcwpzbyBpdCB3b3VsZCBub3QgZXZlbiBoYXZlIHdvcmtlZCBjb3JyZWN0 bHkgZXhjZXB0IHdoZW4gdGhlCmRldmljZSBoYXMgYSBjb250aWd1b3VzIHNldCBvZiBwaXBlcyBz dGFydGluZyBmcm9tIHBpcGUgQS4KR3JhbnRlZCwgdGhhdCBpcyB0aGUgdHlwaWNhbCBjYXNlIGJ1 dCBzdXBwb3NlZGx5IGl0IG1heSBub3QKYWx3YXlzIGhvbGQgb24gbW9kZXJuIGh3LgoKU2lnbmVk LW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4K LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyAgfCA0MCAr KysrKysrKy0tLS0tLS0tCiAuLi4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X2RlYnVn ZnMuYyAgfCAgNCArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcGxsX21n ci5jIHwgNDggKysrKysrKysrKy0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kcGxsX21nci5oIHwgIDggKystLQogNCBmaWxlcyBjaGFuZ2VkLCA1MSBpbnNlcnRp b25zKCspLCA0OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfZGlzcGxheS5jCmluZGV4IGIzNDYyMDU0NWQzYi4uOTU4YzJhNzk2YmFlIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwpAQCAtOTY1Myw3ICs5 NjUzLDcgQEAgdmVyaWZ5X3NpbmdsZV9kcGxsX3N0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwKIAkJCSBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqbmV3X2NydGNfc3RhdGUp CiB7CiAJc3RydWN0IGludGVsX2RwbGxfaHdfc3RhdGUgZHBsbF9od19zdGF0ZTsKLQl1bnNpZ25l ZCBpbnQgY3J0Y19tYXNrOworCXU4IHBpcGVfbWFzazsKIAlib29sIGFjdGl2ZTsKIAogCW1lbXNl dCgmZHBsbF9od19zdGF0ZSwgMCwgc2l6ZW9mKGRwbGxfaHdfc3RhdGUpKTsKQEAgLTk2NjYsMzQg Kzk2NjYsMzQgQEAgdmVyaWZ5X3NpbmdsZV9kcGxsX3N0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKIAkJSTkxNV9TVEFURV9XQVJOKCFwbGwtPm9uICYmIHBsbC0+YWN0aXZl X21hc2ssCiAJCSAgICAgInBsbCBpbiBhY3RpdmUgdXNlIGJ1dCBub3Qgb24gaW4gc3cgdHJhY2tp bmdcbiIpOwogCQlJOTE1X1NUQVRFX1dBUk4ocGxsLT5vbiAmJiAhcGxsLT5hY3RpdmVfbWFzaywK LQkJICAgICAicGxsIGlzIG9uIGJ1dCBub3QgdXNlZCBieSBhbnkgYWN0aXZlIGNydGNcbiIpOwor CQkgICAgICJwbGwgaXMgb24gYnV0IG5vdCB1c2VkIGJ5IGFueSBhY3RpdmUgcGlwZVxuIik7CiAJ CUk5MTVfU1RBVEVfV0FSTihwbGwtPm9uICE9IGFjdGl2ZSwKIAkJICAgICAicGxsIG9uIHN0YXRl IG1pc21hdGNoIChleHBlY3RlZCAlaSwgZm91bmQgJWkpXG4iLAogCQkgICAgIHBsbC0+b24sIGFj dGl2ZSk7CiAJfQogCiAJaWYgKCFjcnRjKSB7Ci0JCUk5MTVfU1RBVEVfV0FSTihwbGwtPmFjdGl2 ZV9tYXNrICYgfnBsbC0+c3RhdGUuY3J0Y19tYXNrLAotCQkJCSJtb3JlIGFjdGl2ZSBwbGwgdXNl cnMgdGhhbiByZWZlcmVuY2VzOiAleCB2cyAleFxuIiwKLQkJCQlwbGwtPmFjdGl2ZV9tYXNrLCBw bGwtPnN0YXRlLmNydGNfbWFzayk7CisJCUk5MTVfU1RBVEVfV0FSTihwbGwtPmFjdGl2ZV9tYXNr ICYgfnBsbC0+c3RhdGUucGlwZV9tYXNrLAorCQkJCSJtb3JlIGFjdGl2ZSBwbGwgdXNlcnMgdGhh biByZWZlcmVuY2VzOiAweCV4IHZzIDB4JXhcbiIsCisJCQkJcGxsLT5hY3RpdmVfbWFzaywgcGxs LT5zdGF0ZS5waXBlX21hc2spOwogCiAJCXJldHVybjsKIAl9CiAKLQljcnRjX21hc2sgPSBkcm1f Y3J0Y19tYXNrKCZjcnRjLT5iYXNlKTsKKwlwaXBlX21hc2sgPSBCSVQoY3J0Yy0+cGlwZSk7CiAK IAlpZiAobmV3X2NydGNfc3RhdGUtPmh3LmFjdGl2ZSkKLQkJSTkxNV9TVEFURV9XQVJOKCEocGxs LT5hY3RpdmVfbWFzayAmIGNydGNfbWFzayksCi0JCQkJInBsbCBhY3RpdmUgbWlzbWF0Y2ggKGV4 cGVjdGVkIHBpcGUgJWMgaW4gYWN0aXZlIG1hc2sgMHglMDJ4KVxuIiwKKwkJSTkxNV9TVEFURV9X QVJOKCEocGxsLT5hY3RpdmVfbWFzayAmIHBpcGVfbWFzayksCisJCQkJInBsbCBhY3RpdmUgbWlz bWF0Y2ggKGV4cGVjdGVkIHBpcGUgJWMgaW4gYWN0aXZlIG1hc2sgMHgleClcbiIsCiAJCQkJcGlw ZV9uYW1lKGNydGMtPnBpcGUpLCBwbGwtPmFjdGl2ZV9tYXNrKTsKIAllbHNlCi0JCUk5MTVfU1RB VEVfV0FSTihwbGwtPmFjdGl2ZV9tYXNrICYgY3J0Y19tYXNrLAotCQkJCSJwbGwgYWN0aXZlIG1p c21hdGNoIChkaWRuJ3QgZXhwZWN0IHBpcGUgJWMgaW4gYWN0aXZlIG1hc2sgMHglMDJ4KVxuIiwK KwkJSTkxNV9TVEFURV9XQVJOKHBsbC0+YWN0aXZlX21hc2sgJiBwaXBlX21hc2ssCisJCQkJInBs bCBhY3RpdmUgbWlzbWF0Y2ggKGRpZG4ndCBleHBlY3QgcGlwZSAlYyBpbiBhY3RpdmUgbWFzayAw eCV4KVxuIiwKIAkJCQlwaXBlX25hbWUoY3J0Yy0+cGlwZSksIHBsbC0+YWN0aXZlX21hc2spOwog Ci0JSTkxNV9TVEFURV9XQVJOKCEocGxsLT5zdGF0ZS5jcnRjX21hc2sgJiBjcnRjX21hc2spLAot CQkJInBsbCBlbmFibGVkIGNydGNzIG1pc21hdGNoIChleHBlY3RlZCAweCV4IGluIDB4JTAyeClc biIsCi0JCQljcnRjX21hc2ssIHBsbC0+c3RhdGUuY3J0Y19tYXNrKTsKKwlJOTE1X1NUQVRFX1dB Uk4oIShwbGwtPnN0YXRlLnBpcGVfbWFzayAmIHBpcGVfbWFzayksCisJCQkicGxsIGVuYWJsZWQg Y3J0Y3MgbWlzbWF0Y2ggKGV4cGVjdGVkIDB4JXggaW4gMHgleClcbiIsCisJCQlwaXBlX21hc2ss IHBsbC0+c3RhdGUucGlwZV9tYXNrKTsKIAogCUk5MTVfU1RBVEVfV0FSTihwbGwtPm9uICYmIG1l bWNtcCgmcGxsLT5zdGF0ZS5od19zdGF0ZSwKIAkJCQkJICAmZHBsbF9od19zdGF0ZSwKQEAgLTk3 MTMsMTUgKzk3MTMsMTUgQEAgdmVyaWZ5X3NoYXJlZF9kcGxsX3N0YXRlKHN0cnVjdCBpbnRlbF9j cnRjICpjcnRjLAogCiAJaWYgKG9sZF9jcnRjX3N0YXRlLT5zaGFyZWRfZHBsbCAmJgogCSAgICBv bGRfY3J0Y19zdGF0ZS0+c2hhcmVkX2RwbGwgIT0gbmV3X2NydGNfc3RhdGUtPnNoYXJlZF9kcGxs KSB7Ci0JCXVuc2lnbmVkIGludCBjcnRjX21hc2sgPSBkcm1fY3J0Y19tYXNrKCZjcnRjLT5iYXNl KTsKKwkJdTggcGlwZV9tYXNrID0gQklUKGNydGMtPnBpcGUpOwogCQlzdHJ1Y3QgaW50ZWxfc2hh cmVkX2RwbGwgKnBsbCA9IG9sZF9jcnRjX3N0YXRlLT5zaGFyZWRfZHBsbDsKIAotCQlJOTE1X1NU QVRFX1dBUk4ocGxsLT5hY3RpdmVfbWFzayAmIGNydGNfbWFzaywKLQkJCQkicGxsIGFjdGl2ZSBt aXNtYXRjaCAoZGlkbid0IGV4cGVjdCBwaXBlICVjIGluIGFjdGl2ZSBtYXNrKVxuIiwKLQkJCQlw aXBlX25hbWUoY3J0Yy0+cGlwZSkpOwotCQlJOTE1X1NUQVRFX1dBUk4ocGxsLT5zdGF0ZS5jcnRj X21hc2sgJiBjcnRjX21hc2ssCi0JCQkJInBsbCBlbmFibGVkIGNydGNzIG1pc21hdGNoIChmb3Vu ZCAleCBpbiBlbmFibGVkIG1hc2spXG4iLAotCQkJCXBpcGVfbmFtZShjcnRjLT5waXBlKSk7CisJ CUk5MTVfU1RBVEVfV0FSTihwbGwtPmFjdGl2ZV9tYXNrICYgcGlwZV9tYXNrLAorCQkJCSJwbGwg YWN0aXZlIG1pc21hdGNoIChkaWRuJ3QgZXhwZWN0IHBpcGUgJWMgaW4gYWN0aXZlIG1hc2sgKDB4 JXgpKVxuIiwKKwkJCQlwaXBlX25hbWUoY3J0Yy0+cGlwZSksIHBsbC0+YWN0aXZlX21hc2spOwor CQlJOTE1X1NUQVRFX1dBUk4ocGxsLT5zdGF0ZS5waXBlX21hc2sgJiBwaXBlX21hc2ssCisJCQkJ InBsbCBlbmFibGVkIGNydGNzIG1pc21hdGNoIChmb3VuZCAleCBpbiBlbmFibGVkIG1hc2sgKDB4 JXgpKVxuIiwKKwkJCQlwaXBlX25hbWUoY3J0Yy0+cGlwZSksIHBsbC0+c3RhdGUucGlwZV9tYXNr KTsKIAl9CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2Rpc3BsYXlfZGVidWdmcy5jCmluZGV4IDM1ZjE3NmVhODI4MC4uMjAxOTRjY2ZlYzA1IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfZGVidWdm cy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9kZWJ1 Z2ZzLmMKQEAgLTEwOTQsOCArMTA5NCw4IEBAIHN0YXRpYyBpbnQgaTkxNV9zaGFyZWRfZHBsbHNf aW5mbyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnVudXNlZCkKIAogCQlzZXFfcHJpbnRmKG0s ICJEUExMJWk6ICVzLCBpZDogJWlcbiIsIGksIHBsbC0+aW5mby0+bmFtZSwKIAkJCSAgIHBsbC0+ aW5mby0+aWQpOwotCQlzZXFfcHJpbnRmKG0sICIgY3J0Y19tYXNrOiAweCUwOHgsIGFjdGl2ZTog MHgleCwgb246ICVzXG4iLAotCQkJICAgcGxsLT5zdGF0ZS5jcnRjX21hc2ssIHBsbC0+YWN0aXZl X21hc2ssIHllc25vKHBsbC0+b24pKTsKKwkJc2VxX3ByaW50ZihtLCAiIHBpcGVfbWFzazogMHgl eCwgYWN0aXZlOiAweCV4LCBvbjogJXNcbiIsCisJCQkgICBwbGwtPnN0YXRlLnBpcGVfbWFzaywg cGxsLT5hY3RpdmVfbWFzaywgeWVzbm8ocGxsLT5vbikpOwogCQlzZXFfcHJpbnRmKG0sICIgdHJh Y2tlZCBoYXJkd2FyZSBzdGF0ZTpcbiIpOwogCQlzZXFfcHJpbnRmKG0sICIgZHBsbDogICAgMHgl MDh4XG4iLCBwbGwtPnN0YXRlLmh3X3N0YXRlLmRwbGwpOwogCQlzZXFfcHJpbnRmKG0sICIgZHBs bF9tZDogMHglMDh4XG4iLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kcGxsX21nci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9k cGxsX21nci5jCmluZGV4IDUyOWIxZDU2OWFmMi4uYTY4YWU5MGIwN2UzIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwbGxfbWdyLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcGxsX21nci5jCkBAIC0xNzYsNyArMTc2LDcg QEAgdm9pZCBpbnRlbF9wcmVwYXJlX3NoYXJlZF9kcGxsKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKQogCQlyZXR1cm47CiAKIAltdXRleF9sb2NrKCZkZXZfcHJpdi0+ ZHBsbC5sb2NrKTsKLQlkcm1fV0FSTl9PTigmZGV2X3ByaXYtPmRybSwgIXBsbC0+c3RhdGUuY3J0 Y19tYXNrKTsKKwlkcm1fV0FSTl9PTigmZGV2X3ByaXYtPmRybSwgIXBsbC0+c3RhdGUucGlwZV9t YXNrKTsKIAlpZiAoIXBsbC0+YWN0aXZlX21hc2spIHsKIAkJZHJtX2RiZygmZGV2X3ByaXYtPmRy bSwgInNldHRpbmcgdXAgJXNcbiIsIHBsbC0+aW5mby0+bmFtZSk7CiAJCWRybV9XQVJOX09OKCZk ZXZfcHJpdi0+ZHJtLCBwbGwtPm9uKTsKQEAgLTE5OCw3ICsxOTgsNyBAQCB2b2lkIGludGVsX2Vu YWJsZV9zaGFyZWRfZHBsbChjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSkKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+ dWFwaS5jcnRjKTsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KGNydGMtPmJhc2UuZGV2KTsKIAlzdHJ1Y3QgaW50ZWxfc2hhcmVkX2RwbGwgKnBsbCA9IGNydGNf c3RhdGUtPnNoYXJlZF9kcGxsOwotCXVuc2lnbmVkIGludCBjcnRjX21hc2sgPSBkcm1fY3J0Y19t YXNrKCZjcnRjLT5iYXNlKTsKKwl1bnNpZ25lZCBpbnQgcGlwZV9tYXNrID0gQklUKGNydGMtPnBp cGUpOwogCXVuc2lnbmVkIGludCBvbGRfbWFzazsKIAogCWlmIChkcm1fV0FSTl9PTigmZGV2X3By aXYtPmRybSwgcGxsID09IE5VTEwpKQpAQCAtMjA3LDE2ICsyMDcsMTYgQEAgdm9pZCBpbnRlbF9l bmFibGVfc2hhcmVkX2RwbGwoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGUpCiAJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmRwbGwubG9jayk7CiAJb2xkX21hc2sgPSBwbGwt PmFjdGl2ZV9tYXNrOwogCi0JaWYgKGRybV9XQVJOX09OKCZkZXZfcHJpdi0+ZHJtLCAhKHBsbC0+ c3RhdGUuY3J0Y19tYXNrICYgY3J0Y19tYXNrKSkgfHwKLQkgICAgZHJtX1dBUk5fT04oJmRldl9w cml2LT5kcm0sIHBsbC0+YWN0aXZlX21hc2sgJiBjcnRjX21hc2spKQorCWlmIChkcm1fV0FSTl9P TigmZGV2X3ByaXYtPmRybSwgIShwbGwtPnN0YXRlLnBpcGVfbWFzayAmIHBpcGVfbWFzaykpIHx8 CisJICAgIGRybV9XQVJOX09OKCZkZXZfcHJpdi0+ZHJtLCBwbGwtPmFjdGl2ZV9tYXNrICYgcGlw ZV9tYXNrKSkKIAkJZ290byBvdXQ7CiAKLQlwbGwtPmFjdGl2ZV9tYXNrIHw9IGNydGNfbWFzazsK KwlwbGwtPmFjdGl2ZV9tYXNrIHw9IHBpcGVfbWFzazsKIAogCWRybV9kYmdfa21zKCZkZXZfcHJp di0+ZHJtLAotCQkgICAgImVuYWJsZSAlcyAoYWN0aXZlICV4LCBvbj8gJWQpIGZvciBjcnRjICVk XG4iLAorCQkgICAgImVuYWJsZSAlcyAoYWN0aXZlIDB4JXgsIG9uPyAlZCkgZm9yIFtDUlRDOiVk OiVzXVxuIiwKIAkJICAgIHBsbC0+aW5mby0+bmFtZSwgcGxsLT5hY3RpdmVfbWFzaywgcGxsLT5v biwKLQkJICAgIGNydGMtPmJhc2UuYmFzZS5pZCk7CisJCSAgICBjcnRjLT5iYXNlLmJhc2UuaWQs IGNydGMtPmJhc2UubmFtZSk7CiAKIAlpZiAob2xkX21hc2spIHsKIAkJZHJtX1dBUk5fT04oJmRl dl9wcml2LT5kcm0sICFwbGwtPm9uKTsKQEAgLTI0NCw3ICsyNDQsNyBAQCB2b2lkIGludGVsX2Rp c2FibGVfc2hhcmVkX2RwbGwoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGUpCiAJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUt PnVhcGkuY3J0Yyk7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkx NShjcnRjLT5iYXNlLmRldik7CiAJc3RydWN0IGludGVsX3NoYXJlZF9kcGxsICpwbGwgPSBjcnRj X3N0YXRlLT5zaGFyZWRfZHBsbDsKLQl1bnNpZ25lZCBpbnQgY3J0Y19tYXNrID0gZHJtX2NydGNf bWFzaygmY3J0Yy0+YmFzZSk7CisJdW5zaWduZWQgaW50IHBpcGVfbWFzayA9IEJJVChjcnRjLT5w aXBlKTsKIAogCS8qIFBDSCBvbmx5IGF2YWlsYWJsZSBvbiBJTEsrICovCiAJaWYgKElOVEVMX0dF TihkZXZfcHJpdikgPCA1KQpAQCAtMjU0LDE4ICsyNTQsMjAgQEAgdm9pZCBpbnRlbF9kaXNhYmxl X3NoYXJlZF9kcGxsKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQog CQlyZXR1cm47CiAKIAltdXRleF9sb2NrKCZkZXZfcHJpdi0+ZHBsbC5sb2NrKTsKLQlpZiAoZHJt X1dBUk5fT04oJmRldl9wcml2LT5kcm0sICEocGxsLT5hY3RpdmVfbWFzayAmIGNydGNfbWFzaykp KQorCWlmIChkcm1fV0FSTigmZGV2X3ByaXYtPmRybSwgIShwbGwtPmFjdGl2ZV9tYXNrICYgcGlw ZV9tYXNrKSwKKwkJICAgICAiJXMgbm90IHVzZWQgYnkgW0NSVEM6JWQ6JXNdXG4iLCBwbGwtPmlu Zm8tPm5hbWUsCisJCSAgICAgY3J0Yy0+YmFzZS5iYXNlLmlkLCBjcnRjLT5iYXNlLm5hbWUpKQog CQlnb3RvIG91dDsKIAogCWRybV9kYmdfa21zKCZkZXZfcHJpdi0+ZHJtLAotCQkgICAgImRpc2Fi bGUgJXMgKGFjdGl2ZSAleCwgb24/ICVkKSBmb3IgY3J0YyAlZFxuIiwKKwkJICAgICJkaXNhYmxl ICVzIChhY3RpdmUgMHgleCwgb24/ICVkKSBmb3IgW0NSVEM6JWQ6JXNdXG4iLAogCQkgICAgcGxs LT5pbmZvLT5uYW1lLCBwbGwtPmFjdGl2ZV9tYXNrLCBwbGwtPm9uLAotCQkgICAgY3J0Yy0+YmFz ZS5iYXNlLmlkKTsKKwkJICAgIGNydGMtPmJhc2UuYmFzZS5pZCwgY3J0Yy0+YmFzZS5uYW1lKTsK IAogCWFzc2VydF9zaGFyZWRfZHBsbF9lbmFibGVkKGRldl9wcml2LCBwbGwpOwogCWRybV9XQVJO X09OKCZkZXZfcHJpdi0+ZHJtLCAhcGxsLT5vbik7CiAKLQlwbGwtPmFjdGl2ZV9tYXNrICY9IH5j cnRjX21hc2s7CisJcGxsLT5hY3RpdmVfbWFzayAmPSB+cGlwZV9tYXNrOwogCWlmIChwbGwtPmFj dGl2ZV9tYXNrKQogCQlnb3RvIG91dDsKIApAQCAtMjk2LDcgKzI5OCw3IEBAIGludGVsX2ZpbmRf c2hhcmVkX2RwbGwoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJCXBsbCA9ICZk ZXZfcHJpdi0+ZHBsbC5zaGFyZWRfZHBsbHNbaV07CiAKIAkJLyogT25seSB3YW50IHRvIGNoZWNr IGVuYWJsZWQgdGltaW5ncyBmaXJzdCAqLwotCQlpZiAoc2hhcmVkX2RwbGxbaV0uY3J0Y19tYXNr ID09IDApIHsKKwkJaWYgKHNoYXJlZF9kcGxsW2ldLnBpcGVfbWFzayA9PSAwKSB7CiAJCQlpZiAo IXVudXNlZF9wbGwpCiAJCQkJdW51c2VkX3BsbCA9IHBsbDsKIAkJCWNvbnRpbnVlOwpAQCAtMzA2 LDEwICszMDgsMTAgQEAgaW50ZWxfZmluZF9zaGFyZWRfZHBsbChzdHJ1Y3QgaW50ZWxfYXRvbWlj X3N0YXRlICpzdGF0ZSwKIAkJCSAgICZzaGFyZWRfZHBsbFtpXS5od19zdGF0ZSwKIAkJCSAgIHNp emVvZigqcGxsX3N0YXRlKSkgPT0gMCkgewogCQkJZHJtX2RiZ19rbXMoJmRldl9wcml2LT5kcm0s Ci0JCQkJICAgICJbQ1JUQzolZDolc10gc2hhcmluZyBleGlzdGluZyAlcyAoY3J0YyBtYXNrIDB4 JTA4eCwgYWN0aXZlICV4KVxuIiwKKwkJCQkgICAgIltDUlRDOiVkOiVzXSBzaGFyaW5nIGV4aXN0 aW5nICVzIChwaXBlIG1hc2sgMHgleCwgYWN0aXZlIDB4JXgpXG4iLAogCQkJCSAgICBjcnRjLT5i YXNlLmJhc2UuaWQsIGNydGMtPmJhc2UubmFtZSwKIAkJCQkgICAgcGxsLT5pbmZvLT5uYW1lLAot CQkJCSAgICBzaGFyZWRfZHBsbFtpXS5jcnRjX21hc2ssCisJCQkJICAgIHNoYXJlZF9kcGxsW2ld LnBpcGVfbWFzaywKIAkJCQkgICAgcGxsLT5hY3RpdmVfbWFzayk7CiAJCQlyZXR1cm4gcGxsOwog CQl9CkBAIC0zMzgsMTMgKzM0MCwxMyBAQCBpbnRlbF9yZWZlcmVuY2Vfc2hhcmVkX2RwbGwoc3Ry dWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAKIAlzaGFyZWRfZHBsbCA9IGludGVsX2F0 b21pY19nZXRfc2hhcmVkX2RwbGxfc3RhdGUoJnN0YXRlLT5iYXNlKTsKIAotCWlmIChzaGFyZWRf ZHBsbFtpZF0uY3J0Y19tYXNrID09IDApCisJaWYgKHNoYXJlZF9kcGxsW2lkXS5waXBlX21hc2sg PT0gMCkKIAkJc2hhcmVkX2RwbGxbaWRdLmh3X3N0YXRlID0gKnBsbF9zdGF0ZTsKIAogCWRybV9k YmcoJmk5MTUtPmRybSwgInVzaW5nICVzIGZvciBwaXBlICVjXG4iLCBwbGwtPmluZm8tPm5hbWUs CiAJCXBpcGVfbmFtZShjcnRjLT5waXBlKSk7CiAKLQlzaGFyZWRfZHBsbFtpZF0uY3J0Y19tYXNr IHw9IDEgPDwgY3J0Yy0+cGlwZTsKKwlzaGFyZWRfZHBsbFtpZF0ucGlwZV9tYXNrIHw9IEJJVChj cnRjLT5waXBlKTsKIH0KIAogc3RhdGljIHZvaWQgaW50ZWxfdW5yZWZlcmVuY2Vfc2hhcmVkX2Rw bGwoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCkBAIC0zNTQsNyArMzU2LDcgQEAg c3RhdGljIHZvaWQgaW50ZWxfdW5yZWZlcmVuY2Vfc2hhcmVkX2RwbGwoc3RydWN0IGludGVsX2F0 b21pY19zdGF0ZSAqc3RhdGUsCiAJc3RydWN0IGludGVsX3NoYXJlZF9kcGxsX3N0YXRlICpzaGFy ZWRfZHBsbDsKIAogCXNoYXJlZF9kcGxsID0gaW50ZWxfYXRvbWljX2dldF9zaGFyZWRfZHBsbF9z dGF0ZSgmc3RhdGUtPmJhc2UpOwotCXNoYXJlZF9kcGxsW3BsbC0+aW5mby0+aWRdLmNydGNfbWFz ayAmPSB+KDEgPDwgY3J0Yy0+cGlwZSk7CisJc2hhcmVkX2RwbGxbcGxsLT5pbmZvLT5pZF0ucGlw ZV9tYXNrICY9IH5CSVQoY3J0Yy0+cGlwZSk7CiB9CiAKIHN0YXRpYyB2b2lkIGludGVsX3B1dF9k cGxsKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLApAQCAtNDU5NywxOSArNDU5OSwx OSBAQCBzdGF0aWMgdm9pZCByZWFkb3V0X2RwbGxfaHdfc3RhdGUoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUsCiAJCQkJCQkgICAgICAgUE9XRVJfRE9NQUlOX0RQTExfRENfT0ZGKTsKIAl9 CiAKLQlwbGwtPnN0YXRlLmNydGNfbWFzayA9IDA7CisJcGxsLT5zdGF0ZS5waXBlX21hc2sgPSAw OwogCWZvcl9lYWNoX2ludGVsX2NydGMoJmk5MTUtPmRybSwgY3J0YykgewogCQlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9CiAJCQl0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMt PmJhc2Uuc3RhdGUpOwogCiAJCWlmIChjcnRjX3N0YXRlLT5ody5hY3RpdmUgJiYgY3J0Y19zdGF0 ZS0+c2hhcmVkX2RwbGwgPT0gcGxsKQotCQkJcGxsLT5zdGF0ZS5jcnRjX21hc2sgfD0gMSA8PCBj cnRjLT5waXBlOworCQkJcGxsLT5zdGF0ZS5waXBlX21hc2sgfD0gQklUKGNydGMtPnBpcGUpOwog CX0KLQlwbGwtPmFjdGl2ZV9tYXNrID0gcGxsLT5zdGF0ZS5jcnRjX21hc2s7CisJcGxsLT5hY3Rp dmVfbWFzayA9IHBsbC0+c3RhdGUucGlwZV9tYXNrOwogCiAJZHJtX2RiZ19rbXMoJmk5MTUtPmRy bSwKLQkJICAgICIlcyBodyBzdGF0ZSByZWFkb3V0OiBjcnRjX21hc2sgMHglMDh4LCBvbiAlaVxu IiwKLQkJICAgIHBsbC0+aW5mby0+bmFtZSwgcGxsLT5zdGF0ZS5jcnRjX21hc2ssIHBsbC0+b24p OworCQkgICAgIiVzIGh3IHN0YXRlIHJlYWRvdXQ6IHBpcGVfbWFzayAweCV4LCBvbiAlaVxuIiwK KwkJICAgIHBsbC0+aW5mby0+bmFtZSwgcGxsLT5zdGF0ZS5waXBlX21hc2ssIHBsbC0+b24pOwog fQogCiB2b2lkIGludGVsX2RwbGxfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqaTkxNSkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZHBsbF9tZ3IuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBsbF9t Z3IuaAppbmRleCAyZWI3NjE4ZWY5NTcuLmViNTJlODUwMjJlMiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcGxsX21nci5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBsbF9tZ3IuaApAQCAtMjQxLDkgKzI0MSw5IEBAIHN0 cnVjdCBpbnRlbF9kcGxsX2h3X3N0YXRlIHsKICAqLwogc3RydWN0IGludGVsX3NoYXJlZF9kcGxs X3N0YXRlIHsKIAkvKioKLQkgKiBAY3J0Y19tYXNrOiBtYXNrIG9mIENSVEMgdXNpbmcgdGhpcyBE UExMLCBhY3RpdmUgb3Igbm90CisJICogQHBpcGVfbWFzazogbWFzayBvZiBwaXBlcyB1c2luZyB0 aGlzIERQTEwsIGFjdGl2ZSBvciBub3QKIAkgKi8KLQl1bnNpZ25lZCBjcnRjX21hc2s7CisJdTgg cGlwZV9tYXNrOwogCiAJLyoqCiAJICogQGh3X3N0YXRlOiBoYXJkd2FyZSBjb25maWd1cmF0aW9u IGZvciB0aGUgRFBMTCBzdG9yZWQgaW4KQEAgLTM1MSw5ICszNTEsOSBAQCBzdHJ1Y3QgaW50ZWxf c2hhcmVkX2RwbGwgewogCXN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbF9zdGF0ZSBzdGF0ZTsKIAog CS8qKgotCSAqIEBhY3RpdmVfbWFzazogbWFzayBvZiBhY3RpdmUgQ1JUQ3MgKGkuZS4gRFBNUyBv bikgdXNpbmcgdGhpcyBEUExMCisJICogQGFjdGl2ZV9tYXNrOiBtYXNrIG9mIGFjdGl2ZSBwaXBl cyAoaS5lLiBEUE1TIG9uKSB1c2luZyB0aGlzIERQTEwKIAkgKi8KLQl1bnNpZ25lZCBhY3RpdmVf bWFzazsKKwl1OCBhY3RpdmVfbWFzazsKIAogCS8qKgogCSAqIEBvbjogaXMgdGhlIFBMTCBhY3R1 YWxseSBhY3RpdmU/IERpc2FibGVkIGR1cmluZyBtb2Rlc2V0Ci0tIAoyLjI2LjIKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=