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 770F3C64E75 for ; Fri, 27 Nov 2020 12:09:57 +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 41D052222C for ; Fri, 27 Nov 2020 12:09:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 41D052222C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 772706EC62; Fri, 27 Nov 2020 12:08:58 +0000 (UTC) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id AAE076EC1A; Fri, 27 Nov 2020 12:08:55 +0000 (UTC) IronPort-SDR: 5QKKMGfH51B2/Fvb+tsCR3pho9/0NUmfdxy5xJh78jqCochsyNNYLXbBYUIp4DBiN5b/VSzba2 Ik6f7Am8sg0g== X-IronPort-AV: E=McAfee;i="6000,8403,9817"; a="172540605" X-IronPort-AV: E=Sophos;i="5.78,374,1599548400"; d="scan'208";a="172540605" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Nov 2020 04:08:55 -0800 IronPort-SDR: 9utxEVC7ik6JNTe+5Rj59OYvvhbTvdJoVqTA/qCkd68mCRTds0S/2YNYpfPMa5zq1qXuo4rlk3 VFijcOdV/7Lg== X-IronPort-AV: E=Sophos;i="5.78,374,1599548400"; d="scan'208";a="548028821" Received: from mjgleeso-mobl.ger.corp.intel.com (HELO mwauld-desk1.ger.corp.intel.com) ([10.251.85.2]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Nov 2020 04:08:53 -0800 From: Matthew Auld To: intel-gfx@lists.freedesktop.org Subject: [RFC PATCH 049/162] drm/i915: Use a single page table lock for each gtt. Date: Fri, 27 Nov 2020 12:05:25 +0000 Message-Id: <20201127120718.454037-50-matthew.auld@intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201127120718.454037-1-matthew.auld@intel.com> References: <20201127120718.454037-1-matthew.auld@intel.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dri-devel@lists.freedesktop.org, =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" RnJvbTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNv bT4KCldlIG1heSBjcmVhdGUgcGFnZSB0YWJsZSBvYmplY3RzIG9uIHRoZSBmbHksIGJ1dCB3ZSBt YXkgbmVlZCB0bwp3YWl0IHdpdGggdGhlIHd3IGxvY2sgaGVsZC4gSW5zdGVhZCBvZiB3YWl0aW5n IG9uIGEgZnJlZWQgb2JqCmxvY2ssIGVuc3VyZSB3ZSBoYXZlIHRoZSBzYW1lIGxvY2sgZm9yIGVh Y2ggb2JqZWN0IHRvIGtlZXAKLUVERUFETEsgd29ya2luZy4gVGhpcyBlbnN1cmVzIHRoYXQgaTkx NV92bWFfcGluX3d3IGNhbiBsb2NrCnRoZSBwYWdlIHRhYmxlcyB3aGVuIHJlcXVpcmVkLgoKU2ln bmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4Lmlu dGVsLmNvbT4KQ2M6IFRob21hcyBIZWxsc3Ryw7ZtIDx0aG9tYXMuaGVsbHN0cm9tQGxpbnV4Lmlu dGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9nZ3R0LmMgIHwgIDgg KysrKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuYyAgIHwgMzggKysrKysr KysrKysrKysrKysrKysrKysrKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQu aCAgIHwgIDUgKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcHBndHQuYyB8ICAz ICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92bWEuYyAgICAgICB8ICA0ICsrKwogNSBm aWxlcyBjaGFuZ2VkLCA1NSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2dndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d0L2ludGVsX2dndHQuYwppbmRleCA2MGJkMmM4ZWQ4YjAuLjE3ZWNhZWYxODM0ZCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZ2d0dC5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2dndHQuYwpAQCAtNjE1LDcgKzYxNSw5IEBAIHN0 YXRpYyBpbnQgaW5pdF9hbGlhc2luZ19wcGd0dChzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0KQogCWlm IChlcnIpCiAJCWdvdG8gZXJyX3BwZ3R0OwogCisJaTkxNV9nZW1fb2JqZWN0X2xvY2socHBndHQt PnZtLnNjcmF0Y2hbMF0sIE5VTEwpOwogCWVyciA9IGk5MTVfdm1fcGluX3B0X3N0YXNoKCZwcGd0 dC0+dm0sICZzdGFzaCk7CisJaTkxNV9nZW1fb2JqZWN0X3VubG9jayhwcGd0dC0+dm0uc2NyYXRj aFswXSk7CiAJaWYgKGVycikKIAkJZ290byBlcnJfc3Rhc2g7CiAKQEAgLTcwMiw2ICs3MDQsNyBA QCBzdGF0aWMgdm9pZCBnZ3R0X2NsZWFudXBfaHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIAog CW11dGV4X3VubG9jaygmZ2d0dC0+dm0ubXV0ZXgpOwogCWk5MTVfYWRkcmVzc19zcGFjZV9maW5p KCZnZ3R0LT52bSk7CisJZG1hX3Jlc3ZfZmluaSgmZ2d0dC0+dm0ucmVzdik7CiAKIAlhcmNoX3Bo eXNfd2NfZGVsKGdndHQtPm10cnIpOwogCkBAIC0xMDc4LDYgKzEwODEsNyBAQCBzdGF0aWMgaW50 IGdndHRfcHJvYmVfaHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCwgc3RydWN0IGludGVsX2d0ICpn dCkKIAlnZ3R0LT52bS5ndCA9IGd0OwogCWdndHQtPnZtLmk5MTUgPSBpOTE1OwogCWdndHQtPnZt LmRtYSA9ICZpOTE1LT5kcm0ucGRldi0+ZGV2OworCWRtYV9yZXN2X2luaXQoJmdndHQtPnZtLnJl c3YpOwogCiAJaWYgKElOVEVMX0dFTihpOTE1KSA8PSA1KQogCQlyZXQgPSBpOTE1X2dtY2hfcHJv YmUoZ2d0dCk7CkBAIC0xMDg1LDggKzEwODksMTAgQEAgc3RhdGljIGludCBnZ3R0X3Byb2JlX2h3 KHN0cnVjdCBpOTE1X2dndHQgKmdndHQsIHN0cnVjdCBpbnRlbF9ndCAqZ3QpCiAJCXJldCA9IGdl bjZfZ21jaF9wcm9iZShnZ3R0KTsKIAllbHNlCiAJCXJldCA9IGdlbjhfZ21jaF9wcm9iZShnZ3R0 KTsKLQlpZiAocmV0KQorCWlmIChyZXQpIHsKKwkJZG1hX3Jlc3ZfZmluaSgmZ2d0dC0+dm0ucmVz dik7CiAJCXJldHVybiByZXQ7CisJfQogCiAJaWYgKChnZ3R0LT52bS50b3RhbCAtIDEpID4+IDMy KSB7CiAJCWRybV9lcnIoJmk5MTUtPmRybSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2d0L2ludGVsX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZ3R0LmMK aW5kZXggN2JmZTkwNzJiZTlhLi4wNzBkNTM4Y2RjNTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L2ludGVsX2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX2d0dC5jCkBAIC0xMywxNiArMTMsMzYgQEAKIAogc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKmFsbG9jX3B0X2RtYShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwgaW50IHN6KQog eworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CisKIAlpZiAoSTkxNV9TRUxGVEVT VF9PTkxZKHNob3VsZF9mYWlsKCZ2bS0+ZmF1bHRfYXR0ciwgMSkpKQogCQlpOTE1X2dlbV9zaHJp bmtfYWxsKHZtLT5pOTE1KTsKIAotCXJldHVybiBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX2ludGVy bmFsKHZtLT5pOTE1LCBzeik7CisJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9pbnRlcm5h bCh2bS0+aTkxNSwgc3opOworCS8qIGVuc3VyZSBhbGwgZG1hIG9iamVjdHMgaGF2ZSB0aGUgc2Ft ZSByZXNlcnZhdGlvbiBjbGFzcyAqLworCWlmICghSVNfRVJSKG9iaikpCisJCW9iai0+YmFzZS5y ZXN2ID0gJnZtLT5yZXN2OworCXJldHVybiBvYmo7CiB9CiAKIGludCBwaW5fcHRfZG1hKHN0cnVj dCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2Jq KQogewogCWludCBlcnI7CiAKKwlpOTE1X2dlbV9vYmplY3RfbG9jayhvYmosIE5VTEwpOworCWVy ciA9IGk5MTVfZ2VtX29iamVjdF9waW5fcGFnZXMob2JqKTsKKwlpOTE1X2dlbV9vYmplY3RfdW5s b2NrKG9iaik7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKworCWk5MTVfZ2VtX29iamVjdF9t YWtlX3Vuc2hyaW5rYWJsZShvYmopOworCXJldHVybiAwOworfQorCitpbnQgcGluX3B0X2RtYV9s b2NrZWQoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sIHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmopCit7CisJaW50IGVycjsKKwogCWVyciA9IGk5MTVfZ2VtX29iamVjdF9waW5f cGFnZXMob2JqKTsKIAlpZiAoZXJyKQogCQlyZXR1cm4gZXJyOwpAQCAtNTYsNiArNzYsMjAgQEAg dm9pZCBfX2k5MTVfdm1fY2xvc2Uoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0pCiAJbXV0 ZXhfdW5sb2NrKCZ2bS0+bXV0ZXgpOwogfQogCisvKiBsb2NrIHRoZSB2bSBpbnRvIHRoZSBjdXJy ZW50IHd3LCBpZiB3ZSBsb2NrIG9uZSwgd2UgbG9jayBhbGwgKi8KK2ludCBpOTE1X3ZtX2xvY2tf b2JqZWN0cyhzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKKwkJCSBzdHJ1Y3QgaTkxNV9n ZW1fd3dfY3R4ICp3dykKK3sKKwlpZiAodm0tPnNjcmF0Y2hbMF0tPmJhc2UucmVzdiA9PSAmdm0t PnJlc3YpIHsKKwkJcmV0dXJuIGk5MTVfZ2VtX29iamVjdF9sb2NrKHZtLT5zY3JhdGNoWzBdLCB3 dyk7CisJfSBlbHNlIHsKKwkJc3RydWN0IGk5MTVfcHBndHQgKnBwZ3R0ID0gaTkxNV92bV90b19w cGd0dCh2bSk7CisKKwkJLyogV2UgYm9ycm93ZWQgdGhlIHNjcmF0Y2ggcGFnZSBmcm9tIGdndHQs IHRha2UgdGhlIHRvcCBsZXZlbCBvYmplY3QgKi8KKwkJcmV0dXJuIGk5MTVfZ2VtX29iamVjdF9s b2NrKHBwZ3R0LT5wZC0+cHQuYmFzZSwgd3cpOworCX0KK30KKwogdm9pZCBpOTE1X2FkZHJlc3Nf c3BhY2VfZmluaShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSkKIHsKIAlkcm1fbW1fdGFr ZWRvd24oJnZtLT5tbSk7CkBAIC02OSw2ICsxMDMsNyBAQCBzdGF0aWMgdm9pZCBfX2k5MTVfdm1f cmVsZWFzZShzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiAKIAl2bS0+Y2xlYW51cCh2bSk7CiAJ aTkxNV9hZGRyZXNzX3NwYWNlX2Zpbmkodm0pOworCWRtYV9yZXN2X2ZpbmkoJnZtLT5yZXN2KTsK IAogCWtmcmVlKHZtKTsKIH0KQEAgLTk4LDYgKzEzMyw3IEBAIHZvaWQgaTkxNV9hZGRyZXNzX3Nw YWNlX2luaXQoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sIGludCBzdWJjbGFzcykKIAlt dXRleF9pbml0KCZ2bS0+bXV0ZXgpOwogCWxvY2tkZXBfc2V0X3N1YmNsYXNzKCZ2bS0+bXV0ZXgs IHN1YmNsYXNzKTsKIAlpOTE1X2dlbV9zaHJpbmtlcl90YWludHNfbXV0ZXgodm0tPmk5MTUsICZ2 bS0+bXV0ZXgpOworCWRtYV9yZXN2X2luaXQoJnZtLT5yZXN2KTsKIAogCUdFTV9CVUdfT04oIXZt LT50b3RhbCk7CiAJZHJtX21tX2luaXQoJnZtLT5tbSwgMCwgdm0tPnRvdGFsKTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2d0dC5oIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvZ3QvaW50ZWxfZ3R0LmgKaW5kZXggOGEzMzk0MGE3MWYzLi4xNjA2M2IyZjAxMTkgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2d0dC5oCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2d0dC5oCkBAIC0yMzgsNiArMjM4LDcgQEAgc3RydWN0 IGk5MTVfYWRkcmVzc19zcGFjZSB7CiAJYXRvbWljX3Qgb3BlbjsKIAogCXN0cnVjdCBtdXRleCBt dXRleDsgLyogcHJvdGVjdHMgdm1hIGFuZCBvdXIgbGlzdHMgKi8KKwlzdHJ1Y3QgZG1hX3Jlc3Yg cmVzdjsgLyogcmVzZXJ2YXRpb24gbG9jayBmb3IgYWxsIHBkIG9iamVjdHMsIGFuZCBidWZmZXIg cG9vbCAqLwogI2RlZmluZSBWTV9DTEFTU19HR1RUIDAKICNkZWZpbmUgVk1fQ0xBU1NfUFBHVFQg MQogCkBAIC0zNDYsNiArMzQ3LDkgQEAgc3RydWN0IGk5MTVfcHBndHQgewogCiAjZGVmaW5lIGk5 MTVfaXNfZ2d0dCh2bSkgKCh2bSktPmlzX2dndHQpCiAKK2ludCBfX211c3RfY2hlY2sKK2k5MTVf dm1fbG9ja19vYmplY3RzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLCBzdHJ1Y3QgaTkx NV9nZW1fd3dfY3R4ICp3dyk7CisKIHN0YXRpYyBpbmxpbmUgYm9vbAogaTkxNV92bV9pc180bHZs KGNvbnN0IHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogewpAQCAtNTIyLDYgKzUyNiw3 IEBAIHN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5ICphbGxvY19wZChzdHJ1Y3QgaTkxNV9hZGRy ZXNzX3NwYWNlICp2bSk7CiBzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSAqX19hbGxvY19wZChp bnQgbnBkZSk7CiAKIGludCBwaW5fcHRfZG1hKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZt LCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKTsKK2ludCBwaW5fcHRfZG1hX2xvY2tl ZChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwgc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9iaik7CiAKIHZvaWQgZnJlZV9weChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwK IAkgICAgIHN0cnVjdCBpOTE1X3BhZ2VfdGFibGUgKnB0LCBpbnQgbHZsKTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3BwZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9ndC9pbnRlbF9wcGd0dC5jCmluZGV4IDQ2ZDlhY2VkYTY0Yy4uZjNhYzQ3NzAyYWVlIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9wcGd0dC5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3BwZ3R0LmMKQEAgLTI2Miw3ICsyNjIsNyBAQCBp bnQgaTkxNV92bV9waW5fcHRfc3Rhc2goc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAK IAlmb3IgKG4gPSAwOyBuIDwgQVJSQVlfU0laRShzdGFzaC0+cHQpOyBuKyspIHsKIAkJZm9yIChw dCA9IHN0YXNoLT5wdFtuXTsgcHQ7IHB0ID0gcHQtPnN0YXNoKSB7Ci0JCQllcnIgPSBwaW5fcHRf ZG1hKHZtLCBwdC0+YmFzZSk7CisJCQllcnIgPSBwaW5fcHRfZG1hX2xvY2tlZCh2bSwgcHQtPmJh c2UpOwogCQkJaWYgKGVycikKIAkJCQlyZXR1cm4gZXJyOwogCQl9CkBAIC0zMDQsNiArMzA0LDcg QEAgdm9pZCBwcGd0dF9pbml0KHN0cnVjdCBpOTE1X3BwZ3R0ICpwcGd0dCwgc3RydWN0IGludGVs X2d0ICpndCkKIAlwcGd0dC0+dm0uZG1hID0gJmk5MTUtPmRybS5wZGV2LT5kZXY7CiAJcHBndHQt PnZtLnRvdGFsID0gQklUX1VMTChJTlRFTF9JTkZPKGk5MTUpLT5wcGd0dF9zaXplKTsKIAorCWRt YV9yZXN2X2luaXQoJnBwZ3R0LT52bS5yZXN2KTsKIAlpOTE1X2FkZHJlc3Nfc3BhY2VfaW5pdCgm cHBndHQtPnZtLCBWTV9DTEFTU19QUEdUVCk7CiAKIAlwcGd0dC0+dm0udm1hX29wcy5iaW5kX3Zt YSAgICA9IHBwZ3R0X2JpbmRfdm1hOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV92bWEuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1hLmMKaW5kZXggNjNiZGIw Y2M5ODFlLi4wYzdlNDE5MTgxMWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfdm1hLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92bWEuYwpAQCAtOTA4LDYg KzkwOCwxMCBAQCBpbnQgaTkxNV92bWFfcGluX3d3KHN0cnVjdCBpOTE1X3ZtYSAqdm1hLCBzdHJ1 Y3QgaTkxNV9nZW1fd3dfY3R4ICp3dywKIAkJCWlmIChlcnIpCiAJCQkJZ290byBlcnJfZmVuY2U7 CiAKKwkJCWVyciA9IGk5MTVfdm1fbG9ja19vYmplY3RzKHZtYS0+dm0sIHd3KTsKKwkJCWlmIChl cnIpCisJCQkJZ290byBlcnJfZmVuY2U7CisKIAkJCWVyciA9IGk5MTVfdm1fcGluX3B0X3N0YXNo KHZtYS0+dm0sCiAJCQkJCQkgICAmd29yay0+c3Rhc2gpOwogCQkJaWYgKGVycikKLS0gCjIuMjYu MgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRl dmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==