From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [RFC PATCH] tools: remove blktap2 related code and documentation Date: Mon, 15 Aug 2016 11:50:56 +0100 Message-ID: <1471258256-27198-1-git-send-email-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bZFU1-00069D-D3 for xen-devel@lists.xenproject.org; Mon, 15 Aug 2016 10:51:05 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Lars Kurth , Stefano Stabellini , Wei Liu , Ross Philipson , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Yang Hongyang , Jan Beulich , Shriram Rajagopalan List-Id: xen-devel@lists.xenproject.org QmxrdGFwMiBpcyBlZmZlY3RpdmVseSBkZWFkIGNvZGUgZm9yIGEgZmV3IHllYXJzLgoKTm90YWJs ZSBjaGFuZ2VzIGluIHRoaXMgcGF0Y2g6CgowLiBVbmhvb2sgYmxrdGFwMiBmcm9tIGJ1aWxkIHN5 c3RlbQoxLiBOb3cgbGlieGwgbm8gbG9uZ2VyIHN1cHBvcnRzIFRBUCBhc2sgYmFja2VuZCwgYXBw cm9wcmlhdGUgYXNzZXJ0aW9ucwogICBhcmUgYWRkZWQgYW5kIHNvbWUgY29kZSBwYXRocyBub3cg cmV0dXJuIEVSUk9SX0ZBSUwKMi4gVGFwIGlzIG5vIGxvbmdlciBhIHN1cHBvcnRlZCBiYWNrZW5k IGluIGRvYwozLiBSZW1vdmUgcmVsZXZhbnQgZW50cmllcyBpbiBNQUlOVEFJTkVSUwoKQSBwYXRj aCB0byBhY3R1YWxseSByZW1vdmUgYmxrdGFwMiBkaXJlY3Rvcnkgd2lsbCBjb21lIGxhdGVyLgoK U2lnbmVkLW9mZi1ieTogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KLS0tCkNvbXBpbGUt dGVzdCBvbmx5IGF0IHRoaXMgc3RhZ2UuCgpSb3NzLCBkbyB5b3UgaGF2ZSBhbnkgb2JqZWN0aW9u IGZvciB0aGlzPyBJIGhhdmVuJ3Qgc2VlbiB1cGRhdGUgZnJvbSB0aGUKam9pbnQgYmxrdGFwMiBt YWludGVuYW5jZSBmb3IgYSBmZXcgbW9udGhzLgoKQ2M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j b29wZXIzQGNpdHJpeC5jb20+CkNjOiBHZW9yZ2UgRHVubGFwIDxHZW9yZ2UuRHVubGFwQGV1LmNp dHJpeC5jb20+CkNjOiBJYW4gSmFja3NvbiA8aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4KQ2M6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ2M6IEtvbnJhZCBSemVzenV0ZWsgV2ls ayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4KQ2M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJl bGxpbmlAa2VybmVsLm9yZz4KQ2M6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpDYzogU2hyaXJh bSBSYWphZ29wYWxhbiA8cnNocmlyYW1AY3MudWJjLmNhPgpDYzogWWFuZyBIb25neWFuZyA8aW1o eS55YW5nQGdtYWlsLmNvbT4KQ2M6IFJvc3MgUGhpbGlwc29uIDxyb3NzLnBoaWxpcHNvbkBnbWFp bC5jb20+CkNjOiBMYXJzIEt1cnRoIDxsYXJzLmt1cnRoQGNpdHJpeC5jb20+Ci0tLQogLmdpdGln bm9yZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNCAtLS0tLS0KIElOU1RBTEwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDQgLS0KIE1BSU5UQUlORVJTICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDIgLQogY29uZmlnL1Rvb2xzLm1rLmluICAgICAgICAgICAgICAgICAgfCAg MSAtCiBkb2NzL21pc2MveGwtZGlzay1jb25maWd1cmF0aW9uLnR4dCB8ICAyICstCiB0b29scy9N YWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICB8ICAxIC0KIHRvb2xzL1J1bGVzLm1rICAgICAg ICAgICAgICAgICAgICAgIHwgMTcgKy0tLS0tLQogdG9vbHMvY29uZmlnLmguaW4gICAgICAgICAg ICAgICAgICAgfCAgNiAtLS0KIHRvb2xzL2NvbmZpZ3VyZSAgICAgICAgICAgICAgICAgICAgIHwg ODMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHRvb2xzL2NvbmZpZ3VyZS5hYyAg ICAgICAgICAgICAgICAgIHwgMjIgLS0tLS0tLS0tCiB0b29scy9saWJ4bC9NYWtlZmlsZSAgICAg ICAgICAgICAgICB8ICA4ICstLS0KIHRvb2xzL2xpYnhsL2NoZWNrLXhsLWRpc2stcGFyc2UgICAg IHwgIDIgKy0KIHRvb2xzL2xpYnhsL2xpYnhsLmMgICAgICAgICAgICAgICAgIHwgMjUgKystLS0t LS0tLQogdG9vbHMvbGlieGwvbGlieGxfYmxrdGFwMi5jICAgICAgICAgfCA5NCAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB0b29scy9saWJ4bC9saWJ4bF9kZXZpY2UuYyAg ICAgICAgICB8IDMyICsrLS0tLS0tLS0tLS0KIHRvb2xzL2xpYnhsL2xpYnhsX2RtLmMgICAgICAg ICAgICAgIHwgMTcgKystLS0tLQogdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCAgICAgICAg fCAxOSAtLS0tLS0tLQogdG9vbHMvbGlieGwvbGlieGxfbm9ibGt0YXAyLmMgICAgICAgfCA0MiAt LS0tLS0tLS0tLS0tLS0tLQogdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmMgICAgICAgICAgfCAg NSAtLQogdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmggICAgICAgICAgfCAgNSAtLQogdG9vbHMv eGVuc3RvcmUvaGFzaHRhYmxlX3ByaXZhdGUuaCAgfCAgNSAtLQogMjEgZmlsZXMgY2hhbmdlZCwg MTMgaW5zZXJ0aW9ucygrKSwgMzkzIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHRv b2xzL2xpYnhsL2xpYnhsX2Jsa3RhcDIuYwogZGVsZXRlIG1vZGUgMTAwNjQ0IHRvb2xzL2xpYnhs L2xpYnhsX25vYmxrdGFwMi5jCgpkaWZmIC0tZ2l0IGEvLmdpdGlnbm9yZSBiLy5naXRpZ25vcmUK aW5kZXggZDE5MzgyMC4uZWEyNzc3NyAxMDA2NDQKLS0tIGEvLmdpdGlnbm9yZQorKysgYi8uZ2l0 aWdub3JlCkBAIC05NywxOSArOTcsNiBAQCB0b29scy9saWJzL2V2dGNobi9oZWFkZXJzLmNoawog dG9vbHMvbGlicy9nbnR0YWIvaGVhZGVycy5jaGsKIHRvb2xzL2xpYnMvY2FsbC9oZWFkZXJzLmNo awogdG9vbHMvbGlicy9mb3JlaWdubWVtb3J5L2hlYWRlcnMuY2hrCi10b29scy9ibGt0YXAyL2Rh ZW1vbi9ibGt0YXBjdHJsCi10b29scy9ibGt0YXAyL2RyaXZlcnMvaW1nMnFjb3cKLXRvb2xzL2Js a3RhcDIvZHJpdmVycy9sb2NrLXV0aWwKLXRvb2xzL2Jsa3RhcDIvZHJpdmVycy9xY293LWNyZWF0 ZQotdG9vbHMvYmxrdGFwMi9kcml2ZXJzL3Fjb3cycmF3Ci10b29scy9ibGt0YXAyL2RyaXZlcnMv dGFwZGlzawotdG9vbHMvYmxrdGFwMi9kcml2ZXJzL3RhcGRpc2stY2xpZW50Ci10b29scy9ibGt0 YXAyL2RyaXZlcnMvdGFwZGlzay1kaWZmCi10b29scy9ibGt0YXAyL2RyaXZlcnMvdGFwZGlzay1z dHJlYW0KLXRvb2xzL2Jsa3RhcDIvZHJpdmVycy90YXBkaXNrMgotdG9vbHMvYmxrdGFwMi9kcml2 ZXJzL3RkLXV0aWwKLXRvb2xzL2Jsa3RhcDIvdmhkL3ZoZC11cGRhdGUKLXRvb2xzL2Jsa3RhcDIv dmhkL3ZoZC11dGlsCiB0b29scy9jb25zb2xlL3hlbmNvbnNvbGUKIHRvb2xzL2NvbnNvbGUveGVu Y29uc29sZWQKIHRvb2xzL2NvbnNvbGUvY2xpZW50L19wYXRocy5oCkBAIC0zMjcsNyArMzE0LDYg QEAgdG9vbHMvbGlieGwvKi5weWMKIHRvb2xzL2xpYnhsL2xpYnhsLXNhdmUtaGVscGVyCiB0b29s cy9saWJ4bC90ZXN0X3RpbWVkZXJlZwogdG9vbHMvbGlieGwvdGVzdF9mZGRlcmVncmFjZQotdG9v bHMvYmxrdGFwMi9jb250cm9sL3RhcC1jdGwKIHRvb2xzL2Zpcm13YXJlL2V0aGVyYm9vdC9lYi1y b21zLmgKIHRvb2xzL2Zpcm13YXJlL2V0aGVyYm9vdC9ncHhlLWdpdC1zbmFwc2hvdC50YXIuZ3oK IHRvb2xzL21pc2MveGVud2F0Y2hkb2dkCmRpZmYgLS1naXQgYS9JTlNUQUxMIGIvSU5TVEFMTApp bmRleCA5NzU5MzU0Li4zYjI1NWM3IDEwMDY0NAotLS0gYS9JTlNUQUxMCisrKyBiL0lOU1RBTEwK QEAgLTE0NCwxMCArMTQ0LDYgQEAgdGhpcyBkZXRlY3Rpb24gYW5kIHRoZSBzeXN2IHJ1bmxldmVs IHNjcmlwdHMgaGF2ZSB0byBiZSB1c2VkLgogICAtLXdpdGgtc3lzdGVtZD1ESVIKICAgLS13aXRo LXN5c3RlbWQtbW9kdWxlcy1sb2FkPURJUgogCi1UaGUgb2xkIGJhY2tlbmQgZHJpdmVycyBhcmUg ZGlzYWJsZWQgYmVjYXVzZSBxZGlzayBpcyBub3cgdGhlIGRlZmF1bHQuCi1UaGlzIG9wdGlvbiBj YW4gYmUgdXNlZCB0byBidWlsZCB0aGVtIGFueXdheS4KLSAgLS1lbmFibGUtYmxrdGFwMgotCiBC dWlsZCB2YXJpb3VzIHN0dWJvbSBjb21wb25lbnRzLCBzb21lIGFyZSBvbmx5IGV4YW1wbGUgY29k ZS4gSXRzIHVzdWFsbHkKIGVub3VnaCB0byBzcGVjaWZ5IGp1c3QgLS1lbmFibGUtc3R1YmRvbSBh bmQgbGVhdmUgdGhlc2Ugb3B0aW9ucyBhbG9uZS4KICAgLS1lbmFibGUtaW9lbXUtc3R1YmRvbQpk aWZmIC0tZ2l0IGEvTUFJTlRBSU5FUlMgYi9NQUlOVEFJTkVSUwppbmRleCA5NzcyMGE4Li5kNTQ3 OTViIDEwMDY0NAotLS0gYS9NQUlOVEFJTkVSUworKysgYi9NQUlOVEFJTkVSUwpAQCAtMzIyLDgg KzMyMiw2IEBAIE06CVNocmlyYW0gUmFqYWdvcGFsYW4gPHJzaHJpcmFtQGNzLnViYy5jYT4KIE06 CVlhbmcgSG9uZ3lhbmcgPGltaHkueWFuZ0BnbWFpbC5jb20+CiBTOglNYWludGFpbmVkCiBGOglk b2NzL1JFQURNRS5yZW11cwotRjoJdG9vbHMvYmxrdGFwMi9kcml2ZXJzL2Jsb2NrLXJlbXVzLmMK LUY6CXRvb2xzL2Jsa3RhcDIvZHJpdmVycy9oYXNodGFibGUqCiBGOgl0b29scy9saWJ4bC9saWJ4 bF9yZW11c18qCiBGOgl0b29scy9saWJ4bC9saWJ4bF9uZXRidWZmZXIuYwogRjoJdG9vbHMvbGli eGwvbGlieGxfbm9uZXRidWZmZXIuYwpkaWZmIC0tZ2l0IGEvY29uZmlnL1Rvb2xzLm1rLmluIGIv Y29uZmlnL1Rvb2xzLm1rLmluCmluZGV4IDBmNzlmNGUuLjUxMTQwNmMgMTAwNjQ0Ci0tLSBhL2Nv bmZpZy9Ub29scy5tay5pbgorKysgYi9jb25maWcvVG9vbHMubWsuaW4KQEAgLTU2LDcgKzU2LDYg QEAgQ09ORklHX1JPTUJJT1MgICAgICA6PSBAcm9tYmlvc0AKIENPTkZJR19TRUFCSU9TICAgICAg Oj0gQHNlYWJpb3NACiBDT05GSUdfUUVNVV9UUkFEICAgIDo9IEBxZW11X3RyYWRpdGlvbmFsQAog Q09ORklHX1FFTVVfWEVOICAgICA6PSBAcWVtdV94ZW5ACi1DT05GSUdfQkxLVEFQMiAgICAgIDo9 IEBibGt0YXAyQAogQ09ORklHX1FFTVVVX0VYVFJBX0FSR1M6PSBARVhUUkFfUUVNVVVfQ09ORklH VVJFX0FSR1NACiBDT05GSUdfTElCTkwgICAgICAgIDo9IEBsaWJubEAKIApkaWZmIC0tZ2l0IGEv ZG9jcy9taXNjL3hsLWRpc2stY29uZmlndXJhdGlvbi50eHQgYi9kb2NzL21pc2MveGwtZGlzay1j b25maWd1cmF0aW9uLnR4dAppbmRleCBiMzQwMmJjLi4yZTkzNDVjIDEwMDY0NAotLS0gYS9kb2Nz L21pc2MveGwtZGlzay1jb25maWd1cmF0aW9uLnR4dAorKysgYi9kb2NzL21pc2MveGwtZGlzay1j b25maWd1cmF0aW9uLnR4dApAQCAtMTU1LDcgKzE1NSw3IEBAIGJhY2tlbmR0eXBlPTxiYWNrZW5k LXR5cGU+CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBEZXNjcmlwdGlvbjogICAgICAg ICAgIFNwZWNpZmllcyB0aGUgYmFja2VuZCBpbXBsZW1lbnRhdGlvbiB0byB1c2UKLVN1cHBvcnRl ZCB2YWx1ZXM6ICAgICAgcGh5LCB0YXAsIHFkaXNrCitTdXBwb3J0ZWQgdmFsdWVzOiAgICAgIHBo eSwgcWRpc2sKIE1hbmRhdG9yeTogICAgICAgICAgICAgTm8KIERlZmF1bHQgdmFsdWU6ICAgICAg ICAgQXV0b21hdGljYWxseSBkZXRlcm1pbmUgd2hpY2ggYmFja2VuZCB0byB1c2UuCiAKZGlmZiAt LWdpdCBhL3Rvb2xzL01ha2VmaWxlIGIvdG9vbHMvTWFrZWZpbGUKaW5kZXggNzE1MTViNC4uYjhm ZTJjZSAxMDA2NDQKLS0tIGEvdG9vbHMvTWFrZWZpbGUKKysrIGIvdG9vbHMvTWFrZWZpbGUKQEAg LTE3LDcgKzE3LDYgQEAgU1VCRElSUy15ICs9IGNvbnNvbGUKIFNVQkRJUlMteSArPSB4ZW5tb24K IFNVQkRJUlMteSArPSB4ZW5zdGF0CiBTVUJESVJTLSQoQ09ORklHX0xpbnV4KSArPSBtZW1zaHIg Ci1TVUJESVJTLSQoQ09ORklHX0JMS1RBUDIpICs9IGJsa3RhcDIKIFNVQkRJUlMtJChDT05GSUdf TmV0QlNEKSArPSB4ZW5iYWNrZW5kZAogU1VCRElSUy15ICs9IGxpYmZzaW1hZ2UKIFNVQkRJUlMt JChDT05GSUdfTGludXgpICs9IGxpYnZjaGFuCmRpZmYgLS1naXQgYS90b29scy9SdWxlcy5tayBi L3Rvb2xzL1J1bGVzLm1rCmluZGV4IDVhODBmZWMuLmJiZWVmMTQgMTAwNjQ0Ci0tLSBhL3Rvb2xz L1J1bGVzLm1rCisrKyBiL3Rvb2xzL1J1bGVzLm1rCkBAIC0xOSw3ICsxOSw2IEBAIFhFTl9MSUJY QyAgICAgICAgICA9ICQoWEVOX1JPT1QpL3Rvb2xzL2xpYnhjCiBYRU5fWEVOTElHSFQgICAgICAg PSAkKFhFTl9ST09UKS90b29scy9saWJ4bAogWEVOX1hFTlNUT1JFICAgICAgID0gJChYRU5fUk9P VCkvdG9vbHMveGVuc3RvcmUKIFhFTl9MSUJYRU5TVEFUICAgICA9ICQoWEVOX1JPT1QpL3Rvb2xz L3hlbnN0YXQvbGlieGVuc3RhdC9zcmMKLVhFTl9CTEtUQVAyICAgICAgICA9ICQoWEVOX1JPT1Qp L3Rvb2xzL2Jsa3RhcDIKIFhFTl9MSUJWQ0hBTiAgICAgICA9ICQoWEVOX1JPT1QpL3Rvb2xzL2xp YnZjaGFuCiAKIENGTEFHU194ZW5pbmNsdWRlID0gLUkkKFhFTl9JTkNMVURFKQpAQCAtMTQzLDIy ICsxNDIsOCBAQCBDRkxBR1MgKz0gLU8wIC1nMwogUFlfQ0ZMQUdTICs9ICQoUFlfTk9PUFRfQ0ZM QUdTKQogZW5kaWYKIAotTElCWExfQkxLVEFQID89ICQoQ09ORklHX0JMS1RBUDIpCi0KLWlmZXEg KCQoTElCWExfQkxLVEFQKSx5KQotQ0ZMQUdTX2xpYmJsa3RhcGN0bCA9IC1JJChYRU5fQkxLVEFQ MikvY29udHJvbCAtSSQoWEVOX0JMS1RBUDIpL2luY2x1ZGUgJChDRkxBR1NfeGVuaW5jbHVkZSkK LVNIREVQU19saWJibGt0YXBjdGwgPQotTERMSUJTX2xpYmJsa3RhcGN0bCA9ICQoU0hERVBTX2xp YmJsa3RhcGN0bCkgJChYRU5fQkxLVEFQMikvY29udHJvbC9saWJibGt0YXBjdGwkKGxpYmV4dGVu c2lvbikKLVNITElCX2xpYmJsa3RhcGN0bCAgPSAkKFNIREVQU19saWJibGt0YXBjdGwpIC1XbCwt cnBhdGgtbGluaz0kKFhFTl9CTEtUQVAyKS9jb250cm9sCi1lbHNlCi1DRkxBR1NfbGliYmxrdGFw Y3RsID0KLVNIREVQU19saWJibGt0YXBjdGwgPQotTERMSUJTX2xpYmJsa3RhcGN0bCA9Ci1TSExJ Ql9saWJibGt0YXBjdGwgID0KLWVuZGlmCi0KIENGTEFHU19saWJ4ZW5saWdodCA9IC1JJChYRU5f WEVOTElHSFQpICQoQ0ZMQUdTX2xpYnhlbmN0cmwpICQoQ0ZMQUdTX3hlbmluY2x1ZGUpCi1TSERF UFNfbGlieGVubGlnaHQgPSAkKFNITElCX2xpYnhlbmN0cmwpICQoU0hMSUJfbGlieGVuc3RvcmUp ICQoU0hMSUJfbGliYmxrdGFwY3RsKQorU0hERVBTX2xpYnhlbmxpZ2h0ID0gJChTSExJQl9saWJ4 ZW5jdHJsKSAkKFNITElCX2xpYnhlbnN0b3JlKQogTERMSUJTX2xpYnhlbmxpZ2h0ID0gJChTSERF UFNfbGlieGVubGlnaHQpICQoWEVOX1hFTkxJR0hUKS9saWJ4ZW5saWdodCQobGliZXh0ZW5zaW9u KQogU0hMSUJfbGlieGVubGlnaHQgID0gJChTSERFUFNfbGlieGVubGlnaHQpIC1XbCwtcnBhdGgt bGluaz0kKFhFTl9YRU5MSUdIVCkKIApkaWZmIC0tZ2l0IGEvdG9vbHMvY29uZmlnLmguaW4gYi90 b29scy9jb25maWcuaC5pbgppbmRleCA0NzhhMmNjLi4xYjJkZjJlIDEwMDY0NAotLS0gYS90b29s cy9jb25maWcuaC5pbgorKysgYi90b29scy9jb25maWcuaC5pbgpAQCAtMyw5ICszLDYgQEAKIC8q IEVuYWJsaW5nIHN1cHBvcnQgcGFydGlhbCBkZXZpY2UgdHJlZSBpbiBsaWJ4bCAqLwogI3VuZGVm IEVOQUJMRV9QQVJUSUFMX0RFVklDRV9UUkVFCiAKLS8qIEJsa3RhcDIgZW5hYmxlZCAqLwotI3Vu ZGVmIEhBVkVfQkxLVEFQMgotCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgZGVjbGFy YXRpb24gb2YgYGZkdF9maXJzdF9zdWJub2RlJywgYW5kIHRvIDAgaWYKICAgIHlvdSBkb24ndC4g Ki8KICN1bmRlZiBIQVZFX0RFQ0xfRkRUX0ZJUlNUX1NVQk5PREUKQEAgLTI3LDkgKzI0LDYgQEAK IC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8aW50dHlwZXMuaD4gaGVhZGVyIGZpbGUu ICovCiAjdW5kZWYgSEFWRV9JTlRUWVBFU19ICiAKLS8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgYWlvJyBsaWJyYXJ5ICgtbGFpbykuICovCi0jdW5kZWYgSEFWRV9MSUJBSU8KLQogLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjcnlwdG8nIGxpYnJhcnkgKC1sY3J5cHRvKS4g Ki8KICN1bmRlZiBIQVZFX0xJQkNSWVBUTwogCmRpZmYgLS1naXQgYS90b29scy9jb25maWd1cmUg Yi90b29scy9jb25maWd1cmUKaW5kZXggNTFmMTZjNS4uNTNiOWEzMyAxMDA3NTUKLS0tIGEvdG9v bHMvY29uZmlndXJlCisrKyBiL3Rvb2xzL2NvbmZpZ3VyZQpAQCAtNzA1LDcgKzcwNSw2IEBAIEJD QwogTEQ4NgogQVM4NgogcWVtdV90cmFkaXRpb25hbAotYmxrdGFwMgogTElOVVhfQkFDS0VORF9N T0RVTEVTCiBzZWFiaW9zCiBvdm1mCkBAIC04MDQsNyArODAzLDYgQEAgZW5hYmxlX3hzbXBvbGlj eQogZW5hYmxlX292bWYKIGVuYWJsZV9zZWFiaW9zCiB3aXRoX2xpbnV4X2JhY2tlbmRfbW9kdWxl cwotZW5hYmxlX2Jsa3RhcDIKIGVuYWJsZV9xZW11X3RyYWRpdGlvbmFsCiBlbmFibGVfcm9tYmlv cwogd2l0aF9zeXN0ZW1fcWVtdQpAQCAtMTQ3Nyw4ICsxNDc1LDYgQEAgT3B0aW9uYWwgRmVhdHVy ZXM6CiAgIC0tZGlzYWJsZS14c21wb2xpY3kgICAgIERpc2FibGUgWFNNIHBvbGljeSBjb21waWxh dGlvbiAoZGVmYXVsdCBpcyBFTkFCTEVEKQogICAtLWVuYWJsZS1vdm1mICAgICAgICAgICBFbmFi bGUgT1ZNRiAoZGVmYXVsdCBpcyBESVNBQkxFRCkKICAgLS1kaXNhYmxlLXNlYWJpb3MgICAgICAg RGlzYWJsZSBTZWFCSU9TIChkZWZhdWx0IGlzIEVOQUJMRUQpCi0gIC0tZW5hYmxlLWJsa3RhcDIg ICAgICAgIEVuYWJsZSBibGt0YXAyLCAoREVGQVVMVCBpcyBvbiBmb3IgTGludXgsIG90aGVyd2lz ZQotICAgICAgICAgICAgICAgICAgICAgICAgICBvZmYpCiAgIC0tZW5hYmxlLXFlbXUtdHJhZGl0 aW9uYWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHFlbXUgdHJhZGl0aW9uYWwg ZGV2aWNlIG1vZGVsLCAoREVGQVVMVCBpcyBvbgogICAgICAgICAgICAgICAgICAgICAgICAgICBm b3IgTGludXggb3IgTmV0QlNEIHg4Niwgb3RoZXJ3aXNlIG9mZikKQEAgLTQxNjEsNyArNDE1Nyw2 IEBAIHhlbi1zY3NpYmsKIHVzYmJrCiBwY2liYWNrCiB4ZW4tYWNwaS1wcm9jZXNzb3IKLWJsa3Rh cDIKICIKIDs7CiAqKQpAQCAtNDE3MywzMyArNDE2OCw2IEBAIGZpCiBMSU5VWF9CQUNLRU5EX01P RFVMRVM9ImBldmFsIGVjaG8gJExJTlVYX0JBQ0tFTkRfTU9EVUxFU2AiCiAKIAotIyBDaGVjayB3 aGV0aGVyIC0tZW5hYmxlLWJsa3RhcDIgd2FzIGdpdmVuLgotaWYgdGVzdCAiJHtlbmFibGVfYmxr dGFwMitzZXR9IiA9IHNldDsgdGhlbiA6Ci0gIGVuYWJsZXZhbD0kZW5hYmxlX2Jsa3RhcDI7Ci1l bHNlCi0KLSAgICBjYXNlICIkaG9zdF9vcyIgaW4KLSAgICAgICAgbGludXgqKQotICAgICAgICAg ICBlbmFibGVfYmxrdGFwMj0ieWVzIjs7Ci0gICAgICAgICopIGVuYWJsZV9ibGt0YXAyPSJubyI7 OwotICAgIGVzYWMKLQotZmkKLQotaWYgdGVzdCAieCRlbmFibGVfYmxrdGFwMiIgPSAieHllcyI7 IHRoZW4gOgotCi0KLSRhc19lY2hvICIjZGVmaW5lIEhBVkVfQkxLVEFQMiAxIiA+PmNvbmZkZWZz LmgKLQotICAgIGJsa3RhcDI9eQotZWxzZQotCi0gICAgYmxrdGFwMj1uCi0KLWZpCi0KLQotCiAj IENoZWNrIHdoZXRoZXIgLS1lbmFibGUtcWVtdS10cmFkaXRpb25hbCB3YXMgZ2l2ZW4uCiBpZiB0 ZXN0ICIke2VuYWJsZV9xZW11X3RyYWRpdGlvbmFsK3NldH0iID0gc2V0OyB0aGVuIDoKICAgZW5h YmxldmFsPSRlbmFibGVfcWVtdV90cmFkaXRpb25hbDsKQEAgLTgyOTAsNTcgKzgyNTgsNiBAQCBm aQogCiAKIAotaWYgdGVzdCAieCRlbmFibGVfYmxrdGFwMiIgPSAieHllcyI7IHRoZW4gOgotCi17 ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBpb19z ZXR1cCBpbiAtbGFpbyIgPiY1Ci0kYXNfZWNob19uICJjaGVja2luZyBmb3IgaW9fc2V0dXAgaW4g LWxhaW8uLi4gIiA+JjY7IH0KLWlmICR7YWNfY3ZfbGliX2Fpb19pb19zZXR1cCs6fSBmYWxzZTsg dGhlbiA6Ci0gICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2Ci1lbHNlCi0gIGFjX2NoZWNrX2xp Yl9zYXZlX0xJQlM9JExJQlMKLUxJQlM9Ii1sYWlvICAkTElCUyIKLWNhdCBjb25mZGVmcy5oIC0g PDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKLS8qIGVuZCBjb25mZGVmcy5oLiAgKi8KLQotLyog T3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCi0g ICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBH Q0MKLSAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls bCBhcHBseS4gICovCi0jaWZkZWYgX19jcGx1c3BsdXMKLWV4dGVybiAiQyIKLSNlbmRpZgotY2hh ciBpb19zZXR1cCAoKTsKLWludAotbWFpbiAoKQotewotcmV0dXJuIGlvX3NldHVwICgpOwotICA7 Ci0gIHJldHVybiAwOwotfQotX0FDRU9GCi1pZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsg dGhlbiA6Ci0gIGFjX2N2X2xpYl9haW9faW9fc2V0dXA9eWVzCi1lbHNlCi0gIGFjX2N2X2xpYl9h aW9faW9fc2V0dXA9bm8KLWZpCi1ybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNf b2JqZXh0IFwKLSAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAotTElCUz0k YWNfY2hlY2tfbGliX3NhdmVfTElCUwotZmkKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVu by0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX2Fpb19pb19zZXR1cCIgPiY1Ci0kYXNfZWNo byAiJGFjX2N2X2xpYl9haW9faW9fc2V0dXAiID4mNjsgfQotaWYgdGVzdCAieCRhY19jdl9saWJf YWlvX2lvX3NldHVwIiA9IHh5ZXM7IHRoZW4gOgotICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9G Ci0jZGVmaW5lIEhBVkVfTElCQUlPIDEKLV9BQ0VPRgotCi0gIExJQlM9Ii1sYWlvICRMSUJTIgot Ci1lbHNlCi0gIGFzX2ZuX2Vycm9yICQ/ICJDb3VsZCBub3QgZmluZCBsaWJhaW8iICIkTElORU5P IiA1Ci1maQotCi0KLWZpCiAKIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5P fTogY2hlY2tpbmcgZm9yIE1ENSBpbiAtbGNyeXB0byIgPiY1CiAkYXNfZWNob19uICJjaGVja2lu ZyBmb3IgTUQ1IGluIC1sY3J5cHRvLi4uICIgPiY2OyB9CmRpZmYgLS1naXQgYS90b29scy9jb25m aWd1cmUuYWMgYi90b29scy9jb25maWd1cmUuYWMKaW5kZXggM2E0YWJiNS4uMWNmYmNhZiAxMDA2 NDQKLS0tIGEvdG9vbHMvY29uZmlndXJlLmFjCisrKyBiL3Rvb2xzL2NvbmZpZ3VyZS5hYwpAQCAt MTA4LDcgKzEwOCw2IEBAIHhlbi1zY3NpYmsKIHVzYmJrCiBwY2liYWNrCiB4ZW4tYWNwaS1wcm9j ZXNzb3IKLWJsa3RhcDIKICIKIDs7CiAqKQpAQCAtMTE4LDI0ICsxMTcsNiBAQCBlc2FjXSkKIExJ TlVYX0JBQ0tFTkRfTU9EVUxFUz0iYGV2YWwgZWNobyAkTElOVVhfQkFDS0VORF9NT0RVTEVTYCIK IEFDX1NVQlNUKExJTlVYX0JBQ0tFTkRfTU9EVUxFUykKIAotZG5sIEVuYWJsZSBibGt0YXAyIG9u IExpbnV4IG9ubHkuCi1BQ19BUkdfRU5BQkxFKFtibGt0YXAyXSwKLSAgICBBU19IRUxQX1NUUklO RyhbLS1lbmFibGUtYmxrdGFwMl0sCi0gICAgICAgICAgICAgICAgICAgW0VuYWJsZSBibGt0YXAy LCAoREVGQVVMVCBpcyBvbiBmb3IgTGludXgsIG90aGVyd2lzZSBvZmYpXSksLFsKLSAgICBjYXNl ICIkaG9zdF9vcyIgaW4KLSAgICAgICAgbGludXgqKQotICAgICAgICAgICBlbmFibGVfYmxrdGFw Mj0ieWVzIjs7Ci0gICAgICAgICopIGVuYWJsZV9ibGt0YXAyPSJubyI7OwotICAgIGVzYWMKLV0p Ci1BU19JRihbdGVzdCAieCRlbmFibGVfYmxrdGFwMiIgPSAieHllcyJdLCBbCi1BQ19ERUZJTkUo W0hBVkVfQkxLVEFQMl0sIFsxXSwgW0Jsa3RhcDIgZW5hYmxlZF0pCi0gICAgYmxrdGFwMj15XSxb Ci0gICAgYmxrdGFwMj1uCi1dKQotQUNfU1VCU1QoYmxrdGFwMikKLQotCiBBQ19BUkdfRU5BQkxF KFtxZW11LXRyYWRpdGlvbmFsXSwKICAgICBBU19IRUxQX1NUUklORyhbLS1lbmFibGUtcWVtdS10 cmFkaXRpb25hbF0sCiAgICAgICAgICAgICAgICAgICAgW0VuYWJsZSBxZW11IHRyYWRpdGlvbmFs IGRldmljZSBtb2RlbCwgKERFRkFVTFQgaXMgb24gZm9yIExpbnV4IG9yIE5ldEJTRCB4ODYsIG90 aGVyd2lzZSBvZmYpXSksLFsKQEAgLTM1Nyw5ICszMzgsNiBAQCBBQ19DSEVDS19IRUFERVIoW2x6 by9sem8xeC5oXSwgWwogQUNfQ0hFQ0tfTElCKFtsem8yXSwgW2x6bzF4X2RlY29tcHJlc3NdLCBb emxpYj0iJHpsaWIgLURIQVZFX0xaTzFYIC1sbHpvMiJdKQogXSkKIEFDX1NVQlNUKHpsaWIpCi1B U19JRihbdGVzdCAieCRlbmFibGVfYmxrdGFwMiIgPSAieHllcyJdLCBbCi1BQ19DSEVDS19MSUIo W2Fpb10sIFtpb19zZXR1cF0sIFtdLCBbQUNfTVNHX0VSUk9SKFtDb3VsZCBub3QgZmluZCBsaWJh aW9dKV0pCi1dKQogQUNfU1VCU1Qoc3lzdGVtX2FpbykKIEFDX0NIRUNLX0xJQihbY3J5cHRvXSwg W01ENV0sIFtdLCBbQUNfTVNHX0VSUk9SKFtDb3VsZCBub3QgZmluZCBsaWJjcnlwdG9dKV0pCiBB WF9DSEVDS19FWFRGUwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvTWFrZWZpbGUgYi90b29scy9s aWJ4bC9NYWtlZmlsZQppbmRleCAxNGExYThlLi42OTk0YzU4IDEwMDY0NAotLS0gYS90b29scy9s aWJ4bC9NYWtlZmlsZQorKysgYi90b29scy9saWJ4bC9NYWtlZmlsZQpAQCAtMjAsNyArMjAsNyBA QCBMSUJVVUlEX0xJQlMgKz0gLWx1dWlkCiBlbmRpZgogCiBMSUJYTF9MSUJTID0KLUxJQlhMX0xJ QlMgPSAkKExETElCU19saWJ4ZW50b29sbG9nKSAkKExETElCU19saWJ4ZW5ldnRjaG4pICQoTERM SUJTX2xpYnhlbmN0cmwpICQoTERMSUJTX2xpYnhlbmd1ZXN0KSAkKExETElCU19saWJ4ZW5zdG9y ZSkgJChMRExJQlNfbGliYmxrdGFwY3RsKSAkKFBUWUZVTkNTX0xJQlMpICQoTElCVVVJRF9MSUJT KQorTElCWExfTElCUyA9ICQoTERMSUJTX2xpYnhlbnRvb2xsb2cpICQoTERMSUJTX2xpYnhlbmV2 dGNobikgJChMRExJQlNfbGlieGVuY3RybCkgJChMRExJQlNfbGlieGVuZ3Vlc3QpICQoTERMSUJT X2xpYnhlbnN0b3JlKSAkKFBUWUZVTkNTX0xJQlMpICQoTElCVVVJRF9MSUJTKQogaWZlcSAoJChD T05GSUdfTElCTkwpLHkpCiBMSUJYTF9MSUJTICs9ICQoTElCTkwzX0xJQlMpCiBlbmRpZgpAQCAt MzAsNyArMzAsNiBAQCBDRkxBR1NfTElCWEwgKz0gJChDRkxBR1NfbGlieGVuZXZ0Y2huKQogQ0ZM QUdTX0xJQlhMICs9ICQoQ0ZMQUdTX2xpYnhlbmN0cmwpCiBDRkxBR1NfTElCWEwgKz0gJChDRkxB R1NfbGlieGVuZ3Vlc3QpCiBDRkxBR1NfTElCWEwgKz0gJChDRkxBR1NfbGlieGVuc3RvcmUpCi1D RkxBR1NfTElCWEwgKz0gJChDRkxBR1NfbGliYmxrdGFwY3RsKSAKIGlmZXEgKCQoQ09ORklHX0xJ Qk5MKSx5KQogQ0ZMQUdTX0xJQlhMICs9ICQoTElCTkwzX0NGTEFHUykKIGVuZGlmCkBAIC00Niwx MSArNDUsNiBAQCBMSUJYTF9MSUJTICs9ICQoTElCWExfTElCUy15KQogTElCWExVX0xJQlMgPSAk KExETElCU19saWJ4ZW5saWdodCkKIAogTElCWExfT0JKUy15ID0gb3NkZXBzLm8gbGlieGxfcGF0 aHMubyBsaWJ4bF9ib290bG9hZGVyLm8gZmxleGFycmF5Lm8KLWlmZXEgKCQoTElCWExfQkxLVEFQ KSx5KQotTElCWExfT0JKUy15ICs9IGxpYnhsX2Jsa3RhcDIubwotZWxzZQotTElCWExfT0JKUy15 ICs9IGxpYnhsX25vYmxrdGFwMi5vCi1lbmRpZgogCiBpZmVxICgkKENPTkZJR19MSUJOTCkseSkK IExJQlhMX09CSlMteSArPSBsaWJ4bF9uZXRidWZmZXIubwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli eGwvY2hlY2steGwtZGlzay1wYXJzZSBiL3Rvb2xzL2xpYnhsL2NoZWNrLXhsLWRpc2stcGFyc2UK aW5kZXggMDM1NzJlNC4uNjQzZjRmNCAxMDA3NTUKLS0tIGEvdG9vbHMvbGlieGwvY2hlY2steGwt ZGlzay1wYXJzZQorKysgYi90b29scy9saWJ4bC9jaGVjay14bC1kaXNrLXBhcnNlCkBAIC0zLDcg KzMsNyBAQAogc2V0IC1lCiAKIGlmIFsgLXggLi94bCBdIDsgdGhlbgotICAgIGV4cG9ydCBMRF9M SUJSQVJZX1BBVEg9LjouLi9saWJ4YzouLi94ZW5zdG9yZTouLi9ibGt0YXAyL2NvbnRyb2wKKyAg ICBleHBvcnQgTERfTElCUkFSWV9QQVRIPS46Li4vbGlieGM6Li4veGVuc3RvcmUKICAgICBYTD0u L3hsCiBlbHNlCiAgICAgWEw9eGwKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsLmMgYi90 b29scy9saWJ4bC9saWJ4bC5jCmluZGV4IDZhNTBlNDkuLjU3N2VkMzUgMTAwNjQ0Ci0tLSBhL3Rv b2xzL2xpYnhsL2xpYnhsLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGwuYwpAQCAtMjIxOCw3ICsy MjE4LDYgQEAgc3RhdGljIHZvaWQgZGV2aWNlX2Rpc2tfYWRkKGxpYnhsX19lZ2MgKmVnYywgdWlu dDMyX3QgZG9taWQsCiAgICAgICAgICAgICBjYXNlIExJQlhMX0RJU0tfQkFDS0VORF9QSFk6CiAg ICAgICAgICAgICAgICAgZGV2ID0gZGlzay0+cGRldl9wYXRoOwogCi0gICAgICAgIGRvX2JhY2tl bmRfcGh5OgogICAgICAgICAgICAgICAgIGZsZXhhcnJheV9hcHBlbmQoYmFjaywgInBhcmFtcyIp OwogICAgICAgICAgICAgICAgIGZsZXhhcnJheV9hcHBlbmQoYmFjaywgZGV2KTsKIApAQCAtMjIz MCwyNyArMjIyOSw5IEBAIHN0YXRpYyB2b2lkIGRldmljZV9kaXNrX2FkZChsaWJ4bF9fZWdjICpl Z2MsIHVpbnQzMl90IGRvbWlkLAogICAgICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgICAg ICBjYXNlIExJQlhMX0RJU0tfQkFDS0VORF9UQVA6Ci0gICAgICAgICAgICAgICAgaWYgKGRldiA9 PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgICAgIGRldiA9IGxpYnhsX19ibGt0YXBfZGV2cGF0 aChnYywgZGlzay0+cGRldl9wYXRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZGlzay0+Zm9ybWF0KTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFk ZXYpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgImZhaWxlZCB0byBnZXQg YmxrdGFwIGRldnBhdGggZm9yICVwIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNr LT5wZGV2X3BhdGgpOwotICAgICAgICAgICAgICAgICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwot ICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvdXQ7Ci0gICAgICAgICAgICAgICAgICAgIH0K LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZmxleGFycmF5X2FwcGVuZChiYWNr LCAidGFwZGlzay1wYXJhbXMiKTsKLSAgICAgICAgICAgICAgICBmbGV4YXJyYXlfYXBwZW5kKGJh Y2ssIEdDU1BSSU5URigiJXM6JXMiLAotICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNl X2Rpc2tfc3RyaW5nX29mX2Zvcm1hdChkaXNrLT5mb3JtYXQpLAotICAgICAgICAgICAgICAgICAg ICBkaXNrLT5wZGV2X3BhdGgpKTsKLQotICAgICAgICAgICAgICAgIC8qIHRhcCBiYWNrZW5kcyB3 aXRoIHNjcmlwdHMgYXJlIHJlamVjdGVkIGJ5Ci0gICAgICAgICAgICAgICAgICogbGlieGxfX2Rl dmljZV9kaXNrX3NldF9iYWNrZW5kICovCi0gICAgICAgICAgICAgICAgYXNzZXJ0KCFkaXNrLT5z Y3JpcHQpOwotCi0gICAgICAgICAgICAgICAgLyogbm93IGNyZWF0ZSBhIHBoeSBkZXZpY2UgdG8g ZXhwb3J0IHRoZSBkZXZpY2UgdG8gdGhlIGd1ZXN0ICovCi0gICAgICAgICAgICAgICAgZ290byBk b19iYWNrZW5kX3BoeTsKKyAgICAgICAgICAgICAgICBMT0coRVJST1IsICJibGt0YXAgaXMgbm90 IHN1cHBvcnRlZCIpOworICAgICAgICAgICAgICAgIHJjID0gRVJST1JfRkFJTDsKKyAgICAgICAg ICAgICAgICBnb3RvIG91dDsKICAgICAgICAgICAgIGNhc2UgTElCWExfRElTS19CQUNLRU5EX1FE SVNLOgogICAgICAgICAgICAgICAgIGZsZXhhcnJheV9hcHBlbmQoYmFjaywgInBhcmFtcyIpOwog ICAgICAgICAgICAgICAgIGZsZXhhcnJheV9hcHBlbmQoYmFjaywgR0NTUFJJTlRGKCIlczolcyIs CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9ibGt0YXAyLmMgYi90b29scy9saWJ4bC9s aWJ4bF9ibGt0YXAyLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjOWEwYTIuLjAw MDAwMDAKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfYmxrdGFwMi5jCisrKyAvZGV2L251bGwKQEAg LTEsOTQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCAgICAgIEFkdmFuY2VkIE1p Y3JvIERldmljZXMKLSAqIEF1dGhvciBDaHJpc3RvcGggRWdnZXIgPENocmlzdG9waC5FZ2dlckBh bWQuY29tPgotICoKLSAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKLSAqIGJ5IHRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IHZlcnNpb24gMi4xIG9ubHkuCi0gKgotICogVGhp cyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm dWwsCi0gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZCB3YXJyYW50eSBvZgotICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFLiAgU2VlIHRoZQotICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKi8KLQotI2luY2x1ZGUgImxpYnhsX29zZGVwcy5oIiAv KiBtdXN0IGNvbWUgYmVmb3JlIGFueSBvdGhlciBoZWFkZXJzICovCi0jaW5jbHVkZSAibGlieGxf aW50ZXJuYWwuaCIKLQotI2luY2x1ZGUgInRhcC1jdGwuaCIKLQotaW50IGxpYnhsX19ibGt0YXBf ZW5hYmxlZChsaWJ4bF9fZ2MgKmdjKQotewotICAgIGNvbnN0IGNoYXIgKm1zZzsKLSAgICByZXR1 cm4gIXRhcF9jdGxfY2hlY2soJm1zZyk7Ci19Ci0KLWNoYXIgKmxpYnhsX19ibGt0YXBfZGV2cGF0 aChsaWJ4bF9fZ2MgKmdjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg KmRpc2ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZGlza19mb3JtYXQgZm9y bWF0KQotewotICAgIGNvbnN0IGNoYXIgKnR5cGU7Ci0gICAgY2hhciAqcGFyYW1zLCAqZGV2bmFt ZSA9IE5VTEw7Ci0gICAgdGFwX2xpc3RfdCB0YXA7Ci0gICAgaW50IGVycjsKLQotICAgIHR5cGUg PSBsaWJ4bF9fZGV2aWNlX2Rpc2tfc3RyaW5nX29mX2Zvcm1hdChmb3JtYXQpOwotICAgIGVyciA9 IHRhcF9jdGxfZmluZCh0eXBlLCBkaXNrLCAmdGFwKTsKLSAgICBpZiAoZXJyID09IDApIHsKLSAg ICAgICAgZGV2bmFtZSA9IEdDU1BSSU5URigiL2Rldi94ZW4vYmxrdGFwLTIvdGFwZGV2JWQiLCB0 YXAubWlub3IpOwotICAgICAgICBpZiAoZGV2bmFtZSkKLSAgICAgICAgICAgIHJldHVybiBkZXZu YW1lOwotICAgIH0KLQotICAgIHBhcmFtcyA9IEdDU1BSSU5URigiJXM6JXMiLCB0eXBlLCBkaXNr KTsKLSAgICBlcnIgPSB0YXBfY3RsX2NyZWF0ZShwYXJhbXMsICZkZXZuYW1lKTsKLSAgICBpZiAo IWVycikgewotICAgICAgICBsaWJ4bF9fcHRyX2FkZChnYywgZGV2bmFtZSk7Ci0gICAgICAgIHJl dHVybiBkZXZuYW1lOwotICAgIH0KLQotICAgIGZyZWUoZGV2bmFtZSk7Ci0gICAgcmV0dXJuIE5V TEw7Ci19Ci0KLQotaW50IGxpYnhsX19kZXZpY2VfZGVzdHJveV90YXBkaXNrKGxpYnhsX19nYyAq Z2MsIGNvbnN0IGNoYXIgKnBhcmFtcykKLXsKLSAgICBjaGFyICp0eXBlLCAqZGlzazsKLSAgICBp bnQgZXJyOwotICAgIHRhcF9saXN0X3QgdGFwOwotCi0gICAgdHlwZSA9IGxpYnhsX19zdHJkdXAo Z2MsIHBhcmFtcyk7Ci0KLSAgICBkaXNrID0gc3RyY2hyKHR5cGUsICc6Jyk7Ci0gICAgaWYgKCFk aXNrKSB7Ci0gICAgICAgIExPRyhFUlJPUiwgIlVuYWJsZSB0byBwYXJzZSBwYXJhbXMgJXMiLCBw YXJhbXMpOwotICAgICAgICByZXR1cm4gRVJST1JfSU5WQUw7Ci0gICAgfQotCi0gICAgKmRpc2sr KyA9ICdcMCc7Ci0KLSAgICBlcnIgPSB0YXBfY3RsX2ZpbmQodHlwZSwgZGlzaywgJnRhcCk7Ci0g ICAgaWYgKGVyciA8IDApIHsKLSAgICAgICAgLyogcmV0dXJucyAtZXJybm8gKi8KLSAgICAgICAg TE9HRVYoRVJST1IsIC1lcnIsICJVbmFibGUgdG8gZmluZCB0eXBlICVzIGRpc2sgJXMiLCB0eXBl LCBkaXNrKTsKLSAgICAgICAgcmV0dXJuIEVSUk9SX0ZBSUw7Ci0gICAgfQotCi0gICAgZXJyID0g dGFwX2N0bF9kZXN0cm95KHRhcC5pZCwgdGFwLm1pbm9yKTsKLSAgICBpZiAoZXJyIDwgMCkgewot ICAgICAgICBMT0dFVihFUlJPUiwgLWVyciwgIkZhaWxlZCB0byBkZXN0cm95IHRhcCBkZXZpY2Ug aWQgJWQgbWlub3IgJWQiLAotICAgICAgICAgICAgICB0YXAuaWQsIHRhcC5taW5vcik7Ci0gICAg ICAgIHJldHVybiBFUlJPUl9GQUlMOwotICAgIH0KLQotICAgIHJldHVybiAwOwotfQotCi0vKgot ICogTG9jYWwgdmFyaWFibGVzOgotICogbW9kZTogQwotICogYy1iYXNpYy1vZmZzZXQ6IDQKLSAq IGluZGVudC10YWJzLW1vZGU6IG5pbAotICogRW5kOgotICovCmRpZmYgLS1naXQgYS90b29scy9s aWJ4bC9saWJ4bF9kZXZpY2UuYyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RldmljZS5jCmluZGV4IGRi ZjE1N2QuLjljNzdiNjIgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2RldmljZS5jCisr KyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RldmljZS5jCkBAIC0yNzEsMjYgKzI3MSw5IEBAIHN0YXRp YyBpbnQgZGlza190cnlfYmFja2VuZChkaXNrX3RyeV9iYWNrZW5kX2FyZ3MgKmEsCiAgICAgICAg IHJldHVybiAwOwogCiAgICAgY2FzZSBMSUJYTF9ESVNLX0JBQ0tFTkRfVEFQOgotICAgICAgICBp ZiAoYS0+ZGlzay0+c2NyaXB0KSBnb3RvIGJhZF9zY3JpcHQ7Ci0KLSAgICAgICAgaWYgKGxpYnhs X2RlZmJvb2xfdmFsKGEtPmRpc2stPmNvbG9fZW5hYmxlKSkKLSAgICAgICAgICAgIGdvdG8gYmFk X2NvbG87Ci0KLSAgICAgICAgaWYgKGEtPmRpc2stPmlzX2Nkcm9tKSB7Ci0gICAgICAgICAgICBM T0coREVCVUcsICJEaXNrIHZkZXY9JXMsIGJhY2tlbmQgdGFwIHVuc3VpdGFibGUgZm9yIGNkcm9t cyIsCi0gICAgICAgICAgICAgICAgICAgICAgIGEtPmRpc2stPnZkZXYpOwotICAgICAgICAgICAg cmV0dXJuIDA7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKCFsaWJ4bF9fYmxrdGFwX2VuYWJsZWQo YS0+Z2MpKSB7Ci0gICAgICAgICAgICBMT0coREVCVUcsICJEaXNrIHZkZXY9JXMsIGJhY2tlbmQg dGFwIHVuc3VpdGFibGUgYmVjYXVzZSBibGt0YXAgIgotICAgICAgICAgICAgICAgICAgICAgICAi bm90IGF2YWlsYWJsZSIsIGEtPmRpc2stPnZkZXYpOwotICAgICAgICAgICAgcmV0dXJuIDA7Ci0g ICAgICAgIH0KLSAgICAgICAgaWYgKCEoYS0+ZGlzay0+Zm9ybWF0ID09IExJQlhMX0RJU0tfRk9S TUFUX1JBVyB8fAotICAgICAgICAgICAgICBhLT5kaXNrLT5mb3JtYXQgPT0gTElCWExfRElTS19G T1JNQVRfVkhEKSkgewotICAgICAgICAgICAgZ290byBiYWRfZm9ybWF0OwotICAgICAgICB9Ci0g ICAgICAgIHJldHVybiBiYWNrZW5kOworICAgICAgICBMT0coREVCVUcsICJEaXNrIHZkZXY9JXMs IGJhY2tlbmQgdGFwIHVuc3VpdGFibGUgYmVjYXVzZSBibGt0YXAgIgorICAgICAgICAgICAgICAg ICAgICJub3Qgc3VwcG9ydGVkIiwgYS0+ZGlzay0+dmRldik7CisgICAgICAgIHJldHVybiAwOwog CiAgICAgY2FzZSBMSUJYTF9ESVNLX0JBQ0tFTkRfUURJU0s6CiAgICAgICAgIGlmIChhLT5kaXNr LT5zY3JpcHQpIGdvdG8gYmFkX3NjcmlwdDsKQEAgLTY4Miw4ICs2NjUsNiBAQCBpbnQgbGlieGxf X2RldmljZV9kZXN0cm95KGxpYnhsX19nYyAqZ2MsIGxpYnhsX19kZXZpY2UgKmRldikKICAgICBj b25zdCBjaGFyICpiZV9wYXRoID0gbGlieGxfX2RldmljZV9iYWNrZW5kX3BhdGgoZ2MsIGRldik7 CiAgICAgY29uc3QgY2hhciAqZmVfcGF0aCA9IGxpYnhsX19kZXZpY2VfZnJvbnRlbmRfcGF0aChn YywgZGV2KTsKICAgICBjb25zdCBjaGFyICpsaWJ4bF9wYXRoID0gbGlieGxfX2RldmljZV9saWJ4 bF9wYXRoKGdjLCBkZXYpOwotICAgIGNvbnN0IGNoYXIgKnRhcGRpc2tfcGF0aCA9IEdDU1BSSU5U RigiJXMvJXMiLCBiZV9wYXRoLCAidGFwZGlzay1wYXJhbXMiKTsKLSAgICBjb25zdCBjaGFyICp0 YXBkaXNrX3BhcmFtczsKICAgICB4c190cmFuc2FjdGlvbl90IHQgPSAwOwogICAgIGludCByYzsK ICAgICB1aW50MzJfdCBkb21pZDsKQEAgLTY5NSwxMCArNjc2LDYgQEAgaW50IGxpYnhsX19kZXZp Y2VfZGVzdHJveShsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fZGV2aWNlICpkZXYpCiAgICAgICAgIHJj ID0gbGlieGxfX3hzX3RyYW5zYWN0aW9uX3N0YXJ0KGdjLCAmdCk7CiAgICAgICAgIGlmIChyYykg Z290byBvdXQ7CiAKLSAgICAgICAgLyogTWF5IG5vdCBleGlzdCBpZiB0aGlzIGlzIG5vdCBhIHRh cCBkZXZpY2UgKi8KLSAgICAgICAgcmMgPSBsaWJ4bF9feHNfcmVhZF9jaGVja2VkKGdjLCB0LCB0 YXBkaXNrX3BhdGgsICZ0YXBkaXNrX3BhcmFtcyk7Ci0gICAgICAgIGlmIChyYykgZ290byBvdXQ7 Ci0KICAgICAgICAgaWYgKGRvbWlkID09IExJQlhMX1RPT0xTVEFDS19ET01JRCkgewogICAgICAg ICAgICAgLyoKICAgICAgICAgICAgICAqIFRoZSB0b29sc3RhY2sgZG9tYWluIGlzIGluIGNoYXJn ZSBvZiByZW1vdmluZyB0aGUKQEAgLTcyMCw5ICs2OTcsNiBAQCBpbnQgbGlieGxfX2RldmljZV9k ZXN0cm95KGxpYnhsX19nYyAqZ2MsIGxpYnhsX19kZXZpY2UgKmRldikKICAgICAgICAgaWYgKHJj IDwgMCkgZ290byBvdXQ7CiAgICAgfQogCi0gICAgaWYgKHRhcGRpc2tfcGFyYW1zKQotICAgICAg ICByYyA9IGxpYnhsX19kZXZpY2VfZGVzdHJveV90YXBkaXNrKGdjLCB0YXBkaXNrX3BhcmFtcyk7 Ci0KIG91dDoKICAgICBsaWJ4bF9feHNfdHJhbnNhY3Rpb25fYWJvcnQoZ2MsICZ0KTsKICAgICBy ZXR1cm4gcmM7CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kbS5jIGIvdG9vbHMvbGli eGwvbGlieGxfZG0uYwppbmRleCBlM2JmMjhmLi4xZGE5NTZlIDEwMDY0NAotLS0gYS90b29scy9s aWJ4bC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RtLmMKQEAgLTEzNjIsMjAg KzEzNjIsOSBAQCBzdGF0aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWxfYXJnc19uZXco bGlieGxfX2djICpnYywKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAg ICAgICAgfQogCi0gICAgICAgICAgICAgICAgLyogCi0gICAgICAgICAgICAgICAgICogV2UgY2Fu J3QgY2FsbCBsaWJ4bF9fYmxrdGFwX2RldnBhdGggZnJvbQotICAgICAgICAgICAgICAgICAqIGxp YnhsX19kZXZpY2VfZGlza19maW5kX2xvY2FsX3BhdGggZm9yIG5vdyBiZWNhdXNlCi0gICAgICAg ICAgICAgICAgICogdGhlIGJvb3Rsb2FkZXIgaXMgY2FsbGVkIGJlZm9yZSB0aGUgZGlza3MgYXJl IHNldAotICAgICAgICAgICAgICAgICAqIHVwLCBzbyB0aGlzIGZ1bmN0aW9uIHdvdWxkIHNldCB1 cCBhIGJsa3RhcCBub2RlLAotICAgICAgICAgICAgICAgICAqIGJ1dCB0aGVyZSdzIG5vIFRBUCB0 ZWFyLWRvd24gb24gZXJyb3IgY29uZGl0aW9ucyBpbgotICAgICAgICAgICAgICAgICAqIHRoZSBi b290bG9hZGVyIHBhdGguCi0gICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgaWYg KGRpc2tzW2ldLmJhY2tlbmQgPT0gTElCWExfRElTS19CQUNLRU5EX1RBUCkKLSAgICAgICAgICAg ICAgICAgICAgdGFyZ2V0X3BhdGggPSBsaWJ4bF9fYmxrdGFwX2RldnBhdGgoZ2MsIGRpc2tzW2ld LnBkZXZfcGF0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZGlza3NbaV0uZm9ybWF0KTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAg ICAgICAgICAgICAgICAgIHRhcmdldF9wYXRoID0gbGlieGxfX2RldmljZV9kaXNrX2ZpbmRfbG9j YWxfcGF0aChnYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBndWVzdF9kb21pZCwgJmRpc2tzW2ldLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBhc3Nl cnQoZGlza3NbaV0uYmFja2VuZCAhPSBMSUJYTF9ESVNLX0JBQ0tFTkRfVEFQKTsKKyAgICAgICAg ICAgICAgICB0YXJnZXRfcGF0aCA9IGxpYnhsX19kZXZpY2VfZGlza19maW5kX2xvY2FsX3BhdGgo Z2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBndWVzdF9kb21pZCwgJmRp c2tzW2ldLCB0cnVlKTsKIAogICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0X3BhdGgpIHsKICAg ICAgICAgICAgICAgICAgICAgTE9HKFdBUk4sICJObyB3YXkgdG8gZ2V0IGxvY2FsIGFjY2VzcyBk aXNrIHRvIGltYWdlOiAlc1xuIgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJu YWwuaCBiL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmgKaW5kZXggMTIyMmZmYS4uNTFkNTA1 ZiAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAorKysgYi90b29scy9s aWJ4bC9saWJ4bF9pbnRlcm5hbC5oCkBAIC0xNzA1LDI1ICsxNzA1LDYgQEAgc3RydWN0IGxpYnhs X19jcHVpZF9wb2xpY3kgewogICAgIGNoYXIgKnBvbGljeVs0XTsKIH07CiAKLS8qCi0gKiBibGt0 YXAyIHN1cHBvcnQKLSAqLwotCi0vKiBsaWJ4bF9fYmxrdGFwX2VuYWJsZWQ6Ci0gKiAgICByZXR1 cm4gdHJ1ZSBpZiBibGt0YXAvYmxrdGFwMiBzdXBwb3J0IGlzIGF2YWlsYWJsZS4KLSAqLwotX2hp ZGRlbiBpbnQgbGlieGxfX2Jsa3RhcF9lbmFibGVkKGxpYnhsX19nYyAqZ2MpOwotCi0vKiBsaWJ4 bF9fYmxrdGFwX2RldnBhdGg6Ci0gKiAgICBBcmd1bWVudDogcGF0aCBhbmQgZGlzayBpbWFnZSBh cyBzcGVjaWZpZWQgaW4gY29uZmlnIGZpbGUuCi0gKiAgICAgIFRoZSB0eXBlIHNwZWNpZmllcyB3 aGV0aGVyIHRoaXMgaXMgYWlvLCBxY293LCBxY293MiwgZXRjLgotICogICAgcmV0dXJucyBkZXZp Y2UgcGF0aCB4ZW5zdG9yZSB3YW50cyB0byBoYXZlLiByZXR1cm5zIE5VTEwKLSAqICAgICAgaWYg bm8gZGV2aWNlIGNvcnJlc3BvbmRzIHRvIHRoZSBkaXNrLgotICovCi1faGlkZGVuIGNoYXIgKmxp YnhsX19ibGt0YXBfZGV2cGF0aChsaWJ4bF9fZ2MgKmdjLAotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZGlzaywKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGxpYnhsX2Rpc2tfZm9ybWF0IGZvcm1hdCk7Ci0KIC8qIGxpYnhsX19kZXZp Y2VfZGVzdHJveV90YXBkaXNrOgogICogICBEZXN0cm95cyBhbnkgdGFwZGlzayBwcm9jZXNzIGFz c29jaWF0ZWQgd2l0aCB0aGUgYmFja2VuZCByZXByZXNlbnRlZAogICogICBieSBiZV9wYXRoLgpk aWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfbm9ibGt0YXAyLmMgYi90b29scy9saWJ4bC9s aWJ4bF9ub2Jsa3RhcDIuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWE4NmVkMS4u MDAwMDAwMAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9ub2Jsa3RhcDIuYworKysgL2Rldi9udWxs CkBAIC0xLDQyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAgICAgICBBZHZhbmNl ZCBNaWNybyBEZXZpY2VzCi0gKiBBdXRob3IgQ2hyaXN0b3BoIEVnZ2VyIDxDaHJpc3RvcGguRWdn ZXJAYW1kLmNvbT4KLSAqCi0gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQotICogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkCi0gKiBi eSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyB2ZXJzaW9uIDIuMSBvbmx5LgotICoKLSAq IFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAotICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YKLSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKLSAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMg TGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgotICovCi0KLSNpbmNsdWRlICJsaWJ4bF9vc2RlcHMu aCIgLyogbXVzdCBjb21lIGJlZm9yZSBhbnkgb3RoZXIgaGVhZGVycyAqLwotCi0jaW5jbHVkZSAi bGlieGxfaW50ZXJuYWwuaCIKLQotaW50IGxpYnhsX19ibGt0YXBfZW5hYmxlZChsaWJ4bF9fZ2Mg KmdjKQotewotICAgIHJldHVybiAwOwotfQotCi1jaGFyICpsaWJ4bF9fYmxrdGFwX2RldnBhdGgo bGlieGxfX2djICpnYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpk aXNrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2Rpc2tfZm9ybWF0IGZvcm1h dCkKLXsKLSAgICByZXR1cm4gTlVMTDsKLX0KLQotaW50IGxpYnhsX19kZXZpY2VfZGVzdHJveV90 YXBkaXNrKGxpYnhsX19nYyAqZ2MsIGNvbnN0IGNoYXIgKnBhcmFtcykKLXsKLSAgICByZXR1cm4g MDsKLX0KLQotLyoKLSAqIExvY2FsIHZhcmlhYmxlczoKLSAqIG1vZGU6IEMKLSAqIGMtYmFzaWMt b2Zmc2V0OiA0Ci0gKiBpbmRlbnQtdGFicy1tb2RlOiBuaWwKLSAqIEVuZDoKLSAqLwpkaWZmIC0t Z2l0IGEvdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmMgYi90b29scy94ZW5zdG9yZS9oYXNodGFi bGUuYwppbmRleCAwYmExZDU1Li4zOTRiMWNmIDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS9o YXNodGFibGUuYworKysgYi90b29scy94ZW5zdG9yZS9oYXNodGFibGUuYwpAQCAtMSwxMCArMSw1 IEBACiAvKiBDb3B5cmlnaHQgKEMpIDIwMDQgQ2hyaXN0b3BoZXIgQ2xhcmsgPGZpcnN0bmFtZS5s YXN0bmFtZUBjbC5jYW0uYWMudWs+ICovCiAKLS8qCi0gKiBUaGVyZSBhcmUgZHVwbGljYXRlcyBv ZiB0aGlzIGNvZGUgaW46Ci0gKiAgLSB0b29scy9ibGt0YXAyL2RyaXZlcnMvaGFzaHRhYmxlLmMK LSAqLwotCiAjaW5jbHVkZSAiaGFzaHRhYmxlLmgiCiAjaW5jbHVkZSAiaGFzaHRhYmxlX3ByaXZh dGUuaCIKICNpbmNsdWRlIDxzdGRsaWIuaD4KZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL2hh c2h0YWJsZS5oIGIvdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmgKaW5kZXggNGQ2ODIyMy4uYjkw NzgxYSAxMDA2NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUvaGFzaHRhYmxlLmgKKysrIGIvdG9vbHMv eGVuc3RvcmUvaGFzaHRhYmxlLmgKQEAgLTEsMTAgKzEsNSBAQAogLyogQ29weXJpZ2h0IChDKSAy MDAyIENocmlzdG9waGVyIENsYXJrIDxmaXJzdG5hbWUubGFzdG5hbWVAY2wuY2FtLmFjLnVrPiAq LwogCi0vKgotICogVGhlcmUgYXJlIGR1cGxpY2F0ZXMgb2YgdGhpcyBjb2RlIGluOgotICogIC0g dG9vbHMvYmxrdGFwMi9kcml2ZXJzL2hhc2h0YWJsZS5oCi0gKi8KLQogI2lmbmRlZiBfX0hBU0hU QUJMRV9DV0MyMl9IX18KICNkZWZpbmUgX19IQVNIVEFCTEVfQ1dDMjJfSF9fCiAKZGlmZiAtLWdp dCBhL3Rvb2xzL3hlbnN0b3JlL2hhc2h0YWJsZV9wcml2YXRlLmggYi90b29scy94ZW5zdG9yZS9o YXNodGFibGVfcHJpdmF0ZS5oCmluZGV4IGEwODU1OWQuLjNlOTVmNjAgMTAwNjQ0Ci0tLSBhL3Rv b2xzL3hlbnN0b3JlL2hhc2h0YWJsZV9wcml2YXRlLmgKKysrIGIvdG9vbHMveGVuc3RvcmUvaGFz aHRhYmxlX3ByaXZhdGUuaApAQCAtMSwxMCArMSw1IEBACiAvKiBDb3B5cmlnaHQgKEMpIDIwMDIs IDIwMDQgQ2hyaXN0b3BoZXIgQ2xhcmsgPGZpcnN0bmFtZS5sYXN0bmFtZUBjbC5jYW0uYWMudWs+ ICovCiAKLS8qCi0gKiBUaGVyZSBhcmUgZHVwbGljYXRlcyBvZiB0aGlzIGNvZGUgaW46Ci0gKiAg LSB0b29scy9ibGt0YXAyL2RyaXZlcnMvaGFzaHRhYmxlX3ByaXZhdGUuaAotICovCi0KICNpZm5k ZWYgX19IQVNIVEFCTEVfUFJJVkFURV9DV0MyMl9IX18KICNkZWZpbmUgX19IQVNIVEFCTEVfUFJJ VkFURV9DV0MyMl9IX18KIAotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0 cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK