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.5 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, 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 DCDFFC2D0DB for ; Wed, 29 Jan 2020 20:21:16 +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 B0BE6206F0 for ; Wed, 29 Jan 2020 20:21:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="e0RLakOE" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B0BE6206F0 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=xen.org 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 1iwtph-0006b6-Si; Wed, 29 Jan 2020 20:21:05 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iwtpf-0006aO-Vq for xen-devel@lists.xenproject.org; Wed, 29 Jan 2020 20:21:04 +0000 X-Inumbo-ID: d32f214c-42d4-11ea-b211-bc764e2007e4 Received: from mail-wr1-x443.google.com (unknown [2a00:1450:4864:20::443]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id d32f214c-42d4-11ea-b211-bc764e2007e4; Wed, 29 Jan 2020 20:20:43 +0000 (UTC) Received: by mail-wr1-x443.google.com with SMTP id w15so1065997wru.4 for ; Wed, 29 Jan 2020 12:20:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cLJgFPr57iEIt0cWTwdp4rQGYu8h82jvo9pSTpYW02s=; b=e0RLakOEr6u+WdJ+xPbJGytMfwZaK5EX6iACn5XOShZ67X/KMgy6DWLkPeQj8bONdD +yN73gNSPX/5KtpQ4lP1ET3LxDSFgN2m1TY/eUDGtbYILBdgd6bThN9cM2Tjd7bSKw/D 4UzI4/tfAbWil+w2NuSd/+QWFuudwufKSGEpI0A1xX2LAtMGYnMuOvhiBEmb6MRQCgWB bxr3wtBhDSDvOyI82iO7Hd5E6weRdDUod4Cpnz3bEmOt5hfeYZJh2pyUPfqwO0d2VLe6 uhM+79n1E4ftRY5Bif38yiMHkn4OUExLMyLYTShejyC8e9fodRCjdoRV4pGXRDHXTMze O1+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=cLJgFPr57iEIt0cWTwdp4rQGYu8h82jvo9pSTpYW02s=; b=Q3wvXvBrQDdU5tPlV6sajEaVFiHKHIqiI0o5jP9w5fUEIc3w81y5MZK0gAWQv4Xby9 7juCZ7lLGFTXvk8h9KwB5nquCOGfCrZHtOMWpN7VqLOv9xQf3KeqvjX9x8f+uowRkiMW C5Qn+YcQiJn0j3lLtu88XIde5V/f/32ALfYLJCpukkigwBfvAIC0+GB3oB2KvaTnuWke fauKqJCNfR+erV0iJJvq+nhoywj/QspaDgOJ+5fpbBySRxWXqY+vrjq3U70U3RGl9SCo qeNURdVwXYREtOSzGyvxvvreCGNu9xEzCCV92R4OQKOxslcQcpxJD0xRT21t4+NndQC5 rTZA== X-Gm-Message-State: APjAAAWdYM2Y3N50cEjQIzwZTNCKvDtB4NI1FH4ngUoh8zhQnhrcRvOc daXCKXtzLR2oQODse1yRqDK5QA5yfzU= X-Google-Smtp-Source: APXvYqwc3+mcOV4ai1N9vaXa03fziJTBIHcCF8iOSF40iYcCHpvJ09bvqX2WV3BKUOR1KP9HJPWvzA== X-Received: by 2002:a5d:45c4:: with SMTP id b4mr561131wrs.303.1580329242595; Wed, 29 Jan 2020 12:20:42 -0800 (PST) Received: from localhost.localdomain (41.142.6.51.dyn.plus.net. [51.6.142.41]) by smtp.gmail.com with ESMTPSA id a22sm3564115wmd.20.2020.01.29.12.20.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Jan 2020 12:20:42 -0800 (PST) From: Wei Liu X-Google-Original-From: Wei Liu To: Xen Development List Date: Wed, 29 Jan 2020 20:20:27 +0000 Message-Id: <20200129202034.15052-6-liuwe@microsoft.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200129202034.15052-1-liuwe@microsoft.com> References: <20200129202034.15052-1-liuwe@microsoft.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH v5 05/12] x86: provide executable fixmap facility X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Wei Liu , Wei Liu , Konrad Rzeszutek Wilk , Andrew Cooper , Paul Durrant , Michael Kelley , Ross Lagerwall , =?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" VGhpcyBhbGxvd3MgdXMgdG8gc2V0IGFzaWRlIHNvbWUgYWRkcmVzcyBzcGFjZSBmb3IgZXhlY3V0 YWJsZSBtYXBwaW5nLgpUaGlzIGZpeGVkIG1hcCByYW5nZSBzdGFydHMgZnJvbSBYRU5fVklSVF9F TkQgc28gdGhhdCBpdCBpcyB3aXRoaW4gcmVhY2gKb2YgdGhlIC50ZXh0IHNlY3Rpb24uCgpTaGlm dCB0aGUgcGVyY3B1IHN0dWIgcmFuZ2UgYW5kIHNocmluayBsaXZlcGF0Y2ggcmFuZ2UgYWNjb3Jk aW5nbHkuCgpTaWduZWQtb2ZmLWJ5OiBXZWkgTGl1IDxsaXV3ZUBtaWNyb3NvZnQuY29tPgotLS0K djU6CjEuIGRyb3AgX192aXJ0X3RvX2ZpeF94CjIuIGFsc28gY2hlY2sgRklYKl9SRVNFUlZFRCBp biBfX3NldF9maXhtYXAqCjMuIGdlbmVyYXRlIGdsb2JhbCBzeW1ib2wgdG8gYmUgdXNlZCBpbiBs aW5rZXIgc2NyaXB0CjQuIGFkZHJlc3Mgb3RoZXIgbWlzYyBjb21tZW50cwotLS0KIHhlbi9hcmNo L3g4Ni9ib290L3g4Nl82NC5TICAgfCAxNSArKysrKysrKysrKystLS0KIHhlbi9hcmNoL3g4Ni9s aXZlcGF0Y2guYyAgICAgfCAgMyArKy0KIHhlbi9hcmNoL3g4Ni9tbS5jICAgICAgICAgICAgfCAx NSArKysrKysrKysrKysrKy0KIHhlbi9hcmNoL3g4Ni9zbXBib290LmMgICAgICAgfCAgMiArLQog eGVuL2FyY2gveDg2L3hlbi5sZHMuUyAgICAgICB8ICAzICsrKwogeGVuL2luY2x1ZGUvYXNtLXg4 Ni9jb25maWcuaCB8ICAyICstCiB4ZW4vaW5jbHVkZS9hc20teDg2L2ZpeG1hcC5oIHwgMjUgKysr KysrKysrKysrKysrKysrKysrKysrKwogNyBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCsp LCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9ib290L3g4Nl82NC5T IGIveGVuL2FyY2gveDg2L2Jvb3QveDg2XzY0LlMKaW5kZXggMWNiZjVhY2RmYi4uMzE0YTMyYTE5 ZiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2Jvb3QveDg2XzY0LlMKKysrIGIveGVuL2FyY2gv eDg2L2Jvb3QveDg2XzY0LlMKQEAgLTgxLDExICs4MSwyMCBAQCBHTE9CQUwobDJfZGlyZWN0bWFw KQogICAgICAgICAuc2l6ZSBsMl9kaXJlY3RtYXAsIC4gLSBsMl9kaXJlY3RtYXAKIAogLyoKLSAq IEwyIG1hcHBpbmcgdGhlIFhlbiB0ZXh0L2RhdGEvYnNzIHJlZ2lvbiwgY29uc3RydWN0ZWQgZHlu YW1pY2FsbHkuICBVc2VzIDF4Ci0gKiA0ayBwYWdlLgorICogTDIgbWFwcGluZyB0aGUgWGVuIHRl eHQvZGF0YS9ic3MgcmVnaW9uLCBjb25zdHJ1Y3RlZCBkeW5hbWljYWxseS4KKyAqIEV4ZWN1dGFi bGUgZml4bWFwIGlzIGhvb2tlZCB1cCBzdGF0aWNhbGx5LgorICogVXNlcyAxeCA0ayBwYWdlLgog ICovCiBHTE9CQUwobDJfeGVubWFwKQotICAgICAgICAuZmlsbCBMMl9QQUdFVEFCTEVfRU5UUklF UywgOCwgMAorICAgICAgICBpZHggPSAwCisgICAgICAgIC5yZXB0IEwyX1BBR0VUQUJMRV9FTlRS SUVTCisgICAgICAgIC5pZiBpZHggPT0gbDJfdGFibGVfb2Zmc2V0KEZJWEFERFJfWF9UT1AgLSAx KQorICAgICAgICAucXVhZCBzeW1fb2ZmcyhsMV9maXhtYXBfeCkgKyBfX1BBR0VfSFlQRVJWSVNP UgorICAgICAgICAuZWxzZQorICAgICAgICAucXVhZCAwCisgICAgICAgIC5lbmRpZgorICAgICAg ICBpZHggPSBpZHggKyAxCisgICAgICAgIC5lbmRyCiAgICAgICAgIC5zaXplIGwyX3hlbm1hcCwg LiAtIGwyX3hlbm1hcAogCiAvKiBMMiBtYXBwaW5nIHRoZSBmaXhtYXAuICBVc2VzIDF4IDRrIHBh Z2UuICovCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbGl2ZXBhdGNoLmMgYi94ZW4vYXJjaC94 ODYvbGl2ZXBhdGNoLmMKaW5kZXggMjc0OWNiYzVjZi4uNTEzYjBmMzg0MSAxMDA2NDQKLS0tIGEv eGVuL2FyY2gveDg2L2xpdmVwYXRjaC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9saXZlcGF0Y2guYwpA QCAtMTIsNiArMTIsNyBAQAogI2luY2x1ZGUgPHhlbi9saXZlcGF0Y2guaD4KICNpbmNsdWRlIDx4 ZW4vc2NoZWQuaD4KIAorI2luY2x1ZGUgPGFzbS9maXhtYXAuaD4KICNpbmNsdWRlIDxhc20vbm1p Lmg+CiAjaW5jbHVkZSA8YXNtL2xpdmVwYXRjaC5oPgogCkBAIC0zMTEsNyArMzEyLDcgQEAgdm9p ZCBfX2luaXQgYXJjaF9saXZlcGF0Y2hfaW5pdCh2b2lkKQogICAgIHZvaWQgKnN0YXJ0LCAqZW5k OwogCiAgICAgc3RhcnQgPSAodm9pZCAqKXhlbl92aXJ0X2VuZDsKLSAgICBlbmQgPSAodm9pZCAq KShYRU5fVklSVF9FTkQgLSBOUl9DUFVTICogUEFHRV9TSVpFKTsKKyAgICBlbmQgPSAodm9pZCAq KShYRU5fVklSVF9FTkQgLSBGSVhBRERSX1hfU0laRSAtIE5SX0NQVVMgKiBQQUdFX1NJWkUpOwog CiAgICAgQlVHX09OKGVuZCA8PSBzdGFydCk7CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9t bS5jIGIveGVuL2FyY2gveDg2L21tLmMKaW5kZXggZjUwYzA2NWFmMy4uNDRhYmRlMjRiMiAxMDA2 NDQKLS0tIGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTE1 Nyw2ICsxNTcsOCBAQAogLyogTWFwcGluZyBvZiB0aGUgZml4bWFwIHNwYWNlIG5lZWRlZCBlYXJs eS4gKi8KIGwxX3BnZW50cnlfdCBfX3NlY3Rpb24oIi5ic3MucGFnZV9hbGlnbmVkIikgX19hbGln bmVkKFBBR0VfU0laRSkKICAgICBsMV9maXhtYXBbTDFfUEFHRVRBQkxFX0VOVFJJRVNdOworbDFf cGdlbnRyeV90IF9fc2VjdGlvbigiLmJzcy5wYWdlX2FsaWduZWQiKSBfX2FsaWduZWQoUEFHRV9T SVpFKQorICAgIGwxX2ZpeG1hcF94W0wxX1BBR0VUQUJMRV9FTlRSSUVTXTsKIAogcGFkZHJfdCBf X3JlYWRfbW9zdGx5IG1lbV9ob3RwbHVnOwogCkBAIC01NzE4LDEwICs1NzIwLDIxIEBAIGludCBk ZXN0cm95X3hlbl9tYXBwaW5ncyh1bnNpZ25lZCBsb25nIHMsIHVuc2lnbmVkIGxvbmcgZSkKIHZv aWQgX19zZXRfZml4bWFwKAogICAgIGVudW0gZml4ZWRfYWRkcmVzc2VzIGlkeCwgdW5zaWduZWQg bG9uZyBtZm4sIHVuc2lnbmVkIGxvbmcgZmxhZ3MpCiB7Ci0gICAgQlVHX09OKGlkeCA+PSBfX2Vu ZF9vZl9maXhlZF9hZGRyZXNzZXMpOworICAgIEJVR19PTihpZHggPj0gX19lbmRfb2ZfZml4ZWRf YWRkcmVzc2VzIHx8IGlkeCA8PSBGSVhfUkVTRVJWRUQpOwogICAgIG1hcF9wYWdlc190b194ZW4o X19maXhfdG9fdmlydChpZHgpLCBfbWZuKG1mbiksIDEsIGZsYWdzKTsKIH0KIAordm9pZCBfX3Nl dF9maXhtYXBfeCgKKyAgICBlbnVtIGZpeGVkX2FkZHJlc3Nlc194IGlkeCwgdW5zaWduZWQgbG9u ZyBtZm4sIHVuc2lnbmVkIGxvbmcgZmxhZ3MpCit7CisgICAgQlVHX09OKGlkeCA+PSBfX2VuZF9v Zl9maXhlZF9hZGRyZXNzZXNfeCB8fCBpZHggPD0gRklYX1hfUkVTRVJWRUQpOworICAgIG1hcF9w YWdlc190b194ZW4oX19maXhfeF90b192aXJ0KGlkeCksIF9tZm4obWZuKSwgMSwgZmxhZ3MpOwor CisgICAgLyogR2VuZXJhdGUgYSBzeW1ib2wgdG8gYmUgdXNlZCBpbiBsaW5rZXIgc2NyaXB0ICov CisgICAgYXNtICggIi5lcXUgRklYQUREUl9YX1NJWkUsICVjMDsgLmdsb2JhbCBGSVhBRERSX1hf U0laRSIKKyAgICAgICAgICA6OiAiaSIgKF9fZW5kX29mX2ZpeGVkX2FkZHJlc3Nlc194IDw8IFBB R0VfU0hJRlQpICk7Cit9CisKIHZvaWQgKl9faW5pdCBhcmNoX3ZtYXBfdmlydF9lbmQodm9pZCkK IHsKICAgICByZXR1cm4gZml4X3RvX3ZpcnQoX19lbmRfb2ZfZml4ZWRfYWRkcmVzc2VzKTsKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9zbXBib290LmMgYi94ZW4vYXJjaC94ODYvc21wYm9vdC5j CmluZGV4IDkzYjg2YTA5ZTkuLmU4M2U0NTY0YTQgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9z bXBib290LmMKKysrIGIveGVuL2FyY2gveDg2L3NtcGJvb3QuYwpAQCAtNjQ0LDcgKzY0NCw3IEBA IHVuc2lnbmVkIGxvbmcgYWxsb2Nfc3R1Yl9wYWdlKHVuc2lnbmVkIGludCBjcHUsIHVuc2lnbmVk IGxvbmcgKm1mbikKICAgICAgICAgdW5tYXBfZG9tYWluX3BhZ2UobWVtc2V0KF9fbWFwX2RvbWFp bl9wYWdlKHBnKSwgMHhjYywgUEFHRV9TSVpFKSk7CiAgICAgfQogCi0gICAgc3R1Yl92YSA9IFhF Tl9WSVJUX0VORCAtIChjcHUgKyAxKSAqIFBBR0VfU0laRTsKKyAgICBzdHViX3ZhID0gWEVOX1ZJ UlRfRU5EIC0gRklYQUREUl9YX1NJWkUgLSAoY3B1ICsgMSkgKiBQQUdFX1NJWkU7CiAgICAgaWYg KCBtYXBfcGFnZXNfdG9feGVuKHN0dWJfdmEsIHBhZ2VfdG9fbWZuKHBnKSwgMSwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgUEFHRV9IWVBFUlZJU09SX1JYIHwgTUFQX1NNQUxMX1BBR0VTKSAp CiAgICAgewpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3hlbi5sZHMuUyBiL3hlbi9hcmNoL3g4 Ni94ZW4ubGRzLlMKaW5kZXggMDdjNjQ0OGRiYi4uOTdmOWMwNzg5MSAxMDA2NDQKLS0tIGEveGVu L2FyY2gveDg2L3hlbi5sZHMuUworKysgYi94ZW4vYXJjaC94ODYveGVuLmxkcy5TCkBAIC0zLDYg KzMsOCBAQAogCiAjaW5jbHVkZSA8eGVuL2NhY2hlLmg+CiAjaW5jbHVkZSA8eGVuL2xpYi5oPgor CisjaW5jbHVkZSA8YXNtL2ZpeG1hcC5oPgogI2luY2x1ZGUgPGFzbS9wYWdlLmg+CiAjdW5kZWYg RU5UUlkKICN1bmRlZiBBTElHTgpAQCAtMzUzLDYgKzM1NSw3IEBAIFNFQ1RJT05TCiB9CiAKIEFT U0VSVChfXzJNX3J3ZGF0YV9lbmQgPD0gWEVOX1ZJUlRfRU5EIC0gWEVOX1ZJUlRfU1RBUlQgKyBf X1hFTl9WSVJUX1NUQVJUIC0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgRklYQUREUl9YX1NJ WkUgLQogICAgICAgICAgICAgICAgICAgICAgICAgICBESVZfUk9VTkRfVVAoTlJfQ1BVUywgU1RV QlNfUEVSX1BBR0UpICogUEFHRV9TSVpFLAogICAgICAgICJYZW4gaW1hZ2Ugb3ZlcmxhcHMgc3R1 YnMgYXJlYSIpCiAKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY29uZmlnLmggYi94 ZW4vaW5jbHVkZS9hc20teDg2L2NvbmZpZy5oCmluZGV4IGQwY2ZiYjcwYTguLmEzNDA1M2M0YzAg MTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY29uZmlnLmgKKysrIGIveGVuL2luY2x1 ZGUvYXNtLXg4Ni9jb25maWcuaApAQCAtMjE4LDcgKzIxOCw3IEBAIGV4dGVybiB1bnNpZ25lZCBj aGFyIGJvb3RfZWRpZF9pbmZvWzEyOF07CiAvKiBTbG90IDI2MTogaGlnaCByZWFkLW9ubHkgY29t cGF0IG1hY2hpbmUtdG8tcGh5cyBjb252ZXJzaW9uIHRhYmxlICgxR0IpLiAqLwogI2RlZmluZSBI SVJPX0NPTVBBVF9NUFRfVklSVF9TVEFSVCBSRFdSX0NPTVBBVF9NUFRfVklSVF9FTkQKICNkZWZp bmUgSElST19DT01QQVRfTVBUX1ZJUlRfRU5EIChISVJPX0NPTVBBVF9NUFRfVklSVF9TVEFSVCAr IEdCKDEpKQotLyogU2xvdCAyNjE6IHhlbiB0ZXh0LCBzdGF0aWMgZGF0YSBhbmQgYnNzICgxR0Ip LiAqLworLyogU2xvdCAyNjE6IHhlbiB0ZXh0LCBzdGF0aWMgZGF0YSwgYnNzLCBwZXItY3B1IHN0 dWJzIGFuZCBleGVjdXRhYmxlIGZpeG1hcCAoMUdCKS4gKi8KICNkZWZpbmUgWEVOX1ZJUlRfU1RB UlQgICAgICAgICAgKEhJUk9fQ09NUEFUX01QVF9WSVJUX0VORCkKICNkZWZpbmUgWEVOX1ZJUlRf RU5EICAgICAgICAgICAgKFhFTl9WSVJUX1NUQVJUICsgR0IoMSkpCiAKZGlmZiAtLWdpdCBhL3hl bi9pbmNsdWRlL2FzbS14ODYvZml4bWFwLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L2ZpeG1hcC5o CmluZGV4IDlmYjJmNDc5NDYuLjgwOTQ1NDZiNzUgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2Fz bS14ODYvZml4bWFwLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9maXhtYXAuaApAQCAtMTUs NiArMTUsNyBAQAogI2luY2x1ZGUgPGFzbS9wYWdlLmg+CiAKICNkZWZpbmUgRklYQUREUl9UT1Ag KFZNQVBfVklSVF9FTkQgLSBQQUdFX1NJWkUpCisjZGVmaW5lIEZJWEFERFJfWF9UT1AgKFhFTl9W SVJUX0VORCAtIFBBR0VfU0laRSkKIAogI2lmbmRlZiBfX0FTU0VNQkxZX18KIApAQCAtODksNiAr OTAsMzAgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHZpcnRfdG9fZml4KGNvbnN0IHVu c2lnbmVkIGxvbmcgdmFkZHIpCiAgICAgcmV0dXJuIF9fdmlydF90b19maXgodmFkZHIpOwogfQog CitlbnVtIGZpeGVkX2FkZHJlc3Nlc194IHsKKyAgICAvKiBJbmRleCAwIGlzIHJlc2VydmVkIHNp bmNlIGZpeF94X3RvX3ZpcnQoMCkgPT0gRklYQUREUl9YX1RPUC4gKi8KKyAgICBGSVhfWF9SRVNF UlZFRCwKKyNpZmRlZiBDT05GSUdfSFlQRVJWX0dVRVNUCisgICAgRklYX1hfSFlQRVJWX0hDQUxM LAorI2VuZGlmCisgICAgX19lbmRfb2ZfZml4ZWRfYWRkcmVzc2VzX3gKK307CisKKyNkZWZpbmUg RklYQUREUl9YX1NJWkUgIChfX2VuZF9vZl9maXhlZF9hZGRyZXNzZXNfeCA8PCBQQUdFX1NISUZU KQorI2RlZmluZSBGSVhBRERSX1hfU1RBUlQgKEZJWEFERFJfWF9UT1AgLSBGSVhBRERSX1hfU0la RSkKKworZXh0ZXJuIHZvaWQgX19zZXRfZml4bWFwX3goCisgICAgZW51bSBmaXhlZF9hZGRyZXNz ZXNfeCBpZHgsIHVuc2lnbmVkIGxvbmcgbWZuLCB1bnNpZ25lZCBsb25nIGZsYWdzKTsKKworI2Rl ZmluZSBzZXRfZml4bWFwX3goaWR4LCBwaHlzKSBcCisgICAgX19zZXRfZml4bWFwX3goaWR4LCAo cGh5cyk+PlBBR0VfU0hJRlQsIFBBR0VfSFlQRVJWSVNPUl9SWCB8IE1BUF9TTUFMTF9QQUdFUykK KworI2RlZmluZSBjbGVhcl9maXhtYXBfeChpZHgpIF9fc2V0X2ZpeG1hcF94KGlkeCwgMCwgMCkK KworI2RlZmluZSBfX2ZpeF94X3RvX3ZpcnQoeCkgKEZJWEFERFJfWF9UT1AgLSAoKHgpIDw8IFBB R0VfU0hJRlQpKQorCisjZGVmaW5lIGZpeF94X3RvX3ZpcnQoeCkgICAoKHZvaWQgKilfX2ZpeF94 X3RvX3ZpcnQoeCkpCisKICNlbmRpZiAvKiBfX0FTU0VNQkxZX18gKi8KIAogI2VuZGlmCi0tIAoy LjIwLjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs