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 Received: from lists.lttng.org (lists.lttng.org [167.114.26.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CE460C76195 for ; Tue, 21 Mar 2023 13:31:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=lists.lttng.org; s=default; t=1679405492; bh=MyzdmpzTfB61FuVoKk+GwJHsTPeewu+85K0oA5XF9rU=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=mQx+v6Md9DRL6UW78vFdX99UpR+UudwcbPIXEsbUa0hYJatHw1YcaUcD1HBBG6GtQ p8z+v+VxFeWTmTO2un3MXdYsFPRnTxgc1C+fSjWLiMfInrDXhTWW4YKrrzd3s1M0k4 SbIPCRxkpX1ZliP6pVCRxpDXz08nI+OJ5u3UERTBAGr1q40uGb2gkhwzmZoIke5lC2 lovNB+kOA0Kiij1YlDGfYMd6jujxDweN9qvnwxIqrS0yx/SxulkP9bhf5r3bl7jqA0 XhDzJPGNYwdFz5I8G6PVd104ezXjGDnOiyhJvtz1UNByjjyIgMsK4EyimCmFfD5yMY 34moQMSNR9HWw== Received: from lists-lttng01.efficios.com (localhost [IPv6:::1]) by lists.lttng.org (Postfix) with ESMTP id 4PgsvR6ykzz2Gsr; Tue, 21 Mar 2023 09:31:31 -0400 (EDT) Received: from wout1-smtp.messagingengine.com (wout1-smtp.messagingengine.com [64.147.123.24]) by lists.lttng.org (Postfix) with ESMTPS id 4PgsvN6Lwqz2HGp for ; Tue, 21 Mar 2023 09:31:28 -0400 (EDT) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.west.internal (Postfix) with ESMTP id D8D623200975; Tue, 21 Mar 2023 09:31:27 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Tue, 21 Mar 2023 09:31:28 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrvdegtddghedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvfevufffkffojghfgggtgfesth ekredtredtjeenucfhrhhomhepqfhnughrvghjucfuuhhrupcuoehonhgurhgvjhesshhu rhihrdhorhhgqeenucggtffrrghtthgvrhhnpeelfffhkeehffdttdffudefudelgeettd dtvdetvdehuefhgefgjedvuddviedtffenucevlhhushhtvghrufhiiigvpedtnecurfgr rhgrmhepmhgrihhlfhhrohhmpehonhgurhgvjhesshhurhihrdhorhhg X-ME-Proxy: Feedback-ID: ida81469e:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 21 Mar 2023 09:31:26 -0400 (EDT) To: lttng-dev@lists.lttng.org Date: Tue, 21 Mar 2023 14:31:00 +0100 Message-Id: <20230321133102.1054238-6-ondrej@sury.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230321133102.1054238-1-ondrej@sury.org> References: <20230321133102.1054238-1-ondrej@sury.org> MIME-Version: 1.0 Subject: [lttng-dev] [PATCH 5/7] Replace the arch-specific memory barriers with __atomic builtins X-BeenThere: lttng-dev@lists.lttng.org X-Mailman-Version: 2.1.39 Precedence: list List-Id: LTTng development list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: =?utf-8?q?Ond=C5=99ej_Sur=C3=BD_via_lttng-dev?= Reply-To: =?UTF-8?q?Ond=C5=99ej=20Sur=C3=BD?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" SW5zdGVhZCBvZiBhIGN1c3RvbSBjb2RlLCB1c2UgdGhlIF9fYXRvbWljX3RocmVhZF9mZW5jZSgp IGJ1aWx0aW4gdG8KaW1wbGVtZW50IHRoZSBjbW1fbWIoKSwgY21tX3JtYigpLCBjbW1fd21iKCks IGNtbV9zbXBfbWIoKSwKY21tX3NtcF9ybWIoKSwgYW5kIGNtbV9zbXBfd21iKCkgb24gYWxsIGFy Y2hpdGVjdHVyZXMsIGFuZApjbW1fcmVhZF9iYXJyaWVyX2RlcGVuZHMoKSBvbiBhbHBoYSAob3Ro ZXJ3aXNlIGl0J3Mgc3RpbGwgbm8tb3ApLgoKZmFtaWx5IG9mIGZ1bmN0aW9ucwoKU2lnbmVkLW9m Zi1ieTogT25kxZllaiBTdXLDvSA8b25kcmVqQHN1cnkub3JnPgotLS0KIGluY2x1ZGUvdXJjdS9h cmNoL2FscGhhLmggICB8ICA2ICsrKy0tLQogaW5jbHVkZS91cmN1L2FyY2gvYXJtLmggICAgIHwg MTQgLS0tLS0tLS0tLS0tLQogaW5jbHVkZS91cmN1L2FyY2gvZ2VuZXJpYy5oIHwgIDYgKysrLS0t CiBpbmNsdWRlL3VyY3UvYXJjaC9taXBzLmggICAgfCAgNiAtLS0tLS0KIGluY2x1ZGUvdXJjdS9h cmNoL25pb3MyLmggICB8ICAyIC0tCiBpbmNsdWRlL3VyY3UvYXJjaC9wcGMuaCAgICAgfCAyNSAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlL3VyY3UvYXJjaC9zMzkwLmggICAgfCAgMiAt LQogaW5jbHVkZS91cmN1L2FyY2gvc3BhcmM2NC5oIHwgMTMgLS0tLS0tLS0tLS0tCiBpbmNsdWRl L3VyY3UvYXJjaC94ODYuaCAgICAgfCA0MiArKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCiA5IGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTA3IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdXJjdS9hcmNoL2FscGhhLmggYi9pbmNsdWRlL3VyY3Uv YXJjaC9hbHBoYS5oCmluZGV4IGRjMzNlMjguLjYxNjg3YzcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUv dXJjdS9hcmNoL2FscGhhLmgKKysrIGIvaW5jbHVkZS91cmN1L2FyY2gvYWxwaGEuaApAQCAtMjks OSArMjksOSBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAotI2RlZmluZSBjbW1fbWIoKQkJCV9f YXNtX18gX192b2xhdGlsZV9fICgibWIiOjo6Im1lbW9yeSIpCi0jZGVmaW5lIGNtbV93bWIoKQkJ CV9fYXNtX18gX192b2xhdGlsZV9fICgid21iIjo6OiJtZW1vcnkiKQotI2RlZmluZSBjbW1fcmVh ZF9iYXJyaWVyX2RlcGVuZHMoKQlfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIm1iIjo6OiJtZW1vcnki KQorI2lmbmRlZiBjbW1fcmVhZF9iYXJyaWVyX2RlcGVuZHMKKyNkZWZpbmUgY21tX3JlYWRfYmFy cmllcl9kZXBlbmRzKCkJX19hdG9taWNfdGhyZWFkX2ZlbmNlKF9fQVRPTUlDX0NPTlNVTUUpCisj ZW5kaWYKIAogLyoKICAqIE9uIExpbnV4LCBkZWZpbmUgdGhlIG1lbWJhcnJpZXIgc3lzdGVtIGNh bGwgbnVtYmVyIGlmIG5vdCB5ZXQgYXZhaWxhYmxlIGluCmRpZmYgLS1naXQgYS9pbmNsdWRlL3Vy Y3UvYXJjaC9hcm0uaCBiL2luY2x1ZGUvdXJjdS9hcmNoL2FybS5oCmluZGV4IDU0Y2E0ZmEuLmIz NjcxZGMgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdXJjdS9hcmNoL2FybS5oCisrKyBiL2luY2x1ZGUv dXJjdS9hcmNoL2FybS5oCkBAIC0zOSwyMCArMzksNiBAQCBleHRlcm4gIkMiIHsKIC8qIEZvciBi YWNrd2FyZHMgY29tcGF0LiAqLwogI2RlZmluZSBDT05GSUdfUkNVX0FSTV9IQVZFX0RNQiAxCiAK LS8qCi0gKiBJc3N1ZXMgZnVsbCBzeXN0ZW0gRE1CIG9wZXJhdGlvbi4KLSAqLwotI2RlZmluZSBj bW1fbWIoKQlfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImRtYiBzeSI6OjoibWVtb3J5IikKLSNkZWZp bmUgY21tX3JtYigpCV9fYXNtX18gX192b2xhdGlsZV9fICgiZG1iIHN5Ijo6OiJtZW1vcnkiKQot I2RlZmluZSBjbW1fd21iKCkJX19hc21fXyBfX3ZvbGF0aWxlX18gKCJkbWIgc3kiOjo6Im1lbW9y eSIpCi0KLS8qCi0gKiBJc3N1ZXMgRE1CIG9wZXJhdGlvbiBvbmx5IHRvIHRoZSBpbm5lciBzaGFy ZWFibGUgZG9tYWluLgotICovCi0jZGVmaW5lIGNtbV9zbXBfbWIoKQlfX2FzbV9fIF9fdm9sYXRp bGVfXyAoImRtYiBpc2giOjo6Im1lbW9yeSIpCi0jZGVmaW5lIGNtbV9zbXBfcm1iKCkJX19hc21f XyBfX3ZvbGF0aWxlX18gKCJkbWIgaXNoIjo6OiJtZW1vcnkiKQotI2RlZmluZSBjbW1fc21wX3dt YigpCV9fYXNtX18gX192b2xhdGlsZV9fICgiZG1iIGlzaCI6OjoibWVtb3J5IikKLQogI2VuZGlm IC8qIFVSQ1VfQVJDSF9BUk1WNyAqLwogCiAjaW5jbHVkZSA8c3RkbGliLmg+CmRpZmYgLS1naXQg YS9pbmNsdWRlL3VyY3UvYXJjaC9nZW5lcmljLmggYi9pbmNsdWRlL3VyY3UvYXJjaC9nZW5lcmlj LmgKaW5kZXggYmU2ZTQxZS4uMjcxNTE2MiAxMDA2NDQKLS0tIGEvaW5jbHVkZS91cmN1L2FyY2gv Z2VuZXJpYy5oCisrKyBiL2luY2x1ZGUvdXJjdS9hcmNoL2dlbmVyaWMuaApAQCAtNDQsMTUgKzQ0 LDE1IEBAIGV4dGVybiAiQyIgewogICovCiAKICNpZm5kZWYgY21tX21iCi0jZGVmaW5lIGNtbV9t YigpICAgIF9fc3luY19zeW5jaHJvbml6ZSgpCisjZGVmaW5lIGNtbV9tYigpCV9fYXRvbWljX3Ro cmVhZF9mZW5jZShfX0FUT01JQ19TRVFfQ1NUKQogI2VuZGlmCiAKICNpZm5kZWYgY21tX3JtYgot I2RlZmluZSBjbW1fcm1iKCkJY21tX21iKCkKKyNkZWZpbmUgY21tX3JtYigpCV9fYXRvbWljX3Ro cmVhZF9mZW5jZShfX0FUT01JQ19BQ1FVSVJFKQogI2VuZGlmCiAKICNpZm5kZWYgY21tX3dtYgot I2RlZmluZSBjbW1fd21iKCkJY21tX21iKCkKKyNkZWZpbmUgY21tX3dtYigpCV9fYXRvbWljX3Ro cmVhZF9mZW5jZShfX0FUT01JQ19SRUxFQVNFKQogI2VuZGlmCiAKICNkZWZpbmUgY21tX21jKCkJ Y21tX2JhcnJpZXIoKQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91cmN1L2FyY2gvbWlwcy5oIGIvaW5j bHVkZS91cmN1L2FyY2gvbWlwcy5oCmluZGV4IGVhNWI3ZTkuLmZmZTY1YzAgMTAwNjQ0Ci0tLSBh L2luY2x1ZGUvdXJjdS9hcmNoL21pcHMuaAorKysgYi9pbmNsdWRlL3VyY3UvYXJjaC9taXBzLmgK QEAgLTMwLDEyICszMCw2IEBACiBleHRlcm4gIkMiIHsKICNlbmRpZgogCi0jZGVmaW5lIGNtbV9t YigpCQkJX19hc21fXyBfX3ZvbGF0aWxlX18gKAkJICAgIFwKLQkJCQkJIgkuc2V0CW1pcHMyCQlc biIgXAotCQkJCQkiCXN5bmMJCQlcbiIgXAotCQkJCQkiCS5zZXQJbWlwczAJCVxuIiBcCi0JCQkJ CTo6OiJtZW1vcnkiKQotCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0 IGEvaW5jbHVkZS91cmN1L2FyY2gvbmlvczIuaCBiL2luY2x1ZGUvdXJjdS9hcmNoL25pb3MyLmgK aW5kZXggYjRmM2U1MC4uY2Q2YmRiOCAxMDA2NDQKLS0tIGEvaW5jbHVkZS91cmN1L2FyY2gvbmlv czIuaAorKysgYi9pbmNsdWRlL3VyY3UvYXJjaC9uaW9zMi5oCkBAIC0yOSw4ICsyOSw2IEBACiBl eHRlcm4gIkMiIHsKICNlbmRpZgogCi0jZGVmaW5lIGNtbV9tYigpCWNtbV9iYXJyaWVyKCkKLQog I2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdXJjdS9h cmNoL3BwYy5oIGIvaW5jbHVkZS91cmN1L2FyY2gvcHBjLmgKaW5kZXggNzkxNTI5ZS4uNjE4Zjc5 YyAxMDA2NDQKLS0tIGEvaW5jbHVkZS91cmN1L2FyY2gvcHBjLmgKKysrIGIvaW5jbHVkZS91cmN1 L2FyY2gvcHBjLmgKQEAgLTM0LDMxICszNCw2IEBAIGV4dGVybiAiQyIgewogLyogSW5jbHVkZSBz aXplIG9mIFBPV0VSNSsgTDMgY2FjaGUgbGluZXM6IDI1NiBieXRlcyAqLwogI2RlZmluZSBDQUFf Q0FDSEVfTElORV9TSVpFCTI1NgogCi0jaWZkZWYgX19OT19MV1NZTkNfXwotI2RlZmluZSBMV1NZ TkNfT1BDT0RFCSJzeW5jXG4iCi0jZWxzZQotI2RlZmluZSBMV1NZTkNfT1BDT0RFCSJsd3N5bmNc biIKLSNlbmRpZgotCi0vKgotICogVXNlIHN5bmMgZm9yIGFsbCBjbW1fbWIvcm1iL3dtYiBiYXJy aWVycyBiZWNhdXNlIGx3c3luYyBkb2VzIG5vdAotICogcHJlc2VydmUgb3JkZXJpbmcgb2YgY2Fj aGVhYmxlIHZzLiBub24tY2FjaGVhYmxlIGFjY2Vzc2VzLCBzbyBpdAotICogc2hvdWxkIG5vdCBi ZSB1c2VkIHRvIG9yZGVyIHdpdGggcmVzcGVjdCB0byBNTUlPIG9wZXJhdGlvbnMuICBBbgotICog ZWllaW8rbHdzeW5jIHBhaXIgaXMgYWxzbyBub3QgZW5vdWdoIGZvciBjbW1fcm1iLCBiZWNhdXNl IGl0IHdpbGwKLSAqIG9yZGVyIGNhY2hlYWJsZSBhbmQgbm9uLWNhY2hlYWJsZSBtZW1vcnkgb3Bl cmF0aW9ucyBzZXBhcmF0ZWx5LS0taS5lLgotICogbm90IHRoZSBsYXR0ZXIgYWdhaW5zdCB0aGUg Zm9ybWVyLgotICovCi0jZGVmaW5lIGNtbV9tYigpICAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxl X18gKCJzeW5jIjo6OiJtZW1vcnkiKQotCi0vKgotICogbHdzeW5jIG9yZGVycyBsb2FkcyBpbiBj YWNoZWFibGUgbWVtb3J5IHdpdGggcmVzcGVjdCB0byBvdGhlciBsb2FkcywKLSAqIGFuZCBzdG9y ZXMgaW4gY2FjaGVhYmxlIG1lbW9yeSB3aXRoIHJlc3BlY3QgdG8gb3RoZXIgc3RvcmVzLgotICog VGhlcmVmb3JlLCB1c2UgaXQgZm9yIGJhcnJpZXJzIG9yZGVyaW5nIGFjY2Vzc2VzIHRvIGNhY2hl YWJsZSBtZW1vcnkKLSAqIG9ubHkuCi0gKi8KLSNkZWZpbmUgY21tX3NtcF9ybWIoKSAgICBfX2Fz bV9fIF9fdm9sYXRpbGVfXyAoTFdTWU5DX09QQ09ERTo6OiJtZW1vcnkiKQotI2RlZmluZSBjbW1f c21wX3dtYigpICAgIF9fYXNtX18gX192b2xhdGlsZV9fIChMV1NZTkNfT1BDT0RFOjo6Im1lbW9y eSIpCi0KICNkZWZpbmUgbWZ0YmwoKQkJCQkJCVwKIAlfX2V4dGVuc2lvbl9fCQkJCQlcCiAJKHsg CQkJCQkJXApkaWZmIC0tZ2l0IGEvaW5jbHVkZS91cmN1L2FyY2gvczM5MC5oIGIvaW5jbHVkZS91 cmN1L2FyY2gvczM5MC5oCmluZGV4IDY3NDYxYjQuLmMyMmZkZjkgMTAwNjQ0Ci0tLSBhL2luY2x1 ZGUvdXJjdS9hcmNoL3MzOTAuaAorKysgYi9pbmNsdWRlL3VyY3UvYXJjaC9zMzkwLmgKQEAgLTM5 LDggKzM5LDYgQEAgZXh0ZXJuICJDIiB7CiAKICNkZWZpbmUgQ0FBX0NBQ0hFX0xJTkVfU0laRQkx MjgKIAotI2RlZmluZSBjbW1fbWIoKSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygiYmNyIDE1LDAi IDogOiA6ICJtZW1vcnkiKQotCiAjZGVmaW5lIEhBU19DQUFfR0VUX0NZQ0xFUwogCiB0eXBlZGVm IHVpbnQ2NF90IGNhYV9jeWNsZXNfdDsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdXJjdS9hcmNoL3Nw YXJjNjQuaCBiL2luY2x1ZGUvdXJjdS9hcmNoL3NwYXJjNjQuaAppbmRleCAxZmY0MGY1Li5iNGUy NWNhIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VyY3UvYXJjaC9zcGFyYzY0LmgKKysrIGIvaW5jbHVk ZS91cmN1L2FyY2gvc3BhcmM2NC5oCkBAIC00MCwxOSArNDAsNiBAQCBleHRlcm4gIkMiIHsKIAog I2RlZmluZSBDQUFfQ0FDSEVfTElORV9TSVpFCTI1NgogCi0vKgotICogSW5zcGlyZWQgZnJvbSB0 aGUgTGludXgga2VybmVsLiBXb3JrYXJvdW5kIFNwaXRmaXJlIGJ1ZyAjNTEuCi0gKi8KLSNkZWZp bmUgbWVtYmFyX3NhZmUodHlwZSkJCQlcCi1fX2FzbV9fIF9fdm9sYXRpbGVfXygiYmEscHQgJSV4 Y2MsIDFmXG5cdCIJXAotCQkgICAgICJtZW1iYXIgIiB0eXBlICJcbiIJXAotCQkgICAgICIxOlxu IgkJCVwKLQkJICAgICA6IDogOiAibWVtb3J5IikKLQotI2RlZmluZSBjbW1fbWIoKQltZW1iYXJf c2FmZSgiI0xvYWRMb2FkIHwgI0xvYWRTdG9yZSB8ICNTdG9yZVN0b3JlIHwgI1N0b3JlTG9hZCIp Ci0jZGVmaW5lIGNtbV9ybWIoKQltZW1iYXJfc2FmZSgiI0xvYWRMb2FkIikKLSNkZWZpbmUgY21t X3dtYigpCW1lbWJhcl9zYWZlKCIjU3RvcmVTdG9yZSIpCi0KICNpZmRlZiBfX2NwbHVzcGx1cwog fQogI2VuZGlmCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VyY3UvYXJjaC94ODYuaCBiL2luY2x1ZGUv dXJjdS9hcmNoL3g4Ni5oCmluZGV4IDc0NGY5ZjkuLmFmNDQ4N2QgMTAwNjQ0Ci0tLSBhL2luY2x1 ZGUvdXJjdS9hcmNoL3g4Ni5oCisrKyBiL2luY2x1ZGUvdXJjdS9hcmNoL3g4Ni5oCkBAIC00Niw0 NCArNDYsOCBAQCBleHRlcm4gIkMiIHsKIC8qIEZvciBiYWNrd2FyZHMgY29tcGF0ICovCiAjZGVm aW5lIENPTkZJR19SQ1VfSEFWRV9GRU5DRSAxCiAKLSNkZWZpbmUgY21tX21iKCkgICAgX19hc21f XyBfX3ZvbGF0aWxlX18gKCJtZmVuY2UiOjo6Im1lbW9yeSIpCi0KLS8qCi0gKiBEZWZpbmUgY21t X3JtYi9jbW1fd21iIHRvICJzdHJpY3QiIGJhcnJpZXJzIHRoYXQgbWF5IGJlIG5lZWRlZCB3aGVu Ci0gKiB1c2luZyBTU0Ugb3Igd29ya2luZyB3aXRoIEkvTyBhcmVhcy4gIGNtbV9zbXBfcm1iL2Nt bV9zbXBfd21iIGFyZQotICogb25seSBjb21waWxlciBiYXJyaWVycywgd2hpY2ggaXMgZW5vdWdo IGZvciBnZW5lcmFsIHVzZS4KLSAqLwotI2RlZmluZSBjbW1fcm1iKCkgICAgIF9fYXNtX18gX192 b2xhdGlsZV9fICgibGZlbmNlIjo6OiJtZW1vcnkiKQotI2RlZmluZSBjbW1fd21iKCkgICAgIF9f YXNtX18gX192b2xhdGlsZV9fICgic2ZlbmNlIjo6OiAibWVtb3J5IikKLSNkZWZpbmUgY21tX3Nt cF9ybWIoKSBjbW1fYmFycmllcigpCi0jZGVmaW5lIGNtbV9zbXBfd21iKCkgY21tX2JhcnJpZXIo KQotCi0jZWxzZQotCi0vKgotICogV2UgbGVhdmUgc21wX3JtYi9zbXBfd21iIGFzIGZ1bGwgYmFy cmllcnMgZm9yIHByb2Nlc3NvcnMgdGhhdCBkbyBub3QgaGF2ZQotICogZmVuY2UgaW5zdHJ1Y3Rp b25zLgotICoKLSAqIEFuIGVtcHR5IGNtbV9zbXBfcm1iKCkgbWF5IG5vdCBiZSBlbm91Z2ggb24g b2xkIFBlbnRpdW1Qcm8gbXVsdGlwcm9jZXNzb3IKLSAqIHN5c3RlbXMsIGR1ZSB0byBhbiBlcnJh dHVtLiAgVGhlIExpbnV4IGtlcm5lbCBzYXlzIHRoYXQgIkV2ZW4gZGlzdHJvCi0gKiBrZXJuZWxz IHNob3VsZCB0aGluayB0d2ljZSBiZWZvcmUgZW5hYmxpbmcgdGhpcyIsIGJ1dCBmb3Igbm93IGxl dCdzCi0gKiBiZSBjb25zZXJ2YXRpdmUgYW5kIGxlYXZlIHRoZSBmdWxsIGJhcnJpZXIgb24gMzIt Yml0IHByb2Nlc3NvcnMuICBBbHNvLAotICogSURUIFdpbkNoaXAgc3VwcG9ydHMgd2VhayBzdG9y ZSBvcmRlcmluZywgYW5kIHRoZSBrZXJuZWwgbWF5IGVuYWJsZSBpdAotICogdW5kZXIgb3VyIGZl ZXQ7IGNtbV9zbXBfd21iKCkgY2Vhc2VzIHRvIGJlIGEgbm9wIGZvciB0aGVzZSBwcm9jZXNzb3Jz LgotICovCi0jaWYgKENBQV9CSVRTX1BFUl9MT05HID09IDMyKQotI2RlZmluZSBjbW1fbWIoKSAg ICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImxvY2s7IGFkZGwgJDAsMCglJWVzcCkiOjo6Im1lbW9y eSIpCi0jZGVmaW5lIGNtbV9ybWIoKSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImxvY2s7IGFk ZGwgJDAsMCglJWVzcCkiOjo6Im1lbW9yeSIpCi0jZGVmaW5lIGNtbV93bWIoKSAgICBfX2FzbV9f IF9fdm9sYXRpbGVfXyAoImxvY2s7IGFkZGwgJDAsMCglJWVzcCkiOjo6Im1lbW9yeSIpCi0jZWxz ZQotI2RlZmluZSBjbW1fbWIoKSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImxvY2s7IGFkZGwg JDAsMCglJXJzcCkiOjo6Im1lbW9yeSIpCi0jZGVmaW5lIGNtbV9ybWIoKSAgICBfX2FzbV9fIF9f dm9sYXRpbGVfXyAoImxvY2s7IGFkZGwgJDAsMCglJXJzcCkiOjo6Im1lbW9yeSIpCi0jZGVmaW5l IGNtbV93bWIoKSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImxvY2s7IGFkZGwgJDAsMCglJXJz cCkiOjo6Im1lbW9yeSIpCi0jZW5kaWYKICNlbmRpZgogCi0jZGVmaW5lIGNhYV9jcHVfcmVsYXgo KQlfX2FzbV9fIF9fdm9sYXRpbGVfXyAoInJlcDsgbm9wIiA6IDogOiAibWVtb3J5IikKLQogI2Rl ZmluZSBIQVNfQ0FBX0dFVF9DWUNMRVMKIAogI2RlZmluZSByZHRzY2xsKHZhbCkJCQkJCQkJICBc CkBAIC05OCwxMCArNjIsMTAgQEAgdHlwZWRlZiB1aW50NjRfdCBjYWFfY3ljbGVzX3Q7CiAKIHN0 YXRpYyBpbmxpbmUgY2FhX2N5Y2xlc190IGNhYV9nZXRfY3ljbGVzKHZvaWQpCiB7Ci0gICAgICAg IGNhYV9jeWNsZXNfdCByZXQgPSAwOworCWNhYV9jeWNsZXNfdCByZXQgPSAwOwogCi0gICAgICAg IHJkdHNjbGwocmV0KTsKLSAgICAgICAgcmV0dXJuIHJldDsKKwlyZHRzY2xsKHJldCk7CisJcmV0 dXJuIHJldDsKIH0KIAogLyoKLS0gCjIuMzkuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbHR0bmctZGV2IG1haWxpbmcgbGlzdApsdHRuZy1kZXZAbGlz dHMubHR0bmcub3JnCmh0dHBzOi8vbGlzdHMubHR0bmcub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0 aW5mby9sdHRuZy1kZXYK