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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 591B3C433F5 for ; Wed, 6 Oct 2021 16:26:29 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (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 CA9ED61130 for ; Wed, 6 Oct 2021 16:26:28 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org CA9ED61130 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=quicinc.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=nongnu.org Received: from localhost ([::1]:33920 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mY9kR-0004Xv-NJ for qemu-devel@archiver.kernel.org; Wed, 06 Oct 2021 12:26:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52940) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mY99K-00080p-Jt for qemu-devel@nongnu.org; Wed, 06 Oct 2021 11:48:07 -0400 Received: from alexa-out-sd-02.qualcomm.com ([199.106.114.39]:26606) by eggs.gnu.org with esmtps (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1mY99H-0001oR-Kf for qemu-devel@nongnu.org; Wed, 06 Oct 2021 11:48:06 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; i=@quicinc.com; q=dns/txt; s=qcdkim; t=1633535283; x=1665071283; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=49BtkPPkN+bq6Kn5ocKXwOvqrmFIB9jICwEUEE5Pae4=; b=Vf+ZW4OGX8662VTLYf/ozTHx++CSHSEmJHUWIzCs7Dq5TM4Zn9qjuVIX PYghlPiu9CBXp86kvndQ4wD6+IQN+TzpNde0edNDWFnSAMoYhTR8LzCgI MbE6Ndxqi8HpHdin7iUXFRfv+3QkUpqoAWWJciN7O+0/dVle21Bfjd8hF 4=; Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-02.qualcomm.com with ESMTP; 06 Oct 2021 08:47:54 -0700 X-QCInternal: smtphost Received: from vu-tsimpson-aus.qualcomm.com (HELO vu-tsimpson1-aus.qualcomm.com) ([10.222.150.1]) by ironmsg03-sd.qualcomm.com with ESMTP; 06 Oct 2021 08:47:53 -0700 Received: by vu-tsimpson1-aus.qualcomm.com (Postfix, from userid 47164) id 4E566112F; Wed, 6 Oct 2021 10:47:53 -0500 (CDT) From: Taylor Simpson To: qemu-devel@nongnu.org Subject: [PULL 1/3] Hexagon (target/hexagon) probe the stores in a packet at start of commit Date: Wed, 6 Oct 2021 10:47:49 -0500 Message-Id: <1633535271-17986-2-git-send-email-tsimpson@quicinc.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1633535271-17986-1-git-send-email-tsimpson@quicinc.com> References: <1633535271-17986-1-git-send-email-tsimpson@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Received-SPF: pass client-ip=199.106.114.39; envelope-from=tsimpson@qualcomm.com; helo=alexa-out-sd-02.qualcomm.com X-Spam_score_int: -40 X-Spam_score: -4.1 X-Spam_bar: ---- X-Spam_report: (-4.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, tsimpson@quicinc.com, richard.henderson@linaro.org, f4bug@amsat.org Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" V2hlbiBhIHBhY2tldCBoYXMgMiBzdG9yZXMsIGVpdGhlciBib3RoIGNvbW1pdCBvciBuZWl0aGVy IGNvbW1pdC4KQXQgdGhlIGJlZ2lubmluZyBvZiBnZW5fY29tbWl0X3BhY2tldCwgd2UgY2hlY2sg Zm9yIG11bHRpcGxlIHN0b3Jlcy4KSWYgdGhlcmUgYXJlIG11bHRpcGxlIHN0b3JlcywgY2FsbCBh IGhlbHBlciB0aGF0IHdpbGwgcHJvYmUgZWFjaCBvZgp0aGVtIGJlZm9yZSBwcm9jZWVkaW5nIHdp dGggdGhlIGNvbW1pdC4KCk5vdGUgdGhhdCB3ZSBkb24ndCBjYWxsIHRoZSBwcm9iZSBoZWxwZXIg Zm9yIHBhY2tldHMgd2l0aCBvbmx5IG9uZQpzdG9yZS4gIFRoZXJlZm9yZSwgd2UgY2FsbCBwcm9j ZXNzX3N0b3JlX2xvZyBiZWZvcmUgYW55dGhpbmcgZWxzZQppbnZvbHZlZCBpbiBjb21taXR0aW5n IHRoZSBwYWNrZXQuCgpXZSBhbHNvIGZpeCBhIHR5cG8gaW4gdGhlIGNvbW1lbnQgaW4gcHJvY2Vz c19zdG9yZV9sb2cuCgpUZXN0IGNhc2UgYWRkZWQgaW4gdGVzdHMvdGNnL2hleGFnb24vaGV4X3Np Z3NlZ3YuYwoKUmV2aWV3ZWQtYnk6IFJpY2hhcmQgSGVuZGVyc29uIDxyaWNoYXJkLmhlbmRlcnNv bkBsaW5hcm8ub3JnPgpTaWduZWQtb2ZmLWJ5OiBUYXlsb3IgU2ltcHNvbiA8dHNpbXBzb25AcXVp Y2luYy5jb20+Ck1lc3NhZ2UtSWQ6IDwxNjMzMDM2NTk5LTc2MzctMS1naXQtc2VuZC1lbWFpbC10 c2ltcHNvbkBxdWljaW5jLmNvbT4KLS0tCiB0YXJnZXQvaGV4YWdvbi9oZWxwZXIuaCAgICAgICAg ICAgfCAgIDIgKwogdGFyZ2V0L2hleGFnb24vb3BfaGVscGVyLmMgICAgICAgIHwgIDE2ICsrKysr KwogdGFyZ2V0L2hleGFnb24vdHJhbnNsYXRlLmMgICAgICAgIHwgIDM4ICsrKysrKysrKysrKy0t CiB0ZXN0cy90Y2cvaGV4YWdvbi9oZXhfc2lnc2Vndi5jICAgfCAxMDYgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysKIHRlc3RzL3RjZy9oZXhhZ29uL01ha2VmaWxlLnRhcmdl dCB8ICAgMSArCiA1IGZpbGVzIGNoYW5nZWQsIDE2MCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL3RjZy9oZXhhZ29uL2hleF9zaWdzZWd2LmMK CmRpZmYgLS1naXQgYS90YXJnZXQvaGV4YWdvbi9oZWxwZXIuaCBiL3RhcmdldC9oZXhhZ29uL2hl bHBlci5oCmluZGV4IGNhMjAxZmIuLjg5ZGUyYTMgMTAwNjQ0Ci0tLSBhL3RhcmdldC9oZXhhZ29u L2hlbHBlci5oCisrKyBiL3RhcmdldC9oZXhhZ29uL2hlbHBlci5oCkBAIC04OSwzICs4OSw1IEBA IERFRl9IRUxQRVJfNChzZmZtc19saWIsIGYzMiwgZW52LCBmMzIsIGYzMiwgZjMyKQogCiBERUZf SEVMUEVSXzMoZGZtcHlmaXgsIGY2NCwgZW52LCBmNjQsIGY2NCkKIERFRl9IRUxQRVJfNChkZm1w eWhoLCBmNjQsIGVudiwgZjY0LCBmNjQsIGY2NCkKKworREVGX0hFTFBFUl8yKHByb2JlX3BrdF9z Y2FsYXJfc3RvcmVfczAsIHZvaWQsIGVudiwgaW50KQpkaWZmIC0tZ2l0IGEvdGFyZ2V0L2hleGFn b24vb3BfaGVscGVyLmMgYi90YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuYwppbmRleCA2MWQ1Y2Rl Li5hZjMyZGU0IDEwMDY0NAotLS0gYS90YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuYworKysgYi90 YXJnZXQvaGV4YWdvbi9vcF9oZWxwZXIuYwpAQCAtMzc3LDYgKzM3NywyMiBAQCBpbnQzMl90IEhF TFBFUih2YWNzaF9wcmVkKShDUFVIZXhhZ29uU3RhdGUgKmVudiwKICAgICByZXR1cm4gUGVWOwog fQogCitzdGF0aWMgdm9pZCBwcm9iZV9zdG9yZShDUFVIZXhhZ29uU3RhdGUgKmVudiwgaW50IHNs b3QsIGludCBtbXVfaWR4KQoreworICAgIGlmICghKGVudi0+c2xvdF9jYW5jZWxsZWQgJiAoMSA8 PCBzbG90KSkpIHsKKyAgICAgICAgc2l6ZTF1X3Qgd2lkdGggPSBlbnYtPm1lbV9sb2dfc3RvcmVz W3Nsb3RdLndpZHRoOworICAgICAgICB0YXJnZXRfdWxvbmcgdmEgPSBlbnYtPm1lbV9sb2dfc3Rv cmVzW3Nsb3RdLnZhOworICAgICAgICB1aW50cHRyX3QgcmEgPSBHRVRQQygpOworICAgICAgICBw cm9iZV93cml0ZShlbnYsIHZhLCB3aWR0aCwgbW11X2lkeCwgcmEpOworICAgIH0KK30KKworLyog Q2FsbGVkIGR1cmluZyBwYWNrZXQgY29tbWl0IHdoZW4gdGhlcmUgYXJlIHR3byBzY2FsYXIgc3Rv cmVzICovCit2b2lkIEhFTFBFUihwcm9iZV9wa3Rfc2NhbGFyX3N0b3JlX3MwKShDUFVIZXhhZ29u U3RhdGUgKmVudiwgaW50IG1tdV9pZHgpCit7CisgICAgcHJvYmVfc3RvcmUoZW52LCAwLCBtbXVf aWR4KTsKK30KKwogLyoKICAqIG1lbV9ub3NodWYKICAqIFNlY3Rpb24gNS41IG9mIHRoZSBIZXhh Z29uIFY2NyBQcm9ncmFtbWVyJ3MgUmVmZXJlbmNlIE1hbnVhbApkaWZmIC0tZ2l0IGEvdGFyZ2V0 L2hleGFnb24vdHJhbnNsYXRlLmMgYi90YXJnZXQvaGV4YWdvbi90cmFuc2xhdGUuYwppbmRleCA2 ZmI0ZTY4Li41MTkzMGU4IDEwMDY0NAotLS0gYS90YXJnZXQvaGV4YWdvbi90cmFuc2xhdGUuYwor KysgYi90YXJnZXQvaGV4YWdvbi90cmFuc2xhdGUuYwpAQCAtNDE5LDcgKzQxOSw3IEBAIHN0YXRp YyB2b2lkIHByb2Nlc3Nfc3RvcmVfbG9nKERpc2FzQ29udGV4dCAqY3R4LCBQYWNrZXQgKnBrdCkK IHsKICAgICAvKgogICAgICAqICBXaGVuIGEgcGFja2V0IGhhcyB0d28gc3RvcmVzLCB0aGUgaGFy ZHdhcmUgcHJvY2Vzc2VzCi0gICAgICogIHNsb3QgMSBhbmQgdGhlbiBzbG90IDIuICBUaGlzIHdp bGwgYmUgaW1wb3J0YW50IHdoZW4KKyAgICAgKiAgc2xvdCAxIGFuZCB0aGVuIHNsb3QgMC4gIFRo aXMgd2lsbCBiZSBpbXBvcnRhbnQgd2hlbgogICAgICAqICB0aGUgbWVtb3J5IGFjY2Vzc2VzIG92 ZXJsYXAuCiAgICAgICovCiAgICAgaWYgKHBrdC0+cGt0X2hhc19zdG9yZV9zMSAmJiAhcGt0LT5w a3RfaGFzX2RjemVyb2EpIHsKQEAgLTQ3MSwxMCArNDcxLDQyIEBAIHN0YXRpYyB2b2lkIHVwZGF0 ZV9leGVjX2NvdW50ZXJzKERpc2FzQ29udGV4dCAqY3R4LCBQYWNrZXQgKnBrdCkKIAogc3RhdGlj IHZvaWQgZ2VuX2NvbW1pdF9wYWNrZXQoRGlzYXNDb250ZXh0ICpjdHgsIFBhY2tldCAqcGt0KQog eworICAgIC8qCisgICAgICogSWYgdGhlcmUgaXMgbW9yZSB0aGFuIG9uZSBzdG9yZSBpbiBhIHBh Y2tldCwgbWFrZSBzdXJlIHRoZXkgYXJlIGFsbCBPSworICAgICAqIGJlZm9yZSBwcm9jZWVkaW5n IHdpdGggdGhlIHJlc3Qgb2YgdGhlIHBhY2tldCBjb21taXQuCisgICAgICoKKyAgICAgKiBkY3pl cm9hIGhhcyB0byBiZSB0aGUgb25seSBzdG9yZSBvcGVyYXRpb24gaW4gdGhlIHBhY2tldCwgc28g d2UgZ28KKyAgICAgKiBhaGVhZCBhbmQgcHJvY2VzcyB0aGF0IGZpcnN0LgorICAgICAqCisgICAg ICogV2hlbiB0aGVyZSBhcmUgdHdvIHNjYWxhciBzdG9yZXMsIHdlIHByb2JlIHRoZSBvbmUgaW4g c2xvdCAwLgorICAgICAqCisgICAgICogTm90ZSB0aGF0IHdlIGRvbid0IGNhbGwgdGhlIHByb2Jl IGhlbHBlciBmb3IgcGFja2V0cyB3aXRoIG9ubHkgb25lCisgICAgICogc3RvcmUuICBUaGVyZWZv cmUsIHdlIGNhbGwgcHJvY2Vzc19zdG9yZV9sb2cgYmVmb3JlIGFueXRoaW5nIGVsc2UKKyAgICAg KiBpbnZvbHZlZCBpbiBjb21taXR0aW5nIHRoZSBwYWNrZXQuCisgICAgICovCisgICAgYm9vbCBo YXNfc3RvcmVfczAgPSBwa3QtPnBrdF9oYXNfc3RvcmVfczA7CisgICAgYm9vbCBoYXNfc3RvcmVf czEgPSAocGt0LT5wa3RfaGFzX3N0b3JlX3MxICYmICFjdHgtPnMxX3N0b3JlX3Byb2Nlc3NlZCk7 CisgICAgaWYgKHBrdC0+cGt0X2hhc19kY3plcm9hKSB7CisgICAgICAgIC8qCisgICAgICAgICAq IFRoZSBkY3plcm9hIHdpbGwgYmUgdGhlIHN0b3JlIGluIHNsb3QgMCwgY2hlY2sgdGhhdCB3ZSBk b24ndCBoYXZlCisgICAgICAgICAqIGEgc3RvcmUgaW4gc2xvdCAxLgorICAgICAgICAgKi8KKyAg ICAgICAgZ19hc3NlcnQoaGFzX3N0b3JlX3MwICYmICFoYXNfc3RvcmVfczEpOworICAgICAgICBw cm9jZXNzX2RjemVyb2EoY3R4LCBwa3QpOworICAgIH0gZWxzZSBpZiAoaGFzX3N0b3JlX3MwICYm IGhhc19zdG9yZV9zMSkgeworICAgICAgICAvKgorICAgICAgICAgKiBwcm9jZXNzX3N0b3JlX2xv ZyB3aWxsIGV4ZWN1dGUgdGhlIHNsb3QgMSBzdG9yZSBmaXJzdCwKKyAgICAgICAgICogc28gd2Ug b25seSBoYXZlIHRvIHByb2JlIHRoZSBzdG9yZSBpbiBzbG90IDAKKyAgICAgICAgICovCisgICAg ICAgIFRDR3YgbWVtX2lkeCA9IHRjZ19jb25zdF90bChjdHgtPm1lbV9pZHgpOworICAgICAgICBn ZW5faGVscGVyX3Byb2JlX3BrdF9zY2FsYXJfc3RvcmVfczAoY3B1X2VudiwgbWVtX2lkeCk7Cisg ICAgICAgIHRjZ190ZW1wX2ZyZWUobWVtX2lkeCk7CisgICAgfQorCisgICAgcHJvY2Vzc19zdG9y ZV9sb2coY3R4LCBwa3QpOworCiAgICAgZ2VuX3JlZ193cml0ZXMoY3R4KTsKICAgICBnZW5fcHJl ZF93cml0ZXMoY3R4LCBwa3QpOwotICAgIHByb2Nlc3Nfc3RvcmVfbG9nKGN0eCwgcGt0KTsKLSAg ICBwcm9jZXNzX2RjemVyb2EoY3R4LCBwa3QpOwogICAgIHVwZGF0ZV9leGVjX2NvdW50ZXJzKGN0 eCwgcGt0KTsKICAgICBpZiAoSEVYX0RFQlVHKSB7CiAgICAgICAgIFRDR3YgaGFzX3N0MCA9CmRp ZmYgLS1naXQgYS90ZXN0cy90Y2cvaGV4YWdvbi9oZXhfc2lnc2Vndi5jIGIvdGVzdHMvdGNnL2hl eGFnb24vaGV4X3NpZ3NlZ3YuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5k YzJiMzQ5Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvdGNnL2hleGFnb24vaGV4X3NpZ3NlZ3Yu YwpAQCAtMCwwICsxLDEwNiBAQAorLyoKKyAqICBDb3B5cmlnaHQoYykgMjAyMSBRdWFsY29tbSBJ bm5vdmF0aW9uIENlbnRlciwgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICoKKyAqICBUaGlz IHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y IG1vZGlmeQorICogIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv bjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqICAoYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0 ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBB TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1F UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0 aGUKKyAqICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK KyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZQorICogIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHNlZSA8 aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworLyoKKyAqIFRlc3QgdGhlIFZM SVcgc2VtYW50aWNzIG9mIHR3byBzdG9yZXMgaW4gYSBwYWNrZXQKKyAqCisgKiBXaGVuIGEgcGFj a2V0IGhhcyAyIHN0b3JlcywgZWl0aGVyIGJvdGggY29tbWl0IG9yIG5laXRoZXIgY29tbWl0Lgor ICogV2UgdGVzdCB0aGlzIHdpdGggYSBwYWNrZXQgdGhhdCBkb2VzIHN0b3JlcyB0byBib3RoIE5V TEwgYW5kIGEgZ2xvYmFsCisgKiB2YXJpYWJsZSwgInNob3VsZF9ub3RfY2hhbmdlIi4gIEFmdGVy IHRoZSBTSUdTRUdWIGlzIGNhdWdodCwgd2UgY2hlY2sKKyAqIHRoYXQgdGhlICJzaG91bGRfbm90 X2NoYW5nZSIgdmFsdWUgaXMgdGhlIHNhbWUuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgor I2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3lzL3R5 cGVzLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxzZXRqbXAuaD4KKyNpbmNsdWRl IDxzaWduYWwuaD4KKwordHlwZWRlZiB1bnNpZ25lZCBjaGFyIHVpbnQ4X3Q7CisKK2ludCBlcnI7 CitpbnQgc2Vndl9jYXVnaHQ7CisKKyNkZWZpbmUgU0hPVUxEX05PVF9DSEFOR0VfVkFMICAgICAg ICA1CitpbnQgc2hvdWxkX25vdF9jaGFuZ2UgPSBTSE9VTERfTk9UX0NIQU5HRV9WQUw7CisKKyNk ZWZpbmUgQlVGX1NJWkUgICAgICAgIDMwMAordW5zaWduZWQgY2hhciBidWZbQlVGX1NJWkVdOwor CisKK3N0YXRpYyB2b2lkIF9fY2hlY2soY29uc3QgY2hhciAqZmlsZW5hbWUsIGludCBsaW5lLCBp bnQgeCwgaW50IGV4cGVjdCkKK3sKKyAgICBpZiAoeCAhPSBleHBlY3QpIHsKKyAgICAgICAgcHJp bnRmKCJFUlJPUiAlczolZCAtICVkICE9ICVkXG4iLAorICAgICAgICAgICAgICAgZmlsZW5hbWUs IGxpbmUsIHgsIGV4cGVjdCk7CisgICAgICAgIGVycisrOworICAgIH0KK30KKworI2RlZmluZSBj aGVjayh4LCBleHBlY3QpIF9fY2hlY2soX19GSUxFX18sIF9fTElORV9fLCAoeCksIChleHBlY3Qp KQorCitzdGF0aWMgdm9pZCBfX2Noa19lcnJvcihjb25zdCBjaGFyICpmaWxlbmFtZSwgaW50IGxp bmUsIGludCByZXQpCit7CisgICAgaWYgKHJldCA8IDApIHsKKyAgICAgICAgcHJpbnRmKCJFUlJP UiAlczolZCAtICVkXG4iLCBmaWxlbmFtZSwgbGluZSwgcmV0KTsKKyAgICAgICAgZXJyKys7Cisg ICAgfQorfQorCisjZGVmaW5lIGNoa19lcnJvcihyZXQpIF9fY2hrX2Vycm9yKF9fRklMRV9fLCBf X0xJTkVfXywgKHJldCkpCisKK2ptcF9idWYgam1wX2VudjsKKworc3RhdGljIHZvaWQgc2lnX3Nl Z3YoaW50IHNpZywgc2lnaW5mb190ICppbmZvLCB2b2lkICpwdWMpCit7CisgICAgY2hlY2soc2ln LCBTSUdTRUdWKTsKKyAgICBzZWd2X2NhdWdodCA9IDE7CisgICAgbG9uZ2ptcChqbXBfZW52LCAx KTsKK30KKworaW50IG1haW4oKQoreworICAgIHN0cnVjdCBzaWdhY3Rpb24gYWN0OworCisgICAg LyogU0lHU0VHViB0ZXN0ICovCisgICAgYWN0LnNhX3NpZ2FjdGlvbiA9IHNpZ19zZWd2OworICAg IHNpZ2VtcHR5c2V0KCZhY3Quc2FfbWFzayk7CisgICAgYWN0LnNhX2ZsYWdzID0gU0FfU0lHSU5G TzsKKyAgICBjaGtfZXJyb3Ioc2lnYWN0aW9uKFNJR1NFR1YsICZhY3QsIE5VTEwpKTsKKyAgICBp ZiAoc2V0am1wKGptcF9lbnYpID09IDApIHsKKyAgICAgICAgYXNtIHZvbGF0aWxlKCJyMTggPSAj I3Nob3VsZF9ub3RfY2hhbmdlXG5cdCIKKyAgICAgICAgICAgICAgICAgICAgICJyMTkgPSAjMFxu XHQiCisgICAgICAgICAgICAgICAgICAgICAie1xuXHQiCisgICAgICAgICAgICAgICAgICAgICAi ICAgIG1lbXcocjE4KSA9ICM3XG5cdCIKKyAgICAgICAgICAgICAgICAgICAgICIgICAgbWVtdyhy MTkpID0gIzBcblx0IgorICAgICAgICAgICAgICAgICAgICAgIn1cblx0IgorICAgICAgICAgICAg ICAgICAgICAgIDogOiA6ICJyMTgiLCAicjE5IiwgIm1lbW9yeSIpOworICAgIH0KKworICAgIGFj dC5zYV9oYW5kbGVyID0gU0lHX0RGTDsKKyAgICBzaWdlbXB0eXNldCgmYWN0LnNhX21hc2spOwor ICAgIGFjdC5zYV9mbGFncyA9IDA7CisgICAgY2hrX2Vycm9yKHNpZ2FjdGlvbihTSUdTRUdWLCAm YWN0LCBOVUxMKSk7CisKKyAgICBjaGVjayhzZWd2X2NhdWdodCwgMSk7CisgICAgY2hlY2soc2hv dWxkX25vdF9jaGFuZ2UsIFNIT1VMRF9OT1RfQ0hBTkdFX1ZBTCk7CisKKyAgICBwdXRzKGVyciA/ ICJGQUlMIiA6ICJQQVNTIik7CisgICAgcmV0dXJuIGVyciA/IEVYSVRfRkFJTFVSRSA6IEVYSVRf U1VDQ0VTUzsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3RjZy9oZXhhZ29uL01ha2VmaWxlLnRhcmdl dCBiL3Rlc3RzL3RjZy9oZXhhZ29uL01ha2VmaWxlLnRhcmdldAppbmRleCAwNTBjZDYxLi5jMWUx NjUwIDEwMDY0NAotLS0gYS90ZXN0cy90Y2cvaGV4YWdvbi9NYWtlZmlsZS50YXJnZXQKKysrIGIv dGVzdHMvdGNnL2hleGFnb24vTWFrZWZpbGUudGFyZ2V0CkBAIC0yOCw2ICsyOCw3IEBAIGZpcnN0 OiAkKEhFWF9TUkMpL2ZpcnN0LlMKIAkkKENDKSAtc3RhdGljIC1tdjY3IC1ub3N0ZGxpYiAkXiAt byAkQAogCiBIRVhfVEVTVFMgPSBmaXJzdAorSEVYX1RFU1RTICs9IGhleF9zaWdzZWd2CiBIRVhf VEVTVFMgKz0gbWlzYwogSEVYX1RFU1RTICs9IHByZWdfYWxpYXMKIEhFWF9URVNUUyArPSBkdWFs X3N0b3JlcwotLSAKMi43LjQKCg==