From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Luis R. Rodriguez" Subject: [PATCH v6 09/14] jump_label: port __jump_table to linker tables Date: Mon, 9 Jan 2017 06:58:27 -0800 Message-ID: <20170109145833.11502-10-mcgrof@kernel.org> References: <20161222023811.21246-1-mcgrof@kernel.org> <20170109145833.11502-1-mcgrof@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170109145833.11502-1-mcgrof@kernel.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: hpa@zytor.com, acme@redhat.com, tglx@linutronix.de, mingo@redhat.com, jpoimboe@redhat.com, bp@alien8.de, npiggin@gmail.com, mhiramat@kernel.org, masami.hiramatsu.pt@hitachi.com, jbaron@akamai.com, heiko.carstens@de.ibm.com, ananth@linux.vnet.ibm.com, anil.s.keshavamurthy@intel.com, davem@davemloft.net, realmz6@gmail.com, dalias@libc.org, linux@arm.linux.org.uk Cc: gnomes@lxorguk.ukuu.org.uk, linux-ia64@vger.kernel.org, jkosina@suse.cz, benh@kernel.crashing.org, ming.lei@canonical.com, linux@rasmusvillemoes.dk, platform-driver-x86@vger.kernel.org, James.Bottomley@HansenPartnership.com, paul.gortmaker@windriver.com, paulus@samba.org, sparclinux@vger.kernel.org, wangnan0@huawei.com, mchehab@osg.samsung.com, linux-arch@vger.kernel.org, markus.heiser@darmarit.de, xen-devel@lists.xensource.com, msalter@redhat.com, linux-sh@vger.kernel.org, mpe@ellerman.id.au, joro@8bytes.org, x86@kernel.org, fontana@sharpeleven.org, dsahern@gmail.com, linux-arm-kernel@lists.infradead.org, catalin.marinas@arm.com, dvhart@infradead.org, dwmw2@infradead.org, linux@roeck-us.net, linux-xtensa@linux-xtensa.org, pali.rohar@gmail.com, keescook@chromium.org, arnd@arndb.de, jani.nikula@intel.com, will.deacon@arm.com, rusty@rustcorp.com.au, rostedt@goodmis.org, ak@ List-Id: xen-devel@lists.xenproject.org TW92ZSB0aGUgX19qdW1wX3RhYmxlIGZyb20gdGhlIGEgY3VzdG9tIHNlY3Rpb24gc29sdXRpb24K dG8gYSBnZW5lcmljIHNvbHV0aW9uLCB0aGlzIGF2b2lkaW5nIGV4dHJhIHZtbGludXgubGRzLmgK Y3VzdG9taXphdGlvbnMuCgpUaGlzIGFsc28gZGVtb3MgdGhlIHVzZSBvZiB0aGUgLmRhdGEgbGlu a2VyIHRhYmxlIGFuZCBvZgp0aGUgc2hhcmVkIGFzbSBjYWxsIHB1c2hfc2VjdGlvbl90YmwoKS4K CkJ1aWx0LWluIGtlcm5lbCBmdW5jdGlvbmFsaXR5IHdhcyB0ZXN0ZWQgd2l0aCBDT05GSUdfU1RB VElDX0tFWVNfU0VMRlRFU1QuCk1vZHVsZXIgIGtlcm5lbCBmdW5jdGlvbmFsaXR5IHdhcyB0ZXN0 ZWQgd2l0aCBDT05GSUdfVEVTVF9TVEFUSUNfS0VZUy4KQm90aCB3b3JrIGFzIGV4cGVjdGVkLgoK U2luY2UgX19qdW1wX3RhYmxlIHNlY3Rpb25zIGFyZSBhbHNvIHN1cHBvcnRlZCBwZXIKbW9kdWxl IHRoaXMgYWxzbyByZXF1aXJlZCBleHBhbmRpbmcgbW9kdWxlLWNvbW1vbi5sZHMuUwp0byBjYXB0 dXJlIGFuZCBmb2xkIGFsbCAuZGF0YS50bGIuX19qdW1wX3RhYmxlLiogb250bwp0aGUgdGhlIHNl Y3Rpb24gX19qdW1wX3RhYmxlIC0tIGluIHRoaXMgY2FzZSBmb3IgbW9kdWxlcwpuZWVkIHRvIGtl ZXAgYSByZWZlcmVuY2UgaW4gcGxhY2UsIGdpdmVuIHRoZSBhbHRlcm5hdGl2ZQppcyB0byB1c2Ug REVGSU5FX0xJTktUQUJMRShzdHJ1Y3QganVtcF9lbnRyeSwgX19qdW1wX3RhYmxlKQpwZXIgbW9k dWxlIC0tIGFuZCBsYXRlciB0aHJvdWdoIG1hY3JvIGhhY2tzIGluc3RhbnRpYXRlCnRoZSBqdW1w IGVudHJpZXMgcGVyIG1vZHVsZSB1cG9uIGluaXQuIFRoaXMgaXMgZG9hYmxlIGJ1dAp3ZSdkIGxv b3NlIG91dCBvbiB0aGUgc29ydGluZyBvZiB0aGUgdGFibGUgdXNpbmcgdGhlCmxpbmtlciwgdG8g c29ydCB3ZSdkIGFsd2F5cyBzdGlsbCBuZWVkIHRvIGV4cGFuZCB0aGUKbW9kdWxlIGNvbW1vbiBs aW5rZXIgc2NyaXB0LiBBbiBhbHRlcm5hdGl2ZSBtZWNoYW5pc20KaXMgcG9zc2libGUgd2hpY2gg d291bGQgbWFrZSB0aGVzZSBjdXN0b20gbW9kdWxlIHNlY3Rpb25zCmV4dGVuc2lvbnMgZHluYW1p YyB3aXRob3V0IHJlcXVpcmluZyBtYW51YWwgY2hhbmdlcywgdGhpcwpob3dldmVyIGlzIGJlc3Qg ZG9uZSBsYXRlciB0aHJvdWdoIGEgc2VwYXJhdGUgZXZvbHV0aW9uCm9uY2UgbGlua2VyIHRhYmxl cyBhcmUgaW4gcGxhY2UuCgpBIGNhcmVmdWwgcmV2aWV3ZXIgbWF5IG5vdGUgdGhhdCBzb21lIGFy Y2hpdGVjdHVyZXMgdXNlCiJcblx0IiB0byBzZXBhcmF0ZSBhc20gY29kZSwgd2hpbGUgb3RoZXJz IGp1c3QgdXNlIGEgbmV3IGxpbmUuClVwb24gcmV2aWV3IGxhc3QgdGltZSBpdCB3YXMgZGVlbWVk IHJlYXNvbmFibGUgdG8gZm9yIGFsbAphcmNoaXRlY3R1cmVzIHRvIGp1c3QgdXNlICJcbiIsIHRo aXMgaXMgZGVmaW5lZCBhcyBBU01fQ01EX1NFUCwKYW5kIGlmIGFuIGFyY2hpdGVjdHVyZSBuZWVk cyB0byBvdmVycmlkZSB0aGV5IGNhbiBkbyBzbyBvbiB0aGVpcgphcmNoaXRlY3R1cmUgc2VjdGlv bnMuaCBwcmlvciB0byBpbmNsdWRpbmcgYXNtLWdlbmVyaWMvc2VjdGlvbnMuaAoKdjY6IHJlbmFt ZSB0YWJsZSBtYWNybyBhcyBzdWdnZXN0ZWQgYnkgQW5keSBTaGV2Y2hlbmtvCgp2NToKCm8gVXNl IC4udGJsIGluc3RlYWQgb2YgLnRibCBhcyBzdWdnZXN0ZWQgYnkgTmljaG9sYXMgUGlnZ2luLgog IFRoaXMgaXMgdGhlIHR5cGljYWwgd2F5IHRvIGF2b2lkIGNsYXNoIHdpdGggY29tcGlsZXIgZ2Vu ZXJhdGVkCiAgc2VjdGlvbi4KCm8gUmVwbGFjZSBzZWN0aW9uIG1hY3JvcyB3aXRoIHNlY3Rpb24g bmFtZXMKCm8gVXNlIExJTktUQUJMRV9TVEFSVCgpIGFuZCBMSU5LVEFCTEVfRU5EKCkKCm8gZml4 ZWQgdGlsZSBqdW1wIGxhYmVsIHBvcnQgLS0gdGlsZSBnb3QganVtcCBsYWJlbCBzdXBwb3J0IGFz IG9mIGNvbW1pdAogIDY1YTc5MmU4NGYyNWQxICgidGlsZS9qdW1wX2xhYmVsOiBhZGQganVtcCBs YWJlbCBzdXBwb3J0IGZvciBUSUxFLUd4IiksCiAgYXMgc3VjaCB3ZSBqdXN0IG5lZWRlZCB0byBh ZGp1c3QgdGhlIGFzbSB0byBhY2NvdW50IGZvciB0aGUgbmV3CiAgbGlua2VyIHRhYmxlIEFQSSB1 c2UuIFRoaXMgY29tbWl0IHdhcyBtZXJnZWQgYXMgb2YgdjQuNS1yYzEuCgp2NDoKCm8gU29tZSBh cmNoaXRlY3R1cmVzIGFsbG93IGxpbmtlciBzY3JpcHRzIHRvIGZvbGxvdyBpbmNsdWRpbmcgaGVh ZGVyCiAgZmlsZXMsIHNvbWUgb3RoZXJzIGRvIG5vdCwgc28gaWYgeW91IG5lZWQgYSBoZWxwZXIg b24gYSBsaW5rZXIgc2NyaXB0CiAgeW91IG5lZWQgdG8gZXhwbGljaXRseSBpbmNsdWRlIGl0LiBT byBmb3IgaW5zdGFuY2UgYWx0aG91Z2gKICBzY3JpcHRzL21vZHVsZS1jb21tb24ubGRzLlMgaW5j bHVkZXMgPGFzbS90YWJsZXMuaD4gYW5kIHRoaXMgZmlsZQogIGluY2x1ZGVzIDxhc20vc2VjdGlv bi1jb3JlLmg+LCB5b3Ugc3RpbGwgbmVlZCB0byBleHBsaWNpdGx5CiAgaW5jbHVkZSBpdCBvbiB0 aGUgbGlua2VyIHNjcmlwdC4gVGhpcyBpc3N1ZSBpcyBwcmVzZW50IG9uIEFSTS4KCm8gYXMgcGVy IEpvc2ggUG9pbWJvZXVmIG9wZW4gY29kZSB0aGUgc2VjdGlvbiB0YWJsZSBuYW1lIGluc3RlYWQK ICBvZiBpbmNsdWRpbmcgdGhlIGtlcm5lbCBzZWN0aW9uIGhlYWRlcnMsIHRoZSBzaW1wbGljaXR5 IGFuZAogIGluZGVwZW5kZW5jZSBmcm9tIHRoZSBrZXJuZWwgaXMgcHJlZmVycmVkLgoKdjM6Cgpv IE1vcmUgZWxhYm9yYXRlIHRlc3RzIHBlcmZvcm1lZApvIGZpcnN0IG1vZHVsYXIgc3VwcG9ydCB1 c2UgY2FzZSwgbW9kdWxlIHRlc3RlZCB3YXMKICBDT05GSUdfVEVTVF9TVEFUSUNfS0VZUyAobGli L3Rlc3Rfc3RhdGljX2tleXMua28pLCB0aGlzCiAgcmVxdWlyZWQgdXMgdG8gZXh0ZW5kIG1vZHVs ZS1jb21tb24ubGRzLlMKbyB1c2UgZ2VuZXJpYyBwdXNoX3NlY3Rpb25fdGJsX2FueSgpIGZvciBh bGwgYXJjaGl0ZWN0dXJlcwpvIE1ha2VzIHVzZSBvZiBBU01fQ01EX1NFUCB0byBlbmFibGUgYXJj aGl0ZWN0dXJlcyB0byBvdmVycmlkZSBsYXRlcgogIGlmIG5lZWRlZApvIGd1YXJkIHRhYmxlcy5o IGluY2x1c2lvbiBhbmQgdGFibGUgZGVmaW5pdGlvbiB3aXRoIF9fS0VSTkVMX18KCnYyOiBpbnRy b2R1Y2VkIGluIHRoaXMgc2VyaWVzCgpTaWduZWQtb2ZmLWJ5OiBMdWlzIFIuIFJvZHJpZ3VleiA8 bWNncm9mQGtlcm5lbC5vcmc+Ci0tLQogYXJjaC9hcm0vaW5jbHVkZS9hc20vanVtcF9sYWJlbC5o ICAgICB8ICA2ICsrKystLQogYXJjaC9hcm02NC9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmggICB8 ICA2ICsrKystLQogYXJjaC9taXBzL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCAgICB8ICA2ICsr KystLQogYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCB8ICA4ICsrKysrLS0t CiBhcmNoL3MzOTAvaW5jbHVkZS9hc20vanVtcF9sYWJlbC5oICAgIHwgIDYgKysrKy0tCiBhcmNo L3NwYXJjL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCAgIHwgIDYgKysrKy0tCiBhcmNoL3RpbGUv aW5jbHVkZS9hc20vanVtcF9sYWJlbC5oICAgIHwgIDUgKysrLS0KIGFyY2gveDg2L2luY2x1ZGUv YXNtL2p1bXBfbGFiZWwuaCAgICAgfCAxMCArKysrKystLS0tCiBpbmNsdWRlL2FzbS1nZW5lcmlj L3ZtbGludXgubGRzLmggICAgIHwgIDUgLS0tLS0KIGluY2x1ZGUvbGludXgvanVtcF9sYWJlbC5o ICAgICAgICAgICAgfCAgNCArKy0tCiBrZXJuZWwvanVtcF9sYWJlbC5jICAgICAgICAgICAgICAg ICAgIHwgMTcgKysrKysrKysrKy0tLS0tLS0KIHNjcmlwdHMvbW9kdWxlLWNvbW1vbi5sZHMgICAg ICAgICAgICAgfCAgMSArCiB0b29scy9vYmp0b29sL3NwZWNpYWwuYyAgICAgICAgICAgICAgIHwg IDIgKy0KIDEzIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCBiL2FyY2gv YXJtL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaAppbmRleCAzNGY3YjY5ODBkMjEuLjYwOWUwNTky YTk0MiAxMDA2NDQKLS0tIGEvYXJjaC9hcm0vaW5jbHVkZS9hc20vanVtcF9sYWJlbC5oCisrKyBi L2FyY2gvYXJtL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApAQCAtMSw2ICsxLDggQEAKICNpZm5k ZWYgX0FTTV9BUk1fSlVNUF9MQUJFTF9ICiAjZGVmaW5lIF9BU01fQVJNX0pVTVBfTEFCRUxfSAog CisjaW5jbHVkZSA8YXNtL3RhYmxlcy5oPgorCiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogCiAjaW5j bHVkZSA8bGludXgvdHlwZXMuaD4KQEAgLTEyLDcgKzE0LDcgQEAgc3RhdGljIF9fYWx3YXlzX2lu bGluZSBib29sIGFyY2hfc3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29s IGJyYW4KIHsKIAlhc21fdm9sYXRpbGVfZ290bygiMTpcblx0IgogCQkgV0FTTShub3ApICJcblx0 IgotCQkgIi5wdXNoc2VjdGlvbiBfX2p1bXBfdGFibGUsICBcImF3XCJcblx0IgorCQkgcHVzaF9z ZWN0aW9uX3RibF9hbnkoLmRhdGEsIF9fanVtcF90YWJsZSwgYXcpCiAJCSAiLndvcmQgMWIsICVs W2xfeWVzXSwgJWMwXG5cdCIKIAkJICIucG9wc2VjdGlvblxuXHQiCiAJCSA6IDogICJpIiAoJigo Y2hhciAqKWtleSlbYnJhbmNoXSkgOiAgOiBsX3llcyk7CkBAIC0yNiw3ICsyOCw3IEBAIHN0YXRp YyBfX2Fsd2F5c19pbmxpbmUgYm9vbCBhcmNoX3N0YXRpY19icmFuY2hfanVtcChzdHJ1Y3Qgc3Rh dGljX2tleSAqa2V5LCBib29sCiB7CiAJYXNtX3ZvbGF0aWxlX2dvdG8oIjE6XG5cdCIKIAkJIFdB U00oYikgIiAlbFtsX3llc11cblx0IgotCQkgIi5wdXNoc2VjdGlvbiBfX2p1bXBfdGFibGUsICBc ImF3XCJcblx0IgorCQkgcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRhdGEsIF9fanVtcF90YWJsZSwg YXcpCiAJCSAiLndvcmQgMWIsICVsW2xfeWVzXSwgJWMwXG5cdCIKIAkJICIucG9wc2VjdGlvblxu XHQiCiAJCSA6IDogICJpIiAoJigoY2hhciAqKWtleSlbYnJhbmNoXSkgOiAgOiBsX3llcyk7CmRp ZmYgLS1naXQgYS9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCBiL2FyY2gvYXJt NjQvaW5jbHVkZS9hc20vanVtcF9sYWJlbC5oCmluZGV4IDFiNWUwZTg0M2MzYS4uYmI1NmFjNGZh ZmI1IDEwMDY0NAotLS0gYS9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaAorKysg Yi9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApAQCAtMTksNiArMTksOCBAQAog I2lmbmRlZiBfX0FTTV9KVU1QX0xBQkVMX0gKICNkZWZpbmUgX19BU01fSlVNUF9MQUJFTF9ICiAK KyNpbmNsdWRlIDxhc20vdGFibGVzLmg+CisKICNpZm5kZWYgX19BU1NFTUJMWV9fCiAKICNpbmNs dWRlIDxsaW51eC90eXBlcy5oPgpAQCAtMjksNyArMzEsNyBAQAogc3RhdGljIF9fYWx3YXlzX2lu bGluZSBib29sIGFyY2hfc3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29s IGJyYW5jaCkKIHsKIAlhc20gZ290bygiMTogbm9wXG5cdCIKLQkJICIucHVzaHNlY3Rpb24gX19q dW1wX3RhYmxlLCAgXCJhd1wiXG5cdCIKKwkJIHB1c2hfc2VjdGlvbl90YmxfYW55KC5kYXRhLCBf X2p1bXBfdGFibGUsIGF3KQogCQkgIi5hbGlnbiAzXG5cdCIKIAkJICIucXVhZCAxYiwgJWxbbF95 ZXNdLCAlYzBcblx0IgogCQkgIi5wb3BzZWN0aW9uXG5cdCIKQEAgLTQzLDcgKzQ1LDcgQEAgc3Rh dGljIF9fYWx3YXlzX2lubGluZSBib29sIGFyY2hfc3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3RhdGlj X2tleSAqa2V5LCBib29sIGJyYW4KIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgYm9vbCBhcmNoX3N0 YXRpY19icmFuY2hfanVtcChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29sIGJyYW5jaCkKIHsK IAlhc20gZ290bygiMTogYiAlbFtsX3llc11cblx0IgotCQkgIi5wdXNoc2VjdGlvbiBfX2p1bXBf dGFibGUsICBcImF3XCJcblx0IgorCQkgcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRhdGEsIF9fanVt cF90YWJsZSwgYXcpCiAJCSAiLmFsaWduIDNcblx0IgogCQkgIi5xdWFkIDFiLCAlbFtsX3llc10s ICVjMFxuXHQiCiAJCSAiLnBvcHNlY3Rpb25cblx0IgpkaWZmIC0tZ2l0IGEvYXJjaC9taXBzL2lu Y2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCBiL2FyY2gvbWlwcy9pbmNsdWRlL2FzbS9qdW1wX2xhYmVs LmgKaW5kZXggZTc3NjcyNTM5ZThlLi4wNzI4OWExYjFiY2QgMTAwNjQ0Ci0tLSBhL2FyY2gvbWlw cy9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgKKysrIGIvYXJjaC9taXBzL2luY2x1ZGUvYXNtL2p1 bXBfbGFiZWwuaApAQCAtOCw2ICs4LDggQEAKICNpZm5kZWYgX0FTTV9NSVBTX0pVTVBfTEFCRUxf SAogI2RlZmluZSBfQVNNX01JUFNfSlVNUF9MQUJFTF9ICiAKKyNpbmNsdWRlIDxhc20vdGFibGVz Lmg+CisKICNpZm5kZWYgX19BU1NFTUJMWV9fCiAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgpA QCAtMzAsNyArMzIsNyBAQCBzdGF0aWMgX19hbHdheXNfaW5saW5lIGJvb2wgYXJjaF9zdGF0aWNf YnJhbmNoKHN0cnVjdCBzdGF0aWNfa2V5ICprZXksIGJvb2wgYnJhbgogewogCWFzbV92b2xhdGls ZV9nb3RvKCIxOlx0IiBOT1BfSU5TTiAiXG5cdCIKIAkJIm5vcFxuXHQiCi0JCSIucHVzaHNlY3Rp b24gX19qdW1wX3RhYmxlLCAgXCJhd1wiXG5cdCIKKwkJcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRh dGEsIF9fanVtcF90YWJsZSwgYXcpCiAJCVdPUkRfSU5TTiAiIDFiLCAlbFtsX3llc10sICUwXG5c dCIKIAkJIi5wb3BzZWN0aW9uXG5cdCIKIAkJOiA6ICAiaSIgKCYoKGNoYXIgKilrZXkpW2JyYW5j aF0pIDogOiBsX3llcyk7CkBAIC00NCw3ICs0Niw3IEBAIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUg Ym9vbCBhcmNoX3N0YXRpY19icmFuY2hfanVtcChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29s CiB7CiAJYXNtX3ZvbGF0aWxlX2dvdG8oIjE6XHRqICVsW2xfeWVzXVxuXHQiCiAJCSJub3Bcblx0 IgotCQkiLnB1c2hzZWN0aW9uIF9fanVtcF90YWJsZSwgIFwiYXdcIlxuXHQiCisJCXB1c2hfc2Vj dGlvbl90YmxfYW55KC5kYXRhLCBfX2p1bXBfdGFibGUsIGF3KQogCQlXT1JEX0lOU04gIiAxYiwg JWxbbF95ZXNdLCAlMFxuXHQiCiAJCSIucG9wc2VjdGlvblxuXHQiCiAJCTogOiAgImkiICgmKChj aGFyICopa2V5KVticmFuY2hdKSA6IDogbF95ZXMpOwpkaWZmIC0tZ2l0IGEvYXJjaC9wb3dlcnBj L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCBiL2FyY2gvcG93ZXJwYy9pbmNsdWRlL2FzbS9qdW1w X2xhYmVsLmgKaW5kZXggOWEyODdlMGFjOGIxLi43YTc1NjIzNzQwZDAgMTAwNjQ0Ci0tLSBhL2Fy Y2gvcG93ZXJwYy9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgKKysrIGIvYXJjaC9wb3dlcnBjL2lu Y2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApAQCAtMTAsNiArMTAsOCBAQAogICogMiBvZiB0aGUgTGlj ZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICAqLwogCisjaW5j bHVkZSA8YXNtL3RhYmxlcy5oPgorCiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogI2luY2x1ZGUgPGxp bnV4L3R5cGVzLmg+CiAKQEAgLTIzLDcgKzI1LDcgQEAgc3RhdGljIF9fYWx3YXlzX2lubGluZSBi b29sIGFyY2hfc3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29sIGJyYW4K IHsKIAlhc21fdm9sYXRpbGVfZ290bygiMTpcblx0IgogCQkgIm5vcCAjIGFyY2hfc3RhdGljX2Jy YW5jaFxuXHQiCi0JCSAiLnB1c2hzZWN0aW9uIF9fanVtcF90YWJsZSwgIFwiYXdcIlxuXHQiCisJ CSBwdXNoX3NlY3Rpb25fdGJsX2FueSguZGF0YSwgX19qdW1wX3RhYmxlLCBhdykKIAkJIEpVTVBf RU5UUllfVFlQRSAiMWIsICVsW2xfeWVzXSwgJWMwXG5cdCIKIAkJICIucG9wc2VjdGlvbiBcblx0 IgogCQkgOiA6ICAiaSIgKCYoKGNoYXIgKilrZXkpW2JyYW5jaF0pIDogOiBsX3llcyk7CkBAIC0z Nyw3ICszOSw3IEBAIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgYm9vbCBhcmNoX3N0YXRpY19icmFu Y2hfanVtcChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29sCiB7CiAJYXNtX3ZvbGF0aWxlX2dv dG8oIjE6XG5cdCIKIAkJICJiICVsW2xfeWVzXSAjIGFyY2hfc3RhdGljX2JyYW5jaF9qdW1wXG5c dCIKLQkJICIucHVzaHNlY3Rpb24gX19qdW1wX3RhYmxlLCAgXCJhd1wiXG5cdCIKKwkJIHB1c2hf c2VjdGlvbl90YmxfYW55KC5kYXRhLCBfX2p1bXBfdGFibGUsIGF3KQogCQkgSlVNUF9FTlRSWV9U WVBFICIxYiwgJWxbbF95ZXNdLCAlYzBcblx0IgogCQkgIi5wb3BzZWN0aW9uIFxuXHQiCiAJCSA6 IDogICJpIiAoJigoY2hhciAqKWtleSlbYnJhbmNoXSkgOiA6IGxfeWVzKTsKQEAgLTYyLDcgKzY0 LDcgQEAgc3RydWN0IGp1bXBfZW50cnkgewogI2Vsc2UKICNkZWZpbmUgQVJDSF9TVEFUSUNfQlJB TkNIKExBQkVMLCBLRVkpCQlcCiAxMDk4Oglub3A7CQkJCQlcCi0JLnB1c2hzZWN0aW9uIF9fanVt cF90YWJsZSwgImF3IjsJXAorCXB1c2hfc2VjdGlvbl90YmxfYW55KC5kYXRhLCBfX2p1bXBfdGFi bGUsIGF3KTsgXAogCUZUUl9FTlRSWV9MT05HIDEwOThiLCBMQUJFTCwgS0VZOwlcCiAJLnBvcHNl Y3Rpb24KICNlbmRpZgpkaWZmIC0tZ2l0IGEvYXJjaC9zMzkwL2luY2x1ZGUvYXNtL2p1bXBfbGFi ZWwuaCBiL2FyY2gvczM5MC9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgKaW5kZXggOWJlMTk4ZjVl ZTc5Li41OGU1M2FmNDllN2UgMTAwNjQ0Ci0tLSBhL2FyY2gvczM5MC9pbmNsdWRlL2FzbS9qdW1w X2xhYmVsLmgKKysrIGIvYXJjaC9zMzkwL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApAQCAtMSw2 ICsxLDggQEAKICNpZm5kZWYgX0FTTV9TMzkwX0pVTVBfTEFCRUxfSAogI2RlZmluZSBfQVNNX1Mz OTBfSlVNUF9MQUJFTF9ICiAKKyNpbmNsdWRlIDxhc20vdGFibGVzLmg+CisKICNpZm5kZWYgX19B U1NFTUJMWV9fCiAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgpAQCAtMTYsNyArMTgsNyBAQAog c3RhdGljIF9fYWx3YXlzX2lubGluZSBib29sIGFyY2hfc3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3Rh dGljX2tleSAqa2V5LCBib29sIGJyYW5jaCkKIHsKIAlhc21fdm9sYXRpbGVfZ290bygiMDoJYnJj bCAwLCJfX3N0cmluZ2lmeShKVU1QX0xBQkVMX05PUF9PRkZTRVQpIlxuIgotCQkiLnB1c2hzZWN0 aW9uIF9fanVtcF90YWJsZSwgXCJhd1wiXG4iCisJCXB1c2hfc2VjdGlvbl90YmxfYW55KC5kYXRh LCBfX2p1bXBfdGFibGUsIGF3KQogCQkiLmJhbGlnbiA4XG4iCiAJCSIucXVhZCAwYiwgJWxbbGFi ZWxdLCAlMFxuIgogCQkiLnBvcHNlY3Rpb25cbiIKQEAgLTMwLDcgKzMyLDcgQEAgc3RhdGljIF9f YWx3YXlzX2lubGluZSBib29sIGFyY2hfc3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3RhdGljX2tleSAq a2V5LCBib29sIGJyYW4KIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgYm9vbCBhcmNoX3N0YXRpY19i cmFuY2hfanVtcChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LCBib29sIGJyYW5jaCkKIHsKIAlhc21f dm9sYXRpbGVfZ290bygiMDoJYnJjbCAxNSwgJWxbbGFiZWxdXG4iCi0JCSIucHVzaHNlY3Rpb24g X19qdW1wX3RhYmxlLCBcImF3XCJcbiIKKwkJcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRhdGEsIF9f anVtcF90YWJsZSwgYXcpCiAJCSIuYmFsaWduIDhcbiIKIAkJIi5xdWFkIDBiLCAlbFtsYWJlbF0s ICUwXG4iCiAJCSIucG9wc2VjdGlvblxuIgpkaWZmIC0tZ2l0IGEvYXJjaC9zcGFyYy9pbmNsdWRl L2FzbS9qdW1wX2xhYmVsLmggYi9hcmNoL3NwYXJjL2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApp bmRleCA2MmQwMzU0ZDE3MjcuLjM1ZDNlNWQzMTgyMSAxMDA2NDQKLS0tIGEvYXJjaC9zcGFyYy9p bmNsdWRlL2FzbS9qdW1wX2xhYmVsLmgKKysrIGIvYXJjaC9zcGFyYy9pbmNsdWRlL2FzbS9qdW1w X2xhYmVsLmgKQEAgLTEsNiArMSw4IEBACiAjaWZuZGVmIF9BU01fU1BBUkNfSlVNUF9MQUJFTF9I CiAjZGVmaW5lIF9BU01fU1BBUkNfSlVNUF9MQUJFTF9ICiAKKyNpbmNsdWRlIDxhc20vdGFibGVz Lmg+CisKICNpZm5kZWYgX19BU1NFTUJMWV9fCiAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgpA QCAtMTIsNyArMTQsNyBAQCBzdGF0aWMgX19hbHdheXNfaW5saW5lIGJvb2wgYXJjaF9zdGF0aWNf YnJhbmNoKHN0cnVjdCBzdGF0aWNfa2V5ICprZXksIGJvb2wgYnJhbgogCWFzbV92b2xhdGlsZV9n b3RvKCIxOlxuXHQiCiAJCSAibm9wXG5cdCIKIAkJICJub3Bcblx0IgotCQkgIi5wdXNoc2VjdGlv biBfX2p1bXBfdGFibGUsICBcImF3XCJcblx0IgorCQkgcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRh dGEsIF9fanVtcF90YWJsZSwgYXcpCiAJCSAiLmFsaWduIDRcblx0IgogCQkgIi53b3JkIDFiLCAl bFtsX3llc10sICVjMFxuXHQiCiAJCSAiLnBvcHNlY3Rpb24gXG5cdCIKQEAgLTI4LDcgKzMwLDcg QEAgc3RhdGljIF9fYWx3YXlzX2lubGluZSBib29sIGFyY2hfc3RhdGljX2JyYW5jaF9qdW1wKHN0 cnVjdCBzdGF0aWNfa2V5ICprZXksIGJvb2wKIAlhc21fdm9sYXRpbGVfZ290bygiMTpcblx0Igog CQkgImIgJWxbbF95ZXNdXG5cdCIKIAkJICJub3Bcblx0IgotCQkgIi5wdXNoc2VjdGlvbiBfX2p1 bXBfdGFibGUsICBcImF3XCJcblx0IgorCQkgcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRhdGEsIF9f anVtcF90YWJsZSwgYXcpCiAJCSAiLmFsaWduIDRcblx0IgogCQkgIi53b3JkIDFiLCAlbFtsX3ll c10sICVjMFxuXHQiCiAJCSAiLnBvcHNlY3Rpb24gXG5cdCIKZGlmZiAtLWdpdCBhL2FyY2gvdGls ZS9pbmNsdWRlL2FzbS9qdW1wX2xhYmVsLmggYi9hcmNoL3RpbGUvaW5jbHVkZS9hc20vanVtcF9s YWJlbC5oCmluZGV4IGNkZTc1NzNmMzk3Yi4uOWJkOTg5ZGFhZDRhIDEwMDY0NAotLS0gYS9hcmNo L3RpbGUvaW5jbHVkZS9hc20vanVtcF9sYWJlbC5oCisrKyBiL2FyY2gvdGlsZS9pbmNsdWRlL2Fz bS9qdW1wX2xhYmVsLmgKQEAgLTE2LDYgKzE2LDcgQEAKICNkZWZpbmUgX0FTTV9USUxFX0pVTVBf TEFCRUxfSAogCiAjaW5jbHVkZSA8YXJjaC9vcGNvZGUuaD4KKyNpbmNsdWRlIDxhc20vdGFibGVz Lmg+CiAKICNkZWZpbmUgSlVNUF9MQUJFTF9OT1BfU0laRQlUSUxFX0JVTkRMRV9TSVpFX0lOX0JZ VEVTCiAKQEAgLTI0LDcgKzI1LDcgQEAgc3RhdGljIF9fYWx3YXlzX2lubGluZSBib29sIGFyY2hf c3RhdGljX2JyYW5jaChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LAogewogCWFzbV92b2xhdGlsZV9n b3RvKCIxOlxuXHQiCiAJCSJub3AiICJcblx0IgotCQkiLnB1c2hzZWN0aW9uIF9fanVtcF90YWJs ZSwgIFwiYXdcIlxuXHQiCisJCXB1c2hfc2VjdGlvbl90YmxfYW55KC5kYXRhLCBfX2p1bXBfdGFi bGUsIGF3KQogCQkiLnF1YWQgMWIsICVsW2xfeWVzXSwgJTAgKyAlMSBcblx0IgogCQkiLnBvcHNl Y3Rpb25cblx0IgogCQk6IDogICJpIiAoa2V5KSwgImkiIChicmFuY2gpIDogOiBsX3llcyk7CkBA IC0zOCw3ICszOSw3IEBAIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgYm9vbCBhcmNoX3N0YXRpY19i cmFuY2hfanVtcChzdHJ1Y3Qgc3RhdGljX2tleSAqa2V5LAogewogCWFzbV92b2xhdGlsZV9nb3Rv KCIxOlxuXHQiCiAJCSJqICVsW2xfeWVzXSIgIlxuXHQiCi0JCSIucHVzaHNlY3Rpb24gX19qdW1w X3RhYmxlLCAgXCJhd1wiXG5cdCIKKwkJcHVzaF9zZWN0aW9uX3RibF9hbnkoLmRhdGEsIF9fanVt cF90YWJsZSwgYXcpCiAJCSIucXVhZCAxYiwgJWxbbF95ZXNdLCAlMCArICUxIFxuXHQiCiAJCSIu cG9wc2VjdGlvblxuXHQiCiAJCTogOiAgImkiIChrZXkpLCAiaSIgKGJyYW5jaCkgOiA6IGxfeWVz KTsKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaCBiL2FyY2gv eDg2L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaAppbmRleCBhZGM1NGMxMmNiZDEuLjYyN2RmNDc1 MmRiMCAxMDA2NDQKLS0tIGEvYXJjaC94ODYvaW5jbHVkZS9hc20vanVtcF9sYWJlbC5oCisrKyBi L2FyY2gveDg2L2luY2x1ZGUvYXNtL2p1bXBfbGFiZWwuaApAQCAtMSw2ICsxLDggQEAKICNpZm5k ZWYgX0FTTV9YODZfSlVNUF9MQUJFTF9ICiAjZGVmaW5lIF9BU01fWDg2X0pVTVBfTEFCRUxfSAog CisjaW5jbHVkZSA8YXNtL3RhYmxlcy5oPgorCiAjaWZuZGVmIEhBVkVfSlVNUF9MQUJFTAogLyoK ICAqIEZvciBiZXR0ZXIgb3IgZm9yIHdvcnNlLCBpZiBqdW1wIGxhYmVscyAodGhlIGdjYyBleHRl bnNpb24pIGFyZSBtaXNzaW5nLApAQCAtMzQsNyArMzYsNyBAQCBzdGF0aWMgX19hbHdheXNfaW5s aW5lIGJvb2wgYXJjaF9zdGF0aWNfYnJhbmNoKHN0cnVjdCBzdGF0aWNfa2V5ICprZXksIGJvb2wg YnJhbgogewogCWFzbV92b2xhdGlsZV9nb3RvKCIxOiIKIAkJIi5ieXRlICIgX19zdHJpbmdpZnko U1RBVElDX0tFWV9JTklUX05PUCkgIlxuXHQiCi0JCSIucHVzaHNlY3Rpb24gX19qdW1wX3RhYmxl LCAgXCJhd1wiIFxuXHQiCisJCXB1c2hfc2VjdGlvbl90YmxfYW55KC5kYXRhLCBfX2p1bXBfdGFi bGUsIGF3KQogCQlfQVNNX0FMSUdOICJcblx0IgogCQlfQVNNX1BUUiAiMWIsICVsW2xfeWVzXSwg JWMwICsgJWMxIFxuXHQiCiAJCSIucG9wc2VjdGlvbiBcblx0IgpAQCAtNTAsNyArNTIsNyBAQCBz dGF0aWMgX19hbHdheXNfaW5saW5lIGJvb2wgYXJjaF9zdGF0aWNfYnJhbmNoX2p1bXAoc3RydWN0 IHN0YXRpY19rZXkgKmtleSwgYm9vbAogCWFzbV92b2xhdGlsZV9nb3RvKCIxOiIKIAkJIi5ieXRl IDB4ZTlcblx0IC5sb25nICVsW2xfeWVzXSAtIDJmXG5cdCIKIAkJIjI6XG5cdCIKLQkJIi5wdXNo c2VjdGlvbiBfX2p1bXBfdGFibGUsICBcImF3XCIgXG5cdCIKKwkJcHVzaF9zZWN0aW9uX3RibF9h bnkoLmRhdGEsIF9fanVtcF90YWJsZSwgYXcpCiAJCV9BU01fQUxJR04gIlxuXHQiCiAJCV9BU01f UFRSICIxYiwgJWxbbF95ZXNdLCAlYzAgKyAlYzEgXG5cdCIKIAkJIi5wb3BzZWN0aW9uIFxuXHQi CkBAIC04NSw3ICs4Nyw3IEBAIHN0cnVjdCBqdW1wX2VudHJ5IHsKIAkuZWxzZQogCS5ieXRlCQlT VEFUSUNfS0VZX0lOSVRfTk9QCiAJLmVuZGlmCi0JLnB1c2hzZWN0aW9uIF9fanVtcF90YWJsZSwg ImF3IgorCXB1c2hfc2VjdGlvbl90YmxfYW55KC5kYXRhLCBfX2p1bXBfdGFibGUsIGF3KQogCV9B U01fQUxJR04KIAlfQVNNX1BUUgkuTHN0YXRpY19qdW1wX1xALCBcdGFyZ2V0LCBca2V5CiAJLnBv cHNlY3Rpb24KQEAgLTEwMSw3ICsxMDMsNyBAQCBzdHJ1Y3QganVtcF9lbnRyeSB7CiAJLmxvbmcJ CVx0YXJnZXQgLSAuTHN0YXRpY19qdW1wX2FmdGVyX1xACiAuTHN0YXRpY19qdW1wX2FmdGVyX1xA OgogCS5lbmRpZgotCS5wdXNoc2VjdGlvbiBfX2p1bXBfdGFibGUsICJhdyIKKwlwdXNoX3NlY3Rp b25fdGJsX2FueSguZGF0YSwgX19qdW1wX3RhYmxlLCBhdykKIAlfQVNNX0FMSUdOCiAJX0FTTV9Q VFIJLkxzdGF0aWNfanVtcF9cQCwgXHRhcmdldCwgXGtleSArIDEKIAkucG9wc2VjdGlvbgpkaWZm IC0tZ2l0IGEvaW5jbHVkZS9hc20tZ2VuZXJpYy92bWxpbnV4Lmxkcy5oIGIvaW5jbHVkZS9hc20t Z2VuZXJpYy92bWxpbnV4Lmxkcy5oCmluZGV4IDhhNTMyNWQ3NTkzMi4uODg3ZDg0NGYwNDA2IDEw MDY0NAotLS0gYS9pbmNsdWRlL2FzbS1nZW5lcmljL3ZtbGludXgubGRzLmgKKysrIGIvaW5jbHVk ZS9hc20tZ2VuZXJpYy92bWxpbnV4Lmxkcy5oCkBAIC0yMTYsMTEgKzIxNiw2IEBACiAJKiguZGF0 YS51bmxpa2VseSkJCQkJCQlcCiAJU1RSVUNUX0FMSUdOKCk7CQkJCQkJCVwKIAkqKF9fdHJhY2Vw b2ludHMpCQkJCQkJXAotCS8qIGltcGxlbWVudCBkeW5hbWljIHByaW50ayBkZWJ1ZyAqLwkJCQlc Ci0JLiA9IEFMSUdOKDgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLQlWTUxJTlVYX1NZTUJPTChfX3N0YXJ0X19fanVtcF90YWJsZSkgPSAuOyAg ICAgICAgICAgICAgICAgICAgICAgXAotCUtFRVAoKihfX2p1bXBfdGFibGUpKSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JVk1MSU5VWF9TWU1CT0woX19zdG9w X19fanVtcF90YWJsZSkgPSAuOyAgICAgICAgICAgICAgICAgICAgICAgIFwKIAkuID0gQUxJR04o OCk7CQkJCQkJCVwKIAlWTUxJTlVYX1NZTUJPTChfX3N0YXJ0X19fdmVyYm9zZSkgPSAuOyAgICAg ICAgICAgICAgICAgICAgICAgICAgXAogCUtFRVAoKihfX3ZlcmJvc2UpKSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xp bnV4L2p1bXBfbGFiZWwuaCBiL2luY2x1ZGUvbGludXgvanVtcF9sYWJlbC5oCmluZGV4IGI2M2Q2 YjdiMGRiMC4uZTYyNzc4ODhiNTU4IDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L2p1bXBfbGFi ZWwuaAorKysgYi9pbmNsdWRlL2xpbnV4L2p1bXBfbGFiZWwuaApAQCAtMTE3LDYgKzExNyw3IEBA IGVudW0ganVtcF9sYWJlbF90eXBlIHsKIHN0cnVjdCBtb2R1bGU7CiAKICNpZmRlZiBIQVZFX0pV TVBfTEFCRUwKKyNpbmNsdWRlIDxsaW51eC90YWJsZXMuaD4KIAogI2RlZmluZSBKVU1QX1RZUEVf RkFMU0UJMFVMCiAjZGVmaW5lIEpVTVBfVFlQRV9UUlVFCTFVTApAQCAtMTMyLDggKzEzMyw3IEBA IHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgYm9vbCBzdGF0aWNfa2V5X3RydWUoc3RydWN0IHN0YXRp Y19rZXkgKmtleSkKIAlyZXR1cm4gIWFyY2hfc3RhdGljX2JyYW5jaChrZXksIHRydWUpOwogfQog Ci1leHRlcm4gc3RydWN0IGp1bXBfZW50cnkgX19zdGFydF9fX2p1bXBfdGFibGVbXTsKLWV4dGVy biBzdHJ1Y3QganVtcF9lbnRyeSBfX3N0b3BfX19qdW1wX3RhYmxlW107CitERUNMQVJFX0xJTktU QUJMRShzdHJ1Y3QganVtcF9lbnRyeSwgX19qdW1wX3RhYmxlKTsKIAogZXh0ZXJuIHZvaWQganVt cF9sYWJlbF9pbml0KHZvaWQpOwogZXh0ZXJuIHZvaWQganVtcF9sYWJlbF9sb2NrKHZvaWQpOwpk aWZmIC0tZ2l0IGEva2VybmVsL2p1bXBfbGFiZWwuYyBiL2tlcm5lbC9qdW1wX2xhYmVsLmMKaW5k ZXggOTNhZDZjMWZiOWI2Li40MjUyZjE3ZWFlYjUgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9qdW1wX2xh YmVsLmMKKysrIGIva2VybmVsL2p1bXBfbGFiZWwuYwpAQCAtMTUsOSArMTUsMTIgQEAKICNpbmNs dWRlIDxsaW51eC9zdGF0aWNfa2V5Lmg+CiAjaW5jbHVkZSA8bGludXgvanVtcF9sYWJlbF9yYXRl bGltaXQuaD4KICNpbmNsdWRlIDxsaW51eC9idWcuaD4KKyNpbmNsdWRlIDxsaW51eC90YWJsZXMu aD4KIAogI2lmZGVmIEhBVkVfSlVNUF9MQUJFTAogCitERUZJTkVfTElOS1RBQkxFKHN0cnVjdCBq dW1wX2VudHJ5LCBfX2p1bXBfdGFibGUpOworCiAvKiBtdXRleCB0byBwcm90ZWN0IGNvbWluZy9n b2luZyBvZiB0aGUgdGhlIGp1bXBfbGFiZWwgdGFibGUgKi8KIHN0YXRpYyBERUZJTkVfTVVURVgo anVtcF9sYWJlbF9tdXRleCk7CiAKQEAgLTI3NCw4ICsyNzcsNiBAQCBzdGF0aWMgdm9pZCBfX2p1 bXBfbGFiZWxfdXBkYXRlKHN0cnVjdCBzdGF0aWNfa2V5ICprZXksCiAKIHZvaWQgX19pbml0IGp1 bXBfbGFiZWxfaW5pdCh2b2lkKQogewotCXN0cnVjdCBqdW1wX2VudHJ5ICppdGVyX3N0YXJ0ID0g X19zdGFydF9fX2p1bXBfdGFibGU7Ci0Jc3RydWN0IGp1bXBfZW50cnkgKml0ZXJfc3RvcCA9IF9f c3RvcF9fX2p1bXBfdGFibGU7CiAJc3RydWN0IHN0YXRpY19rZXkgKmtleSA9IE5VTEw7CiAJc3Ry dWN0IGp1bXBfZW50cnkgKml0ZXI7CiAKQEAgLTI5Miw5ICsyOTMsMTAgQEAgdm9pZCBfX2luaXQg anVtcF9sYWJlbF9pbml0KHZvaWQpCiAJCXJldHVybjsKIAogCWp1bXBfbGFiZWxfbG9jaygpOwot CWp1bXBfbGFiZWxfc29ydF9lbnRyaWVzKGl0ZXJfc3RhcnQsIGl0ZXJfc3RvcCk7CisJanVtcF9s YWJlbF9zb3J0X2VudHJpZXMoTElOS1RBQkxFX1NUQVJUKF9fanVtcF90YWJsZSksCisJCQkJTElO S1RBQkxFX0VORChfX2p1bXBfdGFibGUpKTsKIAotCWZvciAoaXRlciA9IGl0ZXJfc3RhcnQ7IGl0 ZXIgPCBpdGVyX3N0b3A7IGl0ZXIrKykgeworCWxpbmt0YWJsZV9mb3JfZWFjaChpdGVyLCBfX2p1 bXBfdGFibGUpIHsKIAkJc3RydWN0IHN0YXRpY19rZXkgKml0ZXJrOwogCiAJCS8qIHJld3JpdGUg Tk9QcyAqLwpAQCAtNTM5LDggKzU0MSw5IEBAIGVhcmx5X2luaXRjYWxsKGp1bXBfbGFiZWxfaW5p dF9tb2R1bGUpOwogICovCiBpbnQganVtcF9sYWJlbF90ZXh0X3Jlc2VydmVkKHZvaWQgKnN0YXJ0 LCB2b2lkICplbmQpCiB7Ci0JaW50IHJldCA9IF9fanVtcF9sYWJlbF90ZXh0X3Jlc2VydmVkKF9f c3RhcnRfX19qdW1wX3RhYmxlLAotCQkJX19zdG9wX19fanVtcF90YWJsZSwgc3RhcnQsIGVuZCk7 CisJaW50IHJldCA9IF9fanVtcF9sYWJlbF90ZXh0X3Jlc2VydmVkKExJTktUQUJMRV9TVEFSVChf X2p1bXBfdGFibGUpLAorCQkJCQkgICAgIExJTktUQUJMRV9FTkQoX19qdW1wX3RhYmxlKSwKKwkJ CQkJICAgICBzdGFydCwgZW5kKTsKIAogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CkBAIC01NTMs NyArNTU2LDcgQEAgaW50IGp1bXBfbGFiZWxfdGV4dF9yZXNlcnZlZCh2b2lkICpzdGFydCwgdm9p ZCAqZW5kKQogCiBzdGF0aWMgdm9pZCBqdW1wX2xhYmVsX3VwZGF0ZShzdHJ1Y3Qgc3RhdGljX2tl eSAqa2V5KQogewotCXN0cnVjdCBqdW1wX2VudHJ5ICpzdG9wID0gX19zdG9wX19fanVtcF90YWJs ZTsKKwlzdHJ1Y3QganVtcF9lbnRyeSAqc3RvcCA9IExJTktUQUJMRV9FTkQoX19qdW1wX3RhYmxl KTsKIAlzdHJ1Y3QganVtcF9lbnRyeSAqZW50cnkgPSBzdGF0aWNfa2V5X2VudHJpZXMoa2V5KTsK ICNpZmRlZiBDT05GSUdfTU9EVUxFUwogCXN0cnVjdCBtb2R1bGUgKm1vZDsKZGlmZiAtLWdpdCBh L3NjcmlwdHMvbW9kdWxlLWNvbW1vbi5sZHMgYi9zY3JpcHRzL21vZHVsZS1jb21tb24ubGRzCmlu ZGV4IDczYTJjN2RhMGU1NS4uZGIwZTcyNDU1NmM1IDEwMDY0NAotLS0gYS9zY3JpcHRzL21vZHVs ZS1jb21tb24ubGRzCisrKyBiL3NjcmlwdHMvbW9kdWxlLWNvbW1vbi5sZHMKQEAgLTE2LDYgKzE2 LDcgQEAgU0VDVElPTlMgewogCV9fa2NyY3RhYl91bnVzZWQJMCA6IHsgKihTT1JUKF9fX2tjcmN0 YWJfdW51c2VkKyopKSB9CiAJX19rY3JjdGFiX3VudXNlZF9ncGwJMCA6IHsgKihTT1JUKF9fX2tj cmN0YWJfdW51c2VkX2dwbCsqKSkgfQogCV9fa2NyY3RhYl9ncGxfZnV0dXJlCTAgOiB7ICooU09S VChfX19rY3JjdGFiX2dwbF9mdXR1cmUrKikpIH0KKwlfX2p1bXBfdGFibGUJCTAgOiB7ICooU09S VCguZGF0YS4udGJsLl9fanVtcF90YWJsZS4qKSkgfQogCiAJLiA9IEFMSUdOKDgpOwogCS5pbml0 X2FycmF5CQkwIDogeyAqKFNPUlQoLmluaXRfYXJyYXkuKikpICooLmluaXRfYXJyYXkpIH0KZGlm ZiAtLWdpdCBhL3Rvb2xzL29ianRvb2wvc3BlY2lhbC5jIGIvdG9vbHMvb2JqdG9vbC9zcGVjaWFs LmMKaW5kZXggYmZmOGFiYjNhNGFhLi43OTk2OGUxMTgyOTQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL29i anRvb2wvc3BlY2lhbC5jCisrKyBiL3Rvb2xzL29ianRvb2wvc3BlY2lhbC5jCkBAIC02Myw3ICs2 Myw3IEBAIHN0cnVjdCBzcGVjaWFsX2VudHJ5IGVudHJpZXNbXSA9IHsKIAkJLmZlYXR1cmUgPSBB TFRfRkVBVFVSRV9PRkZTRVQsCiAJfSwKIAl7Ci0JCS5zZWMgPSAiX19qdW1wX3RhYmxlIiwKKwkJ LnNlYyA9ICIuZGF0YS4udGJsLl9fanVtcF90YWJsZS5hbnkiLAogCQkuanVtcF9vcl9ub3AgPSB0 cnVlLAogCQkuc2l6ZSA9IEpVTVBfRU5UUllfU0laRSwKIAkJLm9yaWcgPSBKVU1QX09SSUdfT0ZG U0VULAotLSAKMi4xMS4wCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpo dHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==