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=-8.5 required=3.0 tests=DKIM_ADSP_ALL,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,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 9A967C2D0DB for ; Fri, 24 Jan 2020 15:32:12 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (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 6B04220838 for ; Fri, 24 Jan 2020 15:32:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amazon.com header.i=@amazon.com header.b="LxYPdoxC" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6B04220838 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=amazon.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iv0w7-00070u-LN; Fri, 24 Jan 2020 15:31:55 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iv0w6-00070Q-O2 for xen-devel@lists.xenproject.org; Fri, 24 Jan 2020 15:31:54 +0000 X-Inumbo-ID: a5f5290c-3ebe-11ea-8032-12813bfff9fa Received: from smtp-fw-9101.amazon.com (unknown [207.171.184.25]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id a5f5290c-3ebe-11ea-8032-12813bfff9fa; Fri, 24 Jan 2020 15:31:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1579879915; x=1611415915; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=0O9XWa6PMSsPO7G+77ZbS/9zJksGKayRB8cqOasAY18=; b=LxYPdoxCbBJ3kqj7dokL08dQTIWGJp8Ub1M1EIqaOiibVb2F7yZpTwl9 GL7+5hdZWLhDIqYjT9S6c0QT/RMzcqbgXRUW5QdKNsIRDDQdSYdsLhNva 6FgBLQgoLjlk8bqYarXYA1zbIDPjBgCmX3K3ns4wLG2kAthyxjoPTUTQq A=; IronPort-SDR: AOKaeCaOnPK00bWEz1iV4yK9cn+3o3TTicpOQ7M+6hlwBfMXX7Q4a2w7zdV0+pGp0qkR2x8F8V YaBCX1OwveYA== X-IronPort-AV: E=Sophos;i="5.70,358,1574121600"; d="scan'208";a="12427568" Received: from sea32-co-svc-lb4-vlan3.sea.corp.amazon.com (HELO email-inbound-relay-2a-e7be2041.us-west-2.amazon.com) ([10.47.23.38]) by smtp-border-fw-out-9101.sea19.amazon.com with ESMTP; 24 Jan 2020 15:31:41 +0000 Received: from EX13MTAUEA002.ant.amazon.com (pdx4-ws-svc-p6-lb7-vlan2.pdx.amazon.com [10.170.41.162]) by email-inbound-relay-2a-e7be2041.us-west-2.amazon.com (Postfix) with ESMTPS id B8BCBA21D2; Fri, 24 Jan 2020 15:31:39 +0000 (UTC) Received: from EX13D32EUC004.ant.amazon.com (10.43.164.121) by EX13MTAUEA002.ant.amazon.com (10.43.61.77) with Microsoft SMTP Server (TLS) id 15.0.1236.3; Fri, 24 Jan 2020 15:31:24 +0000 Received: from EX13MTAUWB001.ant.amazon.com (10.43.161.207) by EX13D32EUC004.ant.amazon.com (10.43.164.121) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Fri, 24 Jan 2020 15:31:23 +0000 Received: from u2f063a87eabd5f.cbg10.amazon.com (10.125.106.135) by mail-relay.amazon.com (10.43.161.249) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Fri, 24 Jan 2020 15:31:20 +0000 From: Paul Durrant To: Date: Fri, 24 Jan 2020 15:31:01 +0000 Message-ID: <20200124153103.18321-6-pdurrant@amazon.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200124153103.18321-1-pdurrant@amazon.com> References: <20200124153103.18321-1-pdurrant@amazon.com> MIME-Version: 1.0 Precedence: Bulk Subject: [Xen-devel] [PATCH v4 5/7] mm: make MEMF_no_refcount pages safe to assign X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Stefano Stabellini , Julien Grall , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Paul Durrant , Ian Jackson , Volodymyr Babchuk , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Q3VycmVudGx5IGl0IGlzIHVuc2FmZSB0byBhc3NpZ24gYSBkb21oZWFwIHBhZ2UgYWxsb2NhdGVk IHdpdGgKTUVNRl9ub19yZWZjb3VudCB0byBhIGRvbWFpbiBiZWNhdXNlIHRoZSBkb21haW4ndCAn dG90X3BhZ2VzJyB3aWxsIG5vdApiZSBpbmNyZW1lbnRlZCwgYnV0IHdpbGwgYmUgZGVjcmVtZW50 IHdoZW4gdGhlIHBhZ2UgaXMgZnJlZWQgKHNpbmNlCmZyZWVfZG9taGVhcF9wYWdlcygpIGhhcyBu byB3YXkgb2YgdGVsbGluZyB0aGF0IHRoZSBpbmNyZW1lbnQgd2FzIHNraXBwZWQpLgoKVGhpcyBw YXRjaCBhbGxvY2F0ZXMgYSBuZXcgJ2NvdW50X2luZm8nIGJpdCBmb3IgYSBQR0Nfbm9fcmVmY291 bnQgZmxhZwp3aGljaCBpcyB0aGVuIHVzZWQgdG8gbWFyayBkb21oZWFwIHBhZ2VzIGFsbG9jYXRl ZCB3aXRoIE1FTUZfbm9fcmVmY291bnQuClRoaXMgdGhlbiBhbGxvd3MgZnJlZV9kb21oZWFwX3Bh Z2VzKCkgdG8gc2tpcCBkZWNyZW1lbnRpbmcgdG90X3BhZ2VzIHdoZW4KYXBwcm9wcmlhdGUgYW5k IGhlbmNlIG1ha2VzIHRoZSBwYWdlcyBzYWZlIHRvIGFzc2lnbi4KCk5PVEU6IFRoZSBwYXRjaCBz ZXRzIE1FTUZfbm9fcmVmY291bnQgZGlyZWN0bHkgaW4gYWxsb2NfZG9taGVhcF9wYWdlcygpCiAg ICAgIHJhdGhlciB0aGFuIGluIGFzc2lnbl9wYWdlcygpIGJlY2F1c2UgdGhlIGxhdHRlciBpcyBj YWxsZWQgd2l0aAogICAgICBNRU1GX25vX3JlZmNvdW50IGJ5IG1lbW9yeV9leGNoYW5nZSgpIGFz IGFuIG9wdGltaXphdGlvbiwgdG8gYXZvaWQKICAgICAgdG9vIG1hbnkgY2FsbHMgdG8gZG9tYWlu X2FkanVzdF90b3RfcGFnZXMoKSAod2hpY2ggYWNxdWlyZXMgYW5kCiAgICAgIHJlbGVhc2VzIHRo ZSBnbG9iYWwgJ2hlYXBfbG9jaycpLgoKU2lnbmVkLW9mZi1ieTogUGF1bCBEdXJyYW50IDxwZHVy cmFudEBhbWF6b24uY29tPgotLS0KQ2M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNp dHJpeC5jb20+CkNjOiBHZW9yZ2UgRHVubGFwIDxHZW9yZ2UuRHVubGFwQGV1LmNpdHJpeC5jb20+ CkNjOiBJYW4gSmFja3NvbiA8aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4KQ2M6IEphbiBCZXVs aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ2M6IEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+ CkNjOiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53aWxrQG9yYWNsZS5jb20+CkNjOiBT dGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+CkNjOiBXZWkgTGl1IDx3 bEB4ZW4ub3JnPgpDYzogVm9sb2R5bXlyIEJhYmNodWsgPFZvbG9keW15cl9CYWJjaHVrQGVwYW0u Y29tPgpDYzogIlJvZ2VyIFBhdSBNb25uw6kiIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KCnY0Ogog LSBOZXcgaW4gdjQKLS0tCiB4ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYyAgfCAzOSArKysrKysrKysr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS1hcm0vbW0uaCB8 ICA1ICsrKystCiB4ZW4vaW5jbHVkZS9hc20teDg2L21tLmggfCAgNyArKysrKy0tCiAzIGZpbGVz IGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3hlbi9jb21tb24vcGFnZV9hbGxvYy5jIGIveGVuL2NvbW1vbi9wYWdlX2FsbG9jLmMKaW5kZXgg OTE5YTI3MDU4Ny4uNjEwM2YxNGE0ZSAxMDA2NDQKLS0tIGEveGVuL2NvbW1vbi9wYWdlX2FsbG9j LmMKKysrIGIveGVuL2NvbW1vbi9wYWdlX2FsbG9jLmMKQEAgLTQ2MCw2ICs0NjAsOSBAQCB1bnNp Z25lZCBsb25nIGRvbWFpbl9hZGp1c3RfdG90X3BhZ2VzKHN0cnVjdCBkb21haW4gKmQsIGxvbmcg cGFnZXMpCiB7CiAgICAgbG9uZyBkb21fYmVmb3JlLCBkb21fYWZ0ZXIsIGRvbV9jbGFpbWVkLCBz eXNfYmVmb3JlLCBzeXNfYWZ0ZXI7CiAKKyAgICBpZiAoICFwYWdlcyApCisgICAgICAgIGdvdG8g b3V0OworCiAgICAgQVNTRVJUKHNwaW5faXNfbG9ja2VkKCZkLT5wYWdlX2FsbG9jX2xvY2spKTsK ICAgICBkLT50b3RfcGFnZXMgKz0gcGFnZXM7CiAKQEAgLTEzODksNiArMTM5Miw4IEBAIHN0YXRp YyB2b2lkIGZyZWVfaGVhcF9wYWdlcygKIAogICAgIGZvciAoIGkgPSAwOyBpIDwgKDEgPDwgb3Jk ZXIpOyBpKysgKQogICAgIHsKKyAgICAgICAgQVNTRVJUKCEocGdbaV0uY291bnRfaW5mbyAmIFBH Q19ub19yZWZjb3VudCkpOworCiAgICAgICAgIC8qCiAgICAgICAgICAqIENhbm5vdCBhc3N1bWUg dGhhdCBjb3VudF9pbmZvID09IDAsIGFzIHRoZXJlIGFyZSBzb21lIGNvcm5lciBjYXNlcwogICAg ICAgICAgKiB3aGVyZSBpdCBpc24ndCB0aGUgY2FzZSBhbmQgeWV0IGl0IGlzbid0IGEgYnVnOgpA QCAtMjMxNCwxMSArMjMxOSw2IEBAIHN0cnVjdCBwYWdlX2luZm8gKmFsbG9jX2RvbWhlYXBfcGFn ZXMoCiAKICAgICBpZiAoIG1lbWZsYWdzICYgTUVNRl9ub19vd25lciApCiAgICAgICAgIG1lbWZs YWdzIHw9IE1FTUZfbm9fcmVmY291bnQ7Ci0gICAgZWxzZSBpZiAoIChtZW1mbGFncyAmIE1FTUZf bm9fcmVmY291bnQpICYmIGQgKQotICAgIHsKLSAgICAgICAgQVNTRVJUKCEobWVtZmxhZ3MgJiBN RU1GX25vX3JlZmNvdW50KSk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KIAogICAgIGlm ICggIWRtYV9iaXRzaXplICkKICAgICAgICAgbWVtZmxhZ3MgJj0gfk1FTUZfbm9fZG1hOwpAQCAt MjMzMSwxMSArMjMzMSwyMCBAQCBzdHJ1Y3QgcGFnZV9pbmZvICphbGxvY19kb21oZWFwX3BhZ2Vz KAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbWZsYWdzLCBkKSkgPT0gTlVM TCkpICkKICAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKCBkICYmICEobWVtZmxhZ3Mg JiBNRU1GX25vX293bmVyKSAmJgotICAgICAgICAgYXNzaWduX3BhZ2VzKGQsIHBnLCBvcmRlciwg bWVtZmxhZ3MpICkKKyAgICBpZiAoIGQgJiYgIShtZW1mbGFncyAmIE1FTUZfbm9fb3duZXIpICkK ICAgICB7Ci0gICAgICAgIGZyZWVfaGVhcF9wYWdlcyhwZywgb3JkZXIsIG1lbWZsYWdzICYgTUVN Rl9ub19zY3J1Yik7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAoIGFzc2lnbl9w YWdlcyhkLCBwZywgb3JkZXIsIG1lbWZsYWdzKSApCisgICAgICAgIHsKKyAgICAgICAgICAgIGZy ZWVfaGVhcF9wYWdlcyhwZywgb3JkZXIsIG1lbWZsYWdzICYgTUVNRl9ub19zY3J1Yik7CisgICAg ICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBpZiAoIG1lbWZsYWdzICYg TUVNRl9ub19yZWZjb3VudCApCisgICAgICAgIHsKKyAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg aTsKKworICAgICAgICAgICAgZm9yICggaSA9IDA7IGkgPCAoMSA8PCBvcmRlcik7IGkrKyApCisg ICAgICAgICAgICAgICAgcGdbaV0uY291bnRfaW5mbyB8PSBQR0Nfbm9fcmVmY291bnQ7CisgICAg ICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gcGc7CkBAIC0yMzY4LDI0ICsyMzc3LDMyIEBAIHZv aWQgZnJlZV9kb21oZWFwX3BhZ2VzKHN0cnVjdCBwYWdlX2luZm8gKnBnLCB1bnNpZ25lZCBpbnQg b3JkZXIpCiAKICAgICAgICAgaWYgKCBsaWtlbHkoZCkgJiYgbGlrZWx5KGQgIT0gZG9tX2Nvdykg KQogICAgICAgICB7CisgICAgICAgICAgICBsb25nIHBhZ2VzID0gMDsKKwogICAgICAgICAgICAg LyogTkIuIE1heSByZWN1cnNpdmVseSBsb2NrIGZyb20gcmVsaW5xdWlzaF9tZW1vcnkoKS4gKi8K ICAgICAgICAgICAgIHNwaW5fbG9ja19yZWN1cnNpdmUoJmQtPnBhZ2VfYWxsb2NfbG9jayk7CiAK ICAgICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwgKDEgPDwgb3JkZXIpOyBpKysgKQogICAgICAg ICAgICAgeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgY291bnRfaW5mbyA9IHBnW2ld LmNvdW50X2luZm87CisKICAgICAgICAgICAgICAgICBpZiAoIHBnW2ldLnUuaW51c2UudHlwZV9p bmZvICYgUEdUX2NvdW50X21hc2sgKQogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg ICAgICAgcHJpbnRrKFhFTkxPR19FUlIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwZ1sl dV0gTUZOICUiUFJJX21mbiIgYz0lI2x4IG89JXUgdj0lI2x4IHQ9JSN4XG4iLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgaSwgbWZuX3gocGFnZV90b19tZm4ocGcgKyBpKSksCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICBwZ1tpXS5jb3VudF9pbmZvLCBwZ1tpXS52LmZyZWUub3JkZXIs CisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudF9pbmZvLCBwZ1tpXS52LmZyZWUub3Jk ZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ1tpXS51LmZyZWUudmFsLCBwZ1tpXS50 bGJmbHVzaF90aW1lc3RhbXApOwogICAgICAgICAgICAgICAgICAgICBCVUcoKTsKICAgICAgICAg ICAgICAgICB9CiAgICAgICAgICAgICAgICAgYXJjaF9mcmVlX2hlYXBfcGFnZShkLCAmcGdbaV0p OworICAgICAgICAgICAgICAgIGlmICggY291bnRfaW5mbyAmIFBHQ19ub19yZWZjb3VudCApCisg ICAgICAgICAgICAgICAgICAgIHBnW2ldLmNvdW50X2luZm8gJj0gflBHQ19ub19yZWZjb3VudDsK KyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHBhZ2VzLS07CiAgICAg ICAgICAgICB9CiAKLSAgICAgICAgICAgIGRyb3BfZG9tX3JlZiA9ICFkb21haW5fYWRqdXN0X3Rv dF9wYWdlcyhkLCAtKDEgPDwgb3JkZXIpKTsKKyAgICAgICAgICAgIGRyb3BfZG9tX3JlZiA9ICFk b21haW5fYWRqdXN0X3RvdF9wYWdlcyhkLCBwYWdlcyk7CiAKICAgICAgICAgICAgIHNwaW5fdW5s b2NrX3JlY3Vyc2l2ZSgmZC0+cGFnZV9hbGxvY19sb2NrKTsKIApkaWZmIC0tZ2l0IGEveGVuL2lu Y2x1ZGUvYXNtLWFybS9tbS5oIGIveGVuL2luY2x1ZGUvYXNtLWFybS9tbS5oCmluZGV4IDMzM2Vm ZDNhNjAuLjEwNzZjYzk3MTMgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vbW0uaAor KysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL21tLmgKQEAgLTExOSw5ICsxMTksMTIgQEAgc3RydWN0 IHBhZ2VfaW5mbwogI2RlZmluZSBQR0Nfc3RhdGVfb2ZmbGluZWQgUEdfbWFzaygyLCA5KQogI2Rl ZmluZSBQR0Nfc3RhdGVfZnJlZSAgICBQR19tYXNrKDMsIDkpCiAjZGVmaW5lIHBhZ2Vfc3RhdGVf aXMocGcsIHN0KSAoKChwZyktPmNvdW50X2luZm8mUEdDX3N0YXRlKSA9PSBQR0Nfc3RhdGVfIyNz dCkKKy8qIFBhZ2UgaXMgbm90IHJlZmVyZW5jZSBjb3VudGVkICovCisjZGVmaW5lIF9QR0Nfbm9f cmVmY291bnQgIFBHX3NoaWZ0KDEwKQorI2RlZmluZSBQR0Nfbm9fcmVmY291bnQgICBQR19tYXNr KDEsIDEwKQogCiAvKiBDb3VudCBvZiByZWZlcmVuY2VzIHRvIHRoaXMgZnJhbWUuICovCi0jZGVm aW5lIFBHQ19jb3VudF93aWR0aCAgIFBHX3NoaWZ0KDkpCisjZGVmaW5lIFBHQ19jb3VudF93aWR0 aCAgIFBHX3NoaWZ0KDEwKQogI2RlZmluZSBQR0NfY291bnRfbWFzayAgICAoKDFVTDw8UEdDX2Nv dW50X3dpZHRoKS0xKQogCiAvKgpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9tbS5o IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tbS5oCmluZGV4IDJjYTg4ODJhZDAuLmU3NWZlZWExNWUg MTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaAorKysgYi94ZW4vaW5jbHVkZS9h c20teDg2L21tLmgKQEAgLTc3LDkgKzc3LDEyIEBACiAjZGVmaW5lIFBHQ19zdGF0ZV9vZmZsaW5l ZCBQR19tYXNrKDIsIDkpCiAjZGVmaW5lIFBHQ19zdGF0ZV9mcmVlICAgIFBHX21hc2soMywgOSkK ICNkZWZpbmUgcGFnZV9zdGF0ZV9pcyhwZywgc3QpICgoKHBnKS0+Y291bnRfaW5mbyZQR0Nfc3Rh dGUpID09IFBHQ19zdGF0ZV8jI3N0KQorLyogUGFnZSBpcyBub3QgcmVmZXJlbmNlIGNvdW50ZWQg Ki8KKyNkZWZpbmUgX1BHQ19ub19yZWZjb3VudCAgUEdfc2hpZnQoMTApCisjZGVmaW5lIFBHQ19u b19yZWZjb3VudCAgIFBHX21hc2soMSwgMTApCiAKLSAvKiBDb3VudCBvZiByZWZlcmVuY2VzIHRv IHRoaXMgZnJhbWUuICovCi0jZGVmaW5lIFBHQ19jb3VudF93aWR0aCAgIFBHX3NoaWZ0KDkpCisv KiBDb3VudCBvZiByZWZlcmVuY2VzIHRvIHRoaXMgZnJhbWUuICovCisjZGVmaW5lIFBHQ19jb3Vu dF93aWR0aCAgIFBHX3NoaWZ0KDEwKQogI2RlZmluZSBQR0NfY291bnRfbWFzayAgICAoKDFVTDw8 UEdDX2NvdW50X3dpZHRoKS0xKQogCiAvKgotLSAKMi4yMC4xCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t YWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==