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.8 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 1EEE0C4743E for ; Tue, 8 Jun 2021 09:29:14 +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 EB4BE61263 for ; Tue, 8 Jun 2021 09:29:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EB4BE61263 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 9A39B6EB5F; Tue, 8 Jun 2021 09:29:08 +0000 (UTC) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id F068C6EB5F; Tue, 8 Jun 2021 09:29:05 +0000 (UTC) IronPort-SDR: ujSUgvMq+0OQpZofaLvXvSYlmogDJmM1k3tcF5iUee9gRgL5S/ctbLVpGKCdcP/11HAGE7uT/l E/18h/VJgdAA== X-IronPort-AV: E=McAfee;i="6200,9189,10008"; a="226150951" X-IronPort-AV: E=Sophos;i="5.83,257,1616482800"; d="scan'208";a="226150951" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2021 02:29:05 -0700 IronPort-SDR: +MEZaF26X/9BamTNsBW6+FtSz3ZVVPUnAkB7MoS7rkq7LYeUxap/koG22eS6ZvK0CGR1FDVHy/ grPkwQwfSA0Q== X-IronPort-AV: E=Sophos;i="5.83,257,1616482800"; d="scan'208";a="551544373" Received: from mkayyal-mobl.ger.corp.intel.com (HELO thellst-mobl1.intel.com) ([10.249.254.115]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2021 02:29:03 -0700 From: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Date: Tue, 8 Jun 2021 11:28:39 +0200 Message-Id: <20210608092846.64198-3-thomas.hellstrom@linux.intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210608092846.64198-1-thomas.hellstrom@linux.intel.com> References: <20210608092846.64198-1-thomas.hellstrom@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 2/9] drm/i915: Break out dma_resv ww locking utilities to separate files 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: , Cc: matthew.auld@intel.com, =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" QXMgd2UncmUgYWJvdXQgdG8gYWRkIG1vcmUgd3ctcmVsYXRlZCBmdW5jdGlvbmFsaXR5LApicmVh ayBvdXQgdGhlIGRtYV9yZXN2IHd3IGxvY2tpbmcgdXRpbGl0aWVzIHRvIHRoZWlyIG93biBmaWxl cwoKU2lnbmVkLW9mZi1ieTogVGhvbWFzIEhlbGxzdHLDtm0gPHRob21hcy5oZWxsc3Ryb21AbGlu dXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlICAgICAgICAg ICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0Lmgg IHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVuZGVyc3RhdGUuaCB8ICAx ICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICAgfCA1NiAtLS0t LS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmggICAgICAgICAg ICAgfCAxMiAtLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV93dy5jICAgICAgICAg IHwgNjMgKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV93dy5oICAgICAgICAgIHwgMjEgKysrKysrKwogNyBmaWxlcyBjaGFuZ2VkLCA4NyBpbnNlcnRp b25zKCspLCA2OCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV93dy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fd3cuaAoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01h a2VmaWxlIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUKaW5kZXggNGYyMmNhYzFjNDli Li5lYThlZTRiM2UwMTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxl CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCkBAIC00NSw2ICs0NSw3IEBAIGk5 MTUteSArPSBpOTE1X2Rydi5vIFwKIAkgIGk5MTVfc3dpdGNoZXJvby5vIFwKIAkgIGk5MTVfc3lz ZnMubyBcCiAJICBpOTE1X3V0aWxzLm8gXAorCSAgaTkxNV9nZW1fd3cubyBcCiAJICBpbnRlbF9k ZXZpY2VfaW5mby5vIFwKIAkgIGludGVsX2RyYW0ubyBcCiAJICBpbnRlbF9tZW1vcnlfcmVnaW9u Lm8gXApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVj dC5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5oCmluZGV4IDFm YWZjYzg5ZWNlZS4uNzg5NTI5YjQyNGMxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9nZW0vaTkxNV9nZW1fb2JqZWN0LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5 MTVfZ2VtX29iamVjdC5oCkBAIC0xNSw2ICsxNSw3IEBACiAjaW5jbHVkZSAiaTkxNV9nZW1fb2Jq ZWN0X3R5cGVzLmgiCiAjaW5jbHVkZSAiaTkxNV9nZW1fZ3R0LmgiCiAjaW5jbHVkZSAiaTkxNV92 bWFfdHlwZXMuaCIKKyNpbmNsdWRlICJpOTE1X2dlbV93dy5oIgogCiAvKgogICogWFhYOiBUaGVy ZSBpcyBhIHByZXZhbGVuY2Ugb2YgdGhlIGFzc3VtcHRpb24gdGhhdCB3ZSBmaXQgdGhlCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yZW5kZXJzdGF0ZS5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVuZGVyc3RhdGUuaAppbmRleCA0OGYwMDkyMDM5 MTcuLjRkYTRjNTIzNGVmMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50 ZWxfcmVuZGVyc3RhdGUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yZW5k ZXJzdGF0ZS5oCkBAIC04LDYgKzgsNyBAQAogCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNp bmNsdWRlICJpOTE1X2dlbS5oIgorI2luY2x1ZGUgImk5MTVfZ2VtX3d3LmgiCiAKIHN0cnVjdCBp OTE1X3JlcXVlc3Q7CiBzdHJ1Y3QgaW50ZWxfY29udGV4dDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j CmluZGV4IDNmMDYwYWI1OGM1ZC4uY2U2NGQzMDA1Y2YyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMKQEAgLTEyMDQsNjIgKzEyMDQsNiBAQCBpbnQgaTkxNV9nZW1fb3BlbihzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqaTkxNSwgc3RydWN0IGRybV9maWxlICpmaWxlKQogCXJldHVybiByZXQ7CiB9 CiAKLXZvaWQgaTkxNV9nZW1fd3dfY3R4X2luaXQoc3RydWN0IGk5MTVfZ2VtX3d3X2N0eCAqd3cs IGJvb2wgaW50cikKLXsKLQl3d19hY3F1aXJlX2luaXQoJnd3LT5jdHgsICZyZXNlcnZhdGlvbl93 d19jbGFzcyk7Ci0JSU5JVF9MSVNUX0hFQUQoJnd3LT5vYmpfbGlzdCk7Ci0Jd3ctPmludHIgPSBp bnRyOwotCXd3LT5jb250ZW5kZWQgPSBOVUxMOwotfQotCi1zdGF0aWMgdm9pZCBpOTE1X2dlbV93 d19jdHhfdW5sb2NrX2FsbChzdHJ1Y3QgaTkxNV9nZW1fd3dfY3R4ICp3dykKLXsKLQlzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwotCi0Jd2hpbGUgKChvYmogPSBsaXN0X2ZpcnN0X2Vu dHJ5X29yX251bGwoJnd3LT5vYmpfbGlzdCwgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QsIG9i al9saW5rKSkpIHsKLQkJbGlzdF9kZWwoJm9iai0+b2JqX2xpbmspOwotCQlpOTE1X2dlbV9vYmpl Y3RfdW5sb2NrKG9iaik7Ci0JCWk5MTVfZ2VtX29iamVjdF9wdXQob2JqKTsKLQl9Ci19Ci0KLXZv aWQgaTkxNV9nZW1fd3dfdW5sb2NrX3NpbmdsZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAq b2JqKQotewotCWxpc3RfZGVsKCZvYmotPm9ial9saW5rKTsKLQlpOTE1X2dlbV9vYmplY3RfdW5s b2NrKG9iaik7Ci0JaTkxNV9nZW1fb2JqZWN0X3B1dChvYmopOwotfQotCi12b2lkIGk5MTVfZ2Vt X3d3X2N0eF9maW5pKHN0cnVjdCBpOTE1X2dlbV93d19jdHggKnd3KQotewotCWk5MTVfZ2VtX3d3 X2N0eF91bmxvY2tfYWxsKHd3KTsKLQlXQVJOX09OKHd3LT5jb250ZW5kZWQpOwotCXd3X2FjcXVp cmVfZmluaSgmd3ctPmN0eCk7Ci19Ci0KLWludCBfX211c3RfY2hlY2sgaTkxNV9nZW1fd3dfY3R4 X2JhY2tvZmYoc3RydWN0IGk5MTVfZ2VtX3d3X2N0eCAqd3cpCi17Ci0JaW50IHJldCA9IDA7Ci0K LQlpZiAoV0FSTl9PTighd3ctPmNvbnRlbmRlZCkpCi0JCXJldHVybiAtRUlOVkFMOwotCi0JaTkx NV9nZW1fd3dfY3R4X3VubG9ja19hbGwod3cpOwotCWlmICh3dy0+aW50cikKLQkJcmV0ID0gZG1h X3Jlc3ZfbG9ja19zbG93X2ludGVycnVwdGlibGUod3ctPmNvbnRlbmRlZC0+YmFzZS5yZXN2LCAm d3ctPmN0eCk7Ci0JZWxzZQotCQlkbWFfcmVzdl9sb2NrX3Nsb3cod3ctPmNvbnRlbmRlZC0+YmFz ZS5yZXN2LCAmd3ctPmN0eCk7Ci0KLQlpZiAoIXJldCkKLQkJbGlzdF9hZGRfdGFpbCgmd3ctPmNv bnRlbmRlZC0+b2JqX2xpbmssICZ3dy0+b2JqX2xpc3QpOwotCWVsc2UKLQkJaTkxNV9nZW1fb2Jq ZWN0X3B1dCh3dy0+Y29udGVuZGVkKTsKLQotCXd3LT5jb250ZW5kZWQgPSBOVUxMOwotCi0JcmV0 dXJuIHJldDsKLX0KLQogI2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9JOTE1X1NFTEZURVNUKQog I2luY2x1ZGUgInNlbGZ0ZXN0cy9tb2NrX2dlbV9kZXZpY2UuYyIKICNpbmNsdWRlICJzZWxmdGVz dHMvaTkxNV9nZW0uYyIKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5oCmluZGV4IDQ0MGMzNWYxYWJjOS4u ZDA3NTJlNTU1M2RiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmgKQEAgLTEyMywxNiArMTIzLDQg QEAgc3RhdGljIGlubGluZSBib29sIF9fdGFza2xldF9pc19zY2hlZHVsZWQoc3RydWN0IHRhc2ts ZXRfc3RydWN0ICp0KQogCXJldHVybiB0ZXN0X2JpdChUQVNLTEVUX1NUQVRFX1NDSEVELCAmdC0+ c3RhdGUpOwogfQogCi1zdHJ1Y3QgaTkxNV9nZW1fd3dfY3R4IHsKLQlzdHJ1Y3Qgd3dfYWNxdWly ZV9jdHggY3R4OwotCXN0cnVjdCBsaXN0X2hlYWQgb2JqX2xpc3Q7Ci0JYm9vbCBpbnRyOwotCXN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpjb250ZW5kZWQ7Ci19OwotCi12b2lkIGk5MTVfZ2Vt X3d3X2N0eF9pbml0KHN0cnVjdCBpOTE1X2dlbV93d19jdHggKmN0eCwgYm9vbCBpbnRyKTsKLXZv aWQgaTkxNV9nZW1fd3dfY3R4X2Zpbmkoc3RydWN0IGk5MTVfZ2VtX3d3X2N0eCAqY3R4KTsKLWlu dCBfX211c3RfY2hlY2sgaTkxNV9nZW1fd3dfY3R4X2JhY2tvZmYoc3RydWN0IGk5MTVfZ2VtX3d3 X2N0eCAqY3R4KTsKLXZvaWQgaTkxNV9nZW1fd3dfdW5sb2NrX3NpbmdsZShzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqKTsKLQogI2VuZGlmIC8qIF9fSTkxNV9HRU1fSF9fICovCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV93dy5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fd3cuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAuLjNmNmZmMTM5NDc4ZQotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX3d3LmMKQEAgLTAsMCArMSw2MyBAQAorLy8gU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IE1JVAorLyoKKyAqIENvcHlyaWdodCDCqSAyMDIwIEludGVsIENvcnBvcmF0aW9uCisg Ki8KKyNpbmNsdWRlIDxsaW51eC9kbWEtcmVzdi5oPgorI2luY2x1ZGUgImk5MTVfZ2VtX3d3Lmgi CisjaW5jbHVkZSAiZ2VtL2k5MTVfZ2VtX29iamVjdC5oIgorCit2b2lkIGk5MTVfZ2VtX3d3X2N0 eF9pbml0KHN0cnVjdCBpOTE1X2dlbV93d19jdHggKnd3LCBib29sIGludHIpCit7CisJd3dfYWNx dWlyZV9pbml0KCZ3dy0+Y3R4LCAmcmVzZXJ2YXRpb25fd3dfY2xhc3MpOworCUlOSVRfTElTVF9I RUFEKCZ3dy0+b2JqX2xpc3QpOworCXd3LT5pbnRyID0gaW50cjsKKwl3dy0+Y29udGVuZGVkID0g TlVMTDsKK30KKworc3RhdGljIHZvaWQgaTkxNV9nZW1fd3dfY3R4X3VubG9ja19hbGwoc3RydWN0 IGk5MTVfZ2VtX3d3X2N0eCAqd3cpCit7CisJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i ajsKKworCXdoaWxlICgob2JqID0gbGlzdF9maXJzdF9lbnRyeV9vcl9udWxsKCZ3dy0+b2JqX2xp c3QsIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0LCBvYmpfbGluaykpKSB7CisJCWxpc3RfZGVs KCZvYmotPm9ial9saW5rKTsKKwkJaTkxNV9nZW1fb2JqZWN0X3VubG9jayhvYmopOworCQlpOTE1 X2dlbV9vYmplY3RfcHV0KG9iaik7CisJfQorfQorCit2b2lkIGk5MTVfZ2VtX3d3X3VubG9ja19z aW5nbGUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKK3sKKwlsaXN0X2RlbCgmb2Jq LT5vYmpfbGluayk7CisJaTkxNV9nZW1fb2JqZWN0X3VubG9jayhvYmopOworCWk5MTVfZ2VtX29i amVjdF9wdXQob2JqKTsKK30KKwordm9pZCBpOTE1X2dlbV93d19jdHhfZmluaShzdHJ1Y3QgaTkx NV9nZW1fd3dfY3R4ICp3dykKK3sKKwlpOTE1X2dlbV93d19jdHhfdW5sb2NrX2FsbCh3dyk7CisJ V0FSTl9PTih3dy0+Y29udGVuZGVkKTsKKwl3d19hY3F1aXJlX2ZpbmkoJnd3LT5jdHgpOworfQor CitpbnQgX19tdXN0X2NoZWNrIGk5MTVfZ2VtX3d3X2N0eF9iYWNrb2ZmKHN0cnVjdCBpOTE1X2dl bV93d19jdHggKnd3KQoreworCWludCByZXQgPSAwOworCisJaWYgKFdBUk5fT04oIXd3LT5jb250 ZW5kZWQpKQorCQlyZXR1cm4gLUVJTlZBTDsKKworCWk5MTVfZ2VtX3d3X2N0eF91bmxvY2tfYWxs KHd3KTsKKwlpZiAod3ctPmludHIpCisJCXJldCA9IGRtYV9yZXN2X2xvY2tfc2xvd19pbnRlcnJ1 cHRpYmxlKHd3LT5jb250ZW5kZWQtPmJhc2UucmVzdiwgJnd3LT5jdHgpOworCWVsc2UKKwkJZG1h X3Jlc3ZfbG9ja19zbG93KHd3LT5jb250ZW5kZWQtPmJhc2UucmVzdiwgJnd3LT5jdHgpOworCisJ aWYgKCFyZXQpCisJCWxpc3RfYWRkX3RhaWwoJnd3LT5jb250ZW5kZWQtPm9ial9saW5rLCAmd3ct Pm9ial9saXN0KTsKKwllbHNlCisJCWk5MTVfZ2VtX29iamVjdF9wdXQod3ctPmNvbnRlbmRlZCk7 CisKKwl3dy0+Y29udGVuZGVkID0gTlVMTDsKKworCXJldHVybiByZXQ7Cit9CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV93dy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fd3cuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu LmYyZDg3NjllNDExOAotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX3d3LmgKQEAgLTAsMCArMSwyMSBAQAorLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6 IE1JVCAqLworLyoKKyAqIENvcHlyaWdodCDCqSAyMDIwIEludGVsIENvcnBvcmF0aW9uCisgKi8K KyNpZm5kZWYgX19JOTE1X0dFTV9XV19IX18KKyNkZWZpbmUgX19JOTE1X0dFTV9XV19IX18KKwor I2luY2x1ZGUgPGRybS9kcm1fZHJ2Lmg+CisKK3N0cnVjdCBpOTE1X2dlbV93d19jdHggeworCXN0 cnVjdCB3d19hY3F1aXJlX2N0eCBjdHg7CisJc3RydWN0IGxpc3RfaGVhZCBvYmpfbGlzdDsKKwlz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY29udGVuZGVkOworCWJvb2wgaW50cjsKK307CisK K3ZvaWQgaTkxNV9nZW1fd3dfY3R4X2luaXQoc3RydWN0IGk5MTVfZ2VtX3d3X2N0eCAqY3R4LCBi b29sIGludHIpOwordm9pZCBpOTE1X2dlbV93d19jdHhfZmluaShzdHJ1Y3QgaTkxNV9nZW1fd3df Y3R4ICpjdHgpOworaW50IF9fbXVzdF9jaGVjayBpOTE1X2dlbV93d19jdHhfYmFja29mZihzdHJ1 Y3QgaTkxNV9nZW1fd3dfY3R4ICpjdHgpOwordm9pZCBpOTE1X2dlbV93d191bmxvY2tfc2luZ2xl KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopOworI2VuZGlmCi0tIAoyLjMxLjEKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=