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.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,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 082A9C433E0 for ; Wed, 8 Jul 2020 21:10:34 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 C19DE20658 for ; Wed, 8 Jul 2020 21:10:33 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="t5Bvgx2G"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="YbRsINFQ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C19DE20658 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=esmil.dk Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=TK+SiouyjPXBKwwXzy1SIU30y2RhYTBtnHeWVnOPf8M=; b=t5Bvgx2G12djTQFZBP3GA/+36 AgnSeF4jy7QCcumlnHuJZT/JJz+yIi39zLT1imA1xBDCxuMW2DAE0s6QyTxeFuQJ4WGuuK+gj3gC5 fgX2rAYWjxl+7KRcsiChGX9sM5C9+Ehmtll4mkwxG6FnQAzKy8NCr9BjPOA1/swrCl3jFea9X6bUr nHaSqU1eaQFWhv4TyWMdizHIlGwyPdTebqg2IKrXcKuhRWS/huEfKVIjprHnZhWHqiZX745bjWSKA eRWdxfc3P+0YDp0/FHQjQtLf3KU34fYDKpmq6zlzYYPTdA5AVxFbDbF5Mi1vDefE0gPWf5cWgadPe NDGYqkMng==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jtHKd-0003Q6-56; Wed, 08 Jul 2020 21:10:19 +0000 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jtHKZ-0003Oy-JQ for linux-riscv@lists.infradead.org; Wed, 08 Jul 2020 21:10:17 +0000 Received: by mail-wm1-x344.google.com with SMTP id o2so4601757wmh.2 for ; Wed, 08 Jul 2020 14:10:15 -0700 (PDT) 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=BRdWrZGotFU/V/N69RBCWuEXsKoewH6WQsweVR7ALZI=; b=YbRsINFQuj4rsIvUK1OvMoLvTYf9ohCqUDZGyBsOUBI3xxHIV+sh/Njeh0iTFSfrm7 nf2DXUHUvXzafp9O+7dfPtZWLreUJkV7xdBl9yr1xSMjbrDpILgJ7cmk8GUwE45rdFvk 7+CIS4sSr7qsGv2SYKoAsRWs1ERetwZ6R2d70aPbkxz3tv7n+UvK2nuSZk4QB+OP5rLb JzTk7d1DU4nNJuvteFyS03a3Y7A1fkarmms0pCRX+2RLyA5oTERnh4J3Y95M3CdfIXWp aLbbh1t0UXAEekvcWViq+7HAn1MfESw1eamf8rR3WjF+ZYAdSXjKU7kiyPaOOwVn1/UT EJ9Q== 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=BRdWrZGotFU/V/N69RBCWuEXsKoewH6WQsweVR7ALZI=; b=M6Jo9trIC2w4MqCpnQWAP/3l46UXoB2o9i60QlgZwVKg0Ug2XWSSIik7Dlzn2Lwrq+ M4falm1Z/lmy8w86q/kaSBJM9B5WGmO+oGr1OCz26GpUMukyxXUXGKzMEr6K46Yue6KQ cPTAkVQR36K2O6cayOQ23uLzwfLhD0aRCnK4duLjtvy2qeAbbdqzureZFWVSgPNf6LAU aH/bEPFZ7Bso/1eChY4xMalw5QOg04b+d97fTq136EWd+CvFTi2tN+nClLbkCwbGMimw mrWs2WRJLDlPN6ze90kpJdY4iBrEWi3687PGBototm0GN/QN8KF7M0/HBKMWgr6v4hz2 INnA== X-Gm-Message-State: AOAM530nPspAMWC8XkODEtjOgnAlN41wcsW0RqOwusOl5ronvfG/KLJs kUJTdwaLhJaPI1AGkXHPt9ssycB3Gh385Q== X-Google-Smtp-Source: ABdhPJwkstX8Sj2urYCU2SdzhkKIKmrEBrTXDdHq8hml/jbRvgiqZRnT5smUI7pFxM091Bbt5K6WzA== X-Received: by 2002:a1c:4804:: with SMTP id v4mr11080060wma.139.1594242613783; Wed, 08 Jul 2020 14:10:13 -0700 (PDT) Received: from localhost.localdomain ([80.71.140.73]) by smtp.gmail.com with ESMTPSA id u23sm1971515wru.94.2020.07.08.14.10.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Jul 2020 14:10:13 -0700 (PDT) From: Emil Renner Berthing To: linux-riscv@lists.infradead.org Subject: [PATCH v2 2/2] riscv: Add jump-label implementation Date: Wed, 8 Jul 2020 23:09:48 +0200 Message-Id: <20200708210948.34197-2-kernel@esmil.dk> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200708210948.34197-1-kernel@esmil.dk> References: <20200708210948.34197-1-kernel@esmil.dk> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200708_171015_668967_726CEC17 X-CRM114-Status: GOOD ( 20.36 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Emil Renner Berthing , Jonathan Corbet , =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, Palmer Dabbelt , Paul Walmsley Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org QWRkIGp1bXAtbGFiZWwgaW1wbGVtZW50YXRpb24gYmFzZWQgb24gdGhlIEFSTTY0IHZlcnNpb24K YW5kIGFkZCBDT05GSUdfSlVNUF9MQUJFTD15IHRvIHRoZSBkZWZjb25maWdzLgoKU2lnbmVkLW9m Zi1ieTogRW1pbCBSZW5uZXIgQmVydGhpbmcgPGtlcm5lbEBlc21pbC5kaz4KUmV2aWV3ZWQtYnk6 IEJqw7ZybiBUw7ZwZWwgPGJqb3JuLnRvcGVsQGdtYWlsLmNvbT4KLS0tCgpUZXN0ZWQgb24gdGhl IEhpRml2ZSBVbmxlYXNoZWQgYm9hcmQuCgpDaGFuZ2VzIHNpbmNlIHYxOgotIFdBUk4gYW5kIGdp dmUgdXAgZ3JhY2VmdWxseSBpZiB0aGUganVtcCBvZmZzZXQgY2Fubm90IGJlCiAgcmVwcmVzZW50 ZWQgaW4gYSBKQUwgaW5zdHJ1Y3Rpb24uCi0gQWRkIG1pc3NpbmcgYnJhY2VzLgotIEFkZCBDT05G SUdfSlVNUF9MQUJFTD15IHRvIGRlZmNvbmZpZ3MuCgpBbGwgc3VnZ2VzdGVkIGJ5IEJqw7ZybiBU w7ZwZWwuCgpDaGFuZ2VzIHNpbmNlIFJGQzoKLSBVc2UgUklTQ1ZfUFRSIGFuZCBSSVNDVl9MR1BU UiBtYWNyb3MgdG8gbWF0Y2ggc3RydWN0IGp1bXBfdGFibGUKICBhbHNvIGluIDMyYml0IGtlcm5l bHMuCi0gUmVtb3ZlIHVubmVlZGVkIGJyYW5jaCA/IDEgOiAwLCB0aGFua3MgQmrDtnJuCi0gRml4 IFxuXG4gaW5zdGVhZCBvZiBcblx0IG1pc3Rha2UKCiAuLi4vY29yZS9qdW1wLWxhYmVscy9hcmNo LXN1cHBvcnQudHh0ICAgICAgICAgfCAgMiArLQogYXJjaC9yaXNjdi9LY29uZmlnICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDIgKwogYXJjaC9yaXNjdi9jb25maWdzL2RlZmNvbmZpZyAg ICAgICAgICAgICAgICAgIHwgIDEgKwogYXJjaC9yaXNjdi9jb25maWdzL25vbW11X2syMTBfZGVm Y29uZmlnICAgICAgIHwgIDEgKwogYXJjaC9yaXNjdi9jb25maWdzL25vbW11X3ZpcnRfZGVmY29u ZmlnICAgICAgIHwgIDEgKwogYXJjaC9yaXNjdi9jb25maWdzL3J2MzJfZGVmY29uZmlnICAgICAg ICAgICAgIHwgIDEgKwogYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmggICAgICAg ICAgIHwgNTkgKysrKysrKysrKysrKysrKysrKwogYXJjaC9yaXNjdi9rZXJuZWwvTWFrZWZpbGUg ICAgICAgICAgICAgICAgICAgIHwgIDIgKwogYXJjaC9yaXNjdi9rZXJuZWwvanVtcF9sYWJlbC5j ICAgICAgICAgICAgICAgIHwgNDkgKysrKysrKysrKysrKysrCiA5IGZpbGVzIGNoYW5nZWQsIDEx NyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9y aXNjdi9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3Jp c2N2L2tlcm5lbC9qdW1wX2xhYmVsLmMKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2ZlYXR1 cmVzL2NvcmUvanVtcC1sYWJlbHMvYXJjaC1zdXBwb3J0LnR4dCBiL0RvY3VtZW50YXRpb24vZmVh dHVyZXMvY29yZS9qdW1wLWxhYmVscy9hcmNoLXN1cHBvcnQudHh0CmluZGV4IDYzMmExYzdhZWZh Mi4uNzYwMjQzZDE4ZWQ3IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2ZlYXR1cmVzL2NvcmUv anVtcC1sYWJlbHMvYXJjaC1zdXBwb3J0LnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2ZlYXR1cmVz L2NvcmUvanVtcC1sYWJlbHMvYXJjaC1zdXBwb3J0LnR4dApAQCAtMjMsNyArMjMsNyBAQAogICAg IHwgICAgb3BlbnJpc2M6IHwgVE9ETyB8CiAgICAgfCAgICAgIHBhcmlzYzogfCAgb2sgIHwKICAg ICB8ICAgICBwb3dlcnBjOiB8ICBvayAgfAotICAgIHwgICAgICAgcmlzY3Y6IHwgVE9ETyB8Cisg ICAgfCAgICAgICByaXNjdjogfCAgb2sgIHwKICAgICB8ICAgICAgICBzMzkwOiB8ICBvayAgfAog ICAgIHwgICAgICAgICAgc2g6IHwgVE9ETyB8CiAgICAgfCAgICAgICBzcGFyYzogfCAgb2sgIHwK ZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvS2NvbmZpZyBiL2FyY2gvcmlzY3YvS2NvbmZpZwppbmRl eCBmZDYzOTkzN2UyNTEuLmQyZjVjNTNmZGMxOSAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9LY29u ZmlnCisrKyBiL2FyY2gvcmlzY3YvS2NvbmZpZwpAQCAtNDYsNiArNDYsOCBAQCBjb25maWcgUklT Q1YKIAlzZWxlY3QgR0VORVJJQ19USU1FX1ZTWVNDQUxMIGlmIE1NVSAmJiA2NEJJVAogCXNlbGVj dCBIQU5ETEVfRE9NQUlOX0lSUQogCXNlbGVjdCBIQVZFX0FSQ0hfQVVESVRTWVNDQUxMCisJc2Vs ZWN0IEhBVkVfQVJDSF9KVU1QX0xBQkVMCisJc2VsZWN0IEhBVkVfQVJDSF9KVU1QX0xBQkVMX1JF TEFUSVZFCiAJc2VsZWN0IEhBVkVfQVJDSF9LQVNBTiBpZiBNTVUgJiYgNjRCSVQKIAlzZWxlY3Qg SEFWRV9BUkNIX0tHREIKIAlzZWxlY3QgSEFWRV9BUkNIX0tHREJfUVhGRVJfUEtUCmRpZmYgLS1n aXQgYS9hcmNoL3Jpc2N2L2NvbmZpZ3MvZGVmY29uZmlnIGIvYXJjaC9yaXNjdi9jb25maWdzL2Rl ZmNvbmZpZwppbmRleCA0ZGE0ODg2MjQ2YTQuLmQ1OGM5M2VmYjYwMyAxMDA2NDQKLS0tIGEvYXJj aC9yaXNjdi9jb25maWdzL2RlZmNvbmZpZworKysgYi9hcmNoL3Jpc2N2L2NvbmZpZ3MvZGVmY29u ZmlnCkBAIC0xNyw2ICsxNyw3IEBAIENPTkZJR19CUEZfU1lTQ0FMTD15CiBDT05GSUdfU09DX1NJ RklWRT15CiBDT05GSUdfU09DX1ZJUlQ9eQogQ09ORklHX1NNUD15CitDT05GSUdfSlVNUF9MQUJF TD15CiBDT05GSUdfTU9EVUxFUz15CiBDT05GSUdfTU9EVUxFX1VOTE9BRD15CiBDT05GSUdfTkVU PXkKZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvY29uZmlncy9ub21tdV9rMjEwX2RlZmNvbmZpZyBi L2FyY2gvcmlzY3YvY29uZmlncy9ub21tdV9rMjEwX2RlZmNvbmZpZwppbmRleCBiNDgxMzhlMzI5 ZWEuLmNkMWRmNjJiMTNjNyAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9jb25maWdzL25vbW11X2sy MTBfZGVmY29uZmlnCisrKyBiL2FyY2gvcmlzY3YvY29uZmlncy9ub21tdV9rMjEwX2RlZmNvbmZp ZwpAQCAtMzMsNiArMzMsNyBAQCBDT05GSUdfU01QPXkKIENPTkZJR19OUl9DUFVTPTIKIENPTkZJ R19DTURMSU5FPSJlYXJseWNvbiBjb25zb2xlPXR0eVNJRjAiCiBDT05GSUdfQ01ETElORV9GT1JD RT15CitDT05GSUdfSlVNUF9MQUJFTD15CiAjIENPTkZJR19CTE9DSyBpcyBub3Qgc2V0CiBDT05G SUdfQklORk1UX0ZMQVQ9eQogIyBDT05GSUdfQ09SRURVTVAgaXMgbm90IHNldApkaWZmIC0tZ2l0 IGEvYXJjaC9yaXNjdi9jb25maWdzL25vbW11X3ZpcnRfZGVmY29uZmlnIGIvYXJjaC9yaXNjdi9j b25maWdzL25vbW11X3ZpcnRfZGVmY29uZmlnCmluZGV4IGNmNzRlMTc5YmY5MC4uZjI3NTk2ZTk2 NjNlIDEwMDY0NAotLS0gYS9hcmNoL3Jpc2N2L2NvbmZpZ3Mvbm9tbXVfdmlydF9kZWZjb25maWcK KysrIGIvYXJjaC9yaXNjdi9jb25maWdzL25vbW11X3ZpcnRfZGVmY29uZmlnCkBAIC0zMCw2ICsz MCw3IEBAIENPTkZJR19NQVhQSFlTTUVNXzJHQj15CiBDT05GSUdfU01QPXkKIENPTkZJR19DTURM SU5FPSJyb290PS9kZXYvdmRhIHJ3IGVhcmx5Y29uPXVhcnQ4MjUwLG1taW8sMHgxMDAwMDAwMCwx MTUyMDBuOCBjb25zb2xlPXR0eVMwIgogQ09ORklHX0NNRExJTkVfRk9SQ0U9eQorQ09ORklHX0pV TVBfTEFCRUw9eQogIyBDT05GSUdfQkxLX0RFVl9CU0cgaXMgbm90IHNldAogQ09ORklHX1BBUlRJ VElPTl9BRFZBTkNFRD15CiAjIENPTkZJR19NU0RPU19QQVJUSVRJT04gaXMgbm90IHNldApkaWZm IC0tZ2l0IGEvYXJjaC9yaXNjdi9jb25maWdzL3J2MzJfZGVmY29uZmlnIGIvYXJjaC9yaXNjdi9j b25maWdzL3J2MzJfZGVmY29uZmlnCmluZGV4IDA1YmJmNTI0MDU2OS4uM2E1NWYwZTAwZDZjIDEw MDY0NAotLS0gYS9hcmNoL3Jpc2N2L2NvbmZpZ3MvcnYzMl9kZWZjb25maWcKKysrIGIvYXJjaC9y aXNjdi9jb25maWdzL3J2MzJfZGVmY29uZmlnCkBAIC0xNyw2ICsxNyw3IEBAIENPTkZJR19CUEZf U1lTQ0FMTD15CiBDT05GSUdfU09DX1ZJUlQ9eQogQ09ORklHX0FSQ0hfUlYzMkk9eQogQ09ORklH X1NNUD15CitDT05GSUdfSlVNUF9MQUJFTD15CiBDT05GSUdfTU9EVUxFUz15CiBDT05GSUdfTU9E VUxFX1VOTE9BRD15CiBDT05GSUdfTkVUPXkKZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVk ZS9hc20vanVtcF9sYWJlbC5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5kNWZiMzQyYmZjY2YKLS0t IC9kZXYvbnVsbAorKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApAQCAt MCwwICsxLDU5IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1vbmx5ICov CisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEVtaWwgUmVubmVyIEJlcnRoaW5nCisgKgorICog QmFzZWQgb24gYXJjaC9hcm02NC9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgKKyAqLworI2lmbmRl ZiBfX0FTTV9KVU1QX0xBQkVMX0gKKyNkZWZpbmUgX19BU01fSlVNUF9MQUJFTF9ICisKKyNpZm5k ZWYgX19BU1NFTUJMWV9fCisKKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorCisjZGVmaW5lIEpV TVBfTEFCRUxfTk9QX1NJWkUgNAorCitzdGF0aWMgX19hbHdheXNfaW5saW5lIGJvb2wgYXJjaF9z dGF0aWNfYnJhbmNoKHN0cnVjdCBzdGF0aWNfa2V5ICprZXksCisJCQkJCSAgICAgICBib29sIGJy YW5jaCkKK3sKKwlhc21fdm9sYXRpbGVfZ290bygKKwkJIgkub3B0aW9uIHB1c2gJCQkJXG5cdCIK KwkJIgkub3B0aW9uIG5vcmVsYXgJCQkJXG5cdCIKKwkJIgkub3B0aW9uIG5vcnZjCQkJCVxuXHQi CisJCSIxOglub3AJCQkJCVxuXHQiCisJCSIJLm9wdGlvbiBwb3AJCQkJXG5cdCIKKwkJIgkucHVz aHNlY3Rpb24JX19qdW1wX3RhYmxlLCBcImF3XCIJXG5cdCIKKwkJIgkuYWxpZ24JCSIgUklTQ1Zf TEdQVFIgIgkJXG5cdCIKKwkJIgkubG9uZwkJMWIgLSAuLCAlbFtsYWJlbF0gLSAuCVxuXHQiCisJ CSIJIiBSSVNDVl9QVFIgIgklMCAtIC4JCQlcblx0IgorCQkiCS5wb3BzZWN0aW9uCQkJCVxuXHQi CisJCTogIDogICJpIigmKChjaGFyICopa2V5KVticmFuY2hdKSA6ICA6IGxhYmVsKTsKKworCXJl dHVybiBmYWxzZTsKK2xhYmVsOgorCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgX19hbHdheXNf aW5saW5lIGJvb2wgYXJjaF9zdGF0aWNfYnJhbmNoX2p1bXAoc3RydWN0IHN0YXRpY19rZXkgKmtl eSwKKwkJCQkJCSAgICBib29sIGJyYW5jaCkKK3sKKwlhc21fdm9sYXRpbGVfZ290bygKKwkJIgku b3B0aW9uIHB1c2gJCQkJXG5cdCIKKwkJIgkub3B0aW9uIG5vcmVsYXgJCQkJXG5cdCIKKwkJIgku b3B0aW9uIG5vcnZjCQkJCVxuXHQiCisJCSIxOglqYWwJCXplcm8sICVsW2xhYmVsXQkJXG5cdCIK KwkJIgkub3B0aW9uIHBvcAkJCQlcblx0IgorCQkiCS5wdXNoc2VjdGlvbglfX2p1bXBfdGFibGUs IFwiYXdcIglcblx0IgorCQkiCS5hbGlnbgkJIiBSSVNDVl9MR1BUUiAiCQlcblx0IgorCQkiCS5s b25nCQkxYiAtIC4sICVsW2xhYmVsXSAtIC4JXG5cdCIKKwkJIgkiIFJJU0NWX1BUUiAiCSUwIC0g LgkJCVxuXHQiCisJCSIJLnBvcHNlY3Rpb24JCQkJXG5cdCIKKwkJOiAgOiAgImkiKCYoKGNoYXIg KilrZXkpW2JyYW5jaF0pIDogIDogbGFiZWwpOworCisJcmV0dXJuIGZhbHNlOworbGFiZWw6CisJ cmV0dXJuIHRydWU7Cit9CisKKyNlbmRpZiAgLyogX19BU1NFTUJMWV9fICovCisjZW5kaWYJLyog X19BU01fSlVNUF9MQUJFTF9IICovCmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2tlcm5lbC9NYWtl ZmlsZSBiL2FyY2gvcmlzY3Yva2VybmVsL01ha2VmaWxlCmluZGV4IGIzNTVjZjQ4NTY3MS4uYTUy ODdhYjlmN2YyIDEwMDY0NAotLS0gYS9hcmNoL3Jpc2N2L2tlcm5lbC9NYWtlZmlsZQorKysgYi9h cmNoL3Jpc2N2L2tlcm5lbC9NYWtlZmlsZQpAQCAtNTMsNCArNTMsNiBAQCBlbmRpZgogb2JqLSQo Q09ORklHX0hPVFBMVUdfQ1BVKQkrPSBjcHUtaG90cGx1Zy5vCiBvYmotJChDT05GSUdfS0dEQikJ CSs9IGtnZGIubwogCitvYmotJChDT05GSUdfSlVNUF9MQUJFTCkJKz0ganVtcF9sYWJlbC5vCisK IGNsZWFuOgpkaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rZXJuZWwvanVtcF9sYWJlbC5jIGIvYXJj aC9yaXNjdi9rZXJuZWwvanVtcF9sYWJlbC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMC4uMWJhYjFhYmMxYWE1Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9yaXNjdi9r ZXJuZWwvanVtcF9sYWJlbC5jCkBAIC0wLDAgKzEsNDkgQEAKKy8vIFNQRFgtTGljZW5zZS1JZGVu dGlmaWVyOiBHUEwtMi4wLW9ubHkKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgRW1pbCBSZW5u ZXIgQmVydGhpbmcKKyAqCisgKiBCYXNlZCBvbiBhcmNoL2FybTY0L2tlcm5lbC9qdW1wX2xhYmVs LmMKKyAqLworI2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5oPgorI2luY2x1ZGUgPGxpbnV4L2p1bXBf bGFiZWwuaD4KKyNpbmNsdWRlIDxhc20vYnVnLmg+CisjaW5jbHVkZSA8YXNtL3BhdGNoLmg+CisK KyNkZWZpbmUgUklTQ1ZfSU5TTl9OT1AgMHgwMDAwMDAxM1UKKyNkZWZpbmUgUklTQ1ZfSU5TTl9K QUwgMHgwMDAwMDA2ZlUKKwordm9pZCBhcmNoX2p1bXBfbGFiZWxfdHJhbnNmb3JtKHN0cnVjdCBq dW1wX2VudHJ5ICplbnRyeSwKKwkJCSAgICAgICBlbnVtIGp1bXBfbGFiZWxfdHlwZSB0eXBlKQor eworCXZvaWQgKmFkZHIgPSAodm9pZCAqKWp1bXBfZW50cnlfY29kZShlbnRyeSk7CisJdTMyIGlu c247CisKKwlpZiAodHlwZSA9PSBKVU1QX0xBQkVMX0pNUCkgeworCQlsb25nIG9mZnNldCA9IGp1 bXBfZW50cnlfdGFyZ2V0KGVudHJ5KSAtIGp1bXBfZW50cnlfY29kZShlbnRyeSk7CisKKwkJaWYg KFdBUk5fT04ob2Zmc2V0ICYgMSB8fCBvZmZzZXQgPCAtNTI0Mjg4IHx8IG9mZnNldCA+PSA1MjQy ODgpKQorCQkJcmV0dXJuOworCisJCWluc24gPSBSSVNDVl9JTlNOX0pBTCB8CisJCQkoKCh1MzIp b2Zmc2V0ICYgR0VOTUFTSygxOSwgMTIpKSA8PCAoMTIgLSAxMikpIHwKKwkJCSgoKHUzMilvZmZz ZXQgJiBHRU5NQVNLKDExLCAxMSkpIDw8ICgyMCAtIDExKSkgfAorCQkJKCgodTMyKW9mZnNldCAm IEdFTk1BU0soMTAsICAxKSkgPDwgKDIxIC0gIDEpKSB8CisJCQkoKCh1MzIpb2Zmc2V0ICYgR0VO TUFTSygyMCwgMjApKSA8PCAoMzEgLSAyMCkpOworCX0gZWxzZSB7CisJCWluc24gPSBSSVNDVl9J TlNOX05PUDsKKwl9CisKKwlwYXRjaF90ZXh0X25vc3luYyhhZGRyLCAmaW5zbiwgc2l6ZW9mKGlu c24pKTsKK30KKwordm9pZCBhcmNoX2p1bXBfbGFiZWxfdHJhbnNmb3JtX3N0YXRpYyhzdHJ1Y3Qg anVtcF9lbnRyeSAqZW50cnksCisJCQkJICAgICAgZW51bSBqdW1wX2xhYmVsX3R5cGUgdHlwZSkK K3sKKwkvKgorCSAqIFdlIHVzZSB0aGUgc2FtZSBpbnN0cnVjdGlvbnMgaW4gdGhlIGFyY2hfc3Rh dGljX2JyYW5jaCBhbmQKKwkgKiBhcmNoX3N0YXRpY19icmFuY2hfanVtcCBpbmxpbmUgZnVuY3Rp b25zLCBzbyB0aGVyZSdzIG5vCisJICogbmVlZCB0byBwYXRjaCB0aGVtIHVwIGhlcmUuCisJICog VGhlIGNvcmUgd2lsbCBjYWxsIGFyY2hfanVtcF9sYWJlbF90cmFuc2Zvcm0gIHdoZW4gdGhvc2UK KwkgKiBpbnN0cnVjdGlvbnMgbmVlZCB0byBiZSByZXBsYWNlZC4KKwkgKi8KK30KLS0gCjIuMjcu MAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4 LXJpc2N2IG1haWxpbmcgbGlzdApsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6 Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK