From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: [PATCH v7 1/6] iommu: rename iommu_dom0_strict and iommu_passthrough Date: Wed, 22 Aug 2018 09:51:55 +0200 Message-ID: <20180822075200.50278-2-roger.pau@citrix.com> References: <20180822075200.50278-1-roger.pau@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fsNw6-0000nD-LO for xen-devel@lists.xenproject.org; Wed, 22 Aug 2018 07:52:14 +0000 In-Reply-To: <20180822075200.50278-1-roger.pau@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Kevin Tian , Jan Beulich , Andrew Cooper , Suravee Suthikulpanit , Brian Woods , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org VG8gaW9tbXVfaHdkb21fc3RyaWN0IGFuZCBpb21tdV9od2RvbV9wYXNzdGhyb3VnaCB3aGljaCBp cyBtb3JlCmRlc2NyaXB0aXZlIG9mIHRoZWlyIHVzYWdlLiBBbHNvIGNoYW5nZSB0aGVpciB0eXBl IGZyb20gYm9vbF90IHRvCmJvb2wuCgpObyBmdW5jdGlvbmFsIGNoYW5nZS4KClNpZ25lZC1vZmYt Ynk6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpSZXZpZXdlZC1ieTog SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogS2V2aW4gVGlhbiA8 a2V2aW4udGlhbkBpbnRlbC5jb20+Ci0tLQpDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2Uu Y29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KQ2M6IFN1 cmF2ZWUgU3V0aGlrdWxwYW5pdCA8c3VyYXZlZS5zdXRoaWt1bHBhbml0QGFtZC5jb20+CkNjOiBC cmlhbiBXb29kcyA8YnJpYW4ud29vZHNAYW1kLmNvbT4KQ2M6IEtldmluIFRpYW4gPGtldmluLnRp YW5AaW50ZWwuY29tPgotLS0KQ2hhbmdlcyBzaW5jZSB2NToKIC0gUmVtb3ZlIHVubmVlZGVkICEh LgoKQ2hhbmdlcyBzaW5jZSB2NDoKIC0gTmV3IGluIHRoaXMgdmVyc2lvbi4KLS0tCiB4ZW4vYXJj aC94ODYveDg2XzY0L21tLmMgICAgICAgICAgICAgICAgICAgIHwgIDMgKystCiB4ZW4vZHJpdmVy cy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfaW5pdC5jICAgIHwgIDIgKy0KIHhlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMgfCAgNCArLS0KIHhlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL2lvbW11LmMgICAgICAgICAgICAgfCAyNyArKysrKysrKysrKy0tLS0tLS0tLS0KIHhl bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jICAgICAgICAgfCAxNiArKysrKystLS0t LS0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvdnRkLmMgICAgICAgfCAgMiArLQog eGVuL2luY2x1ZGUveGVuL2lvbW11LmggICAgICAgICAgICAgICAgICAgICB8ICA2ICsrKy0tCiA3 IGZpbGVzIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3hlbi9hcmNoL3g4Ni94ODZfNjQvbW0uYyBiL3hlbi9hcmNoL3g4Ni94ODZfNjQvbW0u YwppbmRleCBjY2E0YWU5MjZlLi4wOTNhZDVkYWIxIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYv eDg2XzY0L21tLmMKKysrIGIveGVuL2FyY2gveDg2L3g4Nl82NC9tbS5jCkBAIC0xNDI2LDcgKzE0 MjYsOCBAQCBpbnQgbWVtb3J5X2FkZCh1bnNpZ25lZCBsb25nIHNwZm4sIHVuc2lnbmVkIGxvbmcg ZXBmbiwgdW5zaWduZWQgaW50IHB4bSkKICAgICBpZiAoIHJldCApCiAgICAgICAgIGdvdG8gZGVz dHJveV9tMnA7CiAKLSAgICBpZiAoIGlvbW11X2VuYWJsZWQgJiYgIWlvbW11X3Bhc3N0aHJvdWdo ICYmICFuZWVkX2lvbW11KGhhcmR3YXJlX2RvbWFpbikgKQorICAgIGlmICggaW9tbXVfZW5hYmxl ZCAmJiAhaW9tbXVfaHdkb21fcGFzc3Rocm91Z2ggJiYKKyAgICAgICAgICFuZWVkX2lvbW11KGhh cmR3YXJlX2RvbWFpbikgKQogICAgIHsKICAgICAgICAgZm9yICggaSA9IHNwZm47IGkgPCBlcGZu OyBpKysgKQogICAgICAgICAgICAgaWYgKCBpb21tdV9tYXBfcGFnZShoYXJkd2FyZV9kb21haW4s IGksIGksIElPTU1VRl9yZWFkYWJsZXxJT01NVUZfd3JpdGFibGUpICkKZGlmZiAtLWdpdCBhL3hl bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9pbml0LmMgYi94ZW4vZHJpdmVycy9wYXNz dGhyb3VnaC9hbWQvaW9tbXVfaW5pdC5jCmluZGV4IDQ3NDk5MmE3NWEuLjE1YzEwYjA5MjkgMTAw NjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9pbml0LmMKKysrIGIv eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQuYwpAQCAtMTA2Miw3ICsxMDYy LDcgQEAgc3RhdGljIHZvaWQgX19pbml0IGFtZF9pb21tdV9pbml0X2NsZWFudXAodm9pZCkKICAg ICByYWRpeF90cmVlX2Rlc3Ryb3koJml2cnNfbWFwcywgeGZyZWUpOwogCiAgICAgaW9tbXVfZW5h YmxlZCA9IDA7Ci0gICAgaW9tbXVfcGFzc3Rocm91Z2ggPSAwOworICAgIGlvbW11X2h3ZG9tX3Bh c3N0aHJvdWdoID0gZmFsc2U7CiAgICAgaW9tbXVfaW50cmVtYXAgPSAwOwogICAgIGlvbW11djJf ZW5hYmxlZCA9IDA7CiB9CmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQv cGNpX2FtZF9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9t bXUuYwppbmRleCAxMmQyNjk1Yjg5Li5hYjM5ZTc1MDBkIDEwMDY0NAotLS0gYS94ZW4vZHJpdmVy cy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMgdm9p ZCBhbWRfaW9tbXVfc2V0dXBfZG9tYWluX2RldmljZSgKICAgICBCVUdfT04oICFoZC0+YXJjaC5y b290X3RhYmxlIHx8ICFoZC0+YXJjaC5wYWdpbmdfbW9kZSB8fAogICAgICAgICAgICAgIWlvbW11 LT5kZXZfdGFibGUuYnVmZmVyICk7CiAKLSAgICBpZiAoIGlvbW11X3Bhc3N0aHJvdWdoICYmIGlz X2hhcmR3YXJlX2RvbWFpbihkb21haW4pICkKKyAgICBpZiAoIGlvbW11X2h3ZG9tX3Bhc3N0aHJv dWdoICYmIGlzX2hhcmR3YXJlX2RvbWFpbihkb21haW4pICkKICAgICAgICAgdmFsaWQgPSAwOwog CiAgICAgaWYgKCBhdHNfZW5hYmxlZCApCkBAIC0yNTYsNyArMjU2LDcgQEAgc3RhdGljIHZvaWQg X19od2RvbV9pbml0IGFtZF9pb21tdV9od2RvbV9pbml0KHN0cnVjdCBkb21haW4gKmQpCiAgICAg aWYgKCBhbGxvY2F0ZV9kb21haW5fcmVzb3VyY2VzKGRvbV9pb21tdShkKSkgKQogICAgICAgICBC VUcoKTsKIAotICAgIGlmICggIWlvbW11X3Bhc3N0aHJvdWdoICYmICFuZWVkX2lvbW11KGQpICkK KyAgICBpZiAoICFpb21tdV9od2RvbV9wYXNzdGhyb3VnaCAmJiAhbmVlZF9pb21tdShkKSApCiAg ICAgewogICAgICAgICBpbnQgcmMgPSAwOwogCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNz dGhyb3VnaC9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYwppbmRleCA3 MGQyMThmOTEwLi43MjllZTVjMzczIDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn aC9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMKQEAgLTUyLDE1 ICs1MiwxNiBAQCBjdXN0b21fcGFyYW0oImlvbW11IiwgcGFyc2VfaW9tbXVfcGFyYW0pOwogYm9v bF90IF9faW5pdGRhdGEgaW9tbXVfZW5hYmxlID0gMTsKIGJvb2xfdCBfX3JlYWRfbW9zdGx5IGlv bW11X2VuYWJsZWQ7CiBib29sX3QgX19yZWFkX21vc3RseSBmb3JjZV9pb21tdTsKLWJvb2xfdCBf X2h3ZG9tX2luaXRkYXRhIGlvbW11X2RvbTBfc3RyaWN0OwogYm9vbF90IF9fcmVhZF9tb3N0bHkg aW9tbXVfdmVyYm9zZTsKIGJvb2xfdCBfX3JlYWRfbW9zdGx5IGlvbW11X3dvcmthcm91bmRfYmlv c19idWc7CiBib29sX3QgX19yZWFkX21vc3RseSBpb21tdV9pZ2Z4ID0gMTsKLWJvb2xfdCBfX3Jl YWRfbW9zdGx5IGlvbW11X3Bhc3N0aHJvdWdoOwogYm9vbF90IF9fcmVhZF9tb3N0bHkgaW9tbXVf c25vb3AgPSAxOwogYm9vbF90IF9fcmVhZF9tb3N0bHkgaW9tbXVfcWludmFsID0gMTsKIGJvb2xf dCBfX3JlYWRfbW9zdGx5IGlvbW11X2ludHJlbWFwID0gMTsKIAorYm9vbCBfX2h3ZG9tX2luaXRk YXRhIGlvbW11X2h3ZG9tX3N0cmljdDsKK2Jvb2wgX19yZWFkX21vc3RseSBpb21tdV9od2RvbV9w YXNzdGhyb3VnaDsKKwogLyoKICAqIEluIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG9mIFZU LWQgcG9zdGVkIGludGVycnVwdHMsIGluIHNvbWUgZXh0cmVtZQogICogY2FzZXMsIHRoZSBwZXIg Y3B1IGxpc3Qgd2hpY2ggc2F2ZXMgdGhlIGJsb2NrZWQgdkNQVSB3aWxsIGJlIHZlcnkgbG9uZywK QEAgLTEyMSw5ICsxMjIsOSBAQCBzdGF0aWMgaW50IF9faW5pdCBwYXJzZV9pb21tdV9wYXJhbShj b25zdCBjaGFyICpzKQogICAgICAgICBlbHNlIGlmICggIXN0cm5jbXAocywgImFtZC1pb21tdS1w ZXJkZXYtaW50cmVtYXAiLCBzcyAtIHMpICkKICAgICAgICAgICAgIGFtZF9pb21tdV9wZXJkZXZf aW50cmVtYXAgPSB2YWw7CiAgICAgICAgIGVsc2UgaWYgKCAhc3RybmNtcChzLCAiZG9tMC1wYXNz dGhyb3VnaCIsIHNzIC0gcykgKQotICAgICAgICAgICAgaW9tbXVfcGFzc3Rocm91Z2ggPSB2YWw7 CisgICAgICAgICAgICBpb21tdV9od2RvbV9wYXNzdGhyb3VnaCA9IHZhbDsKICAgICAgICAgZWxz ZSBpZiAoICFzdHJuY21wKHMsICJkb20wLXN0cmljdCIsIHNzIC0gcykgKQotICAgICAgICAgICAg aW9tbXVfZG9tMF9zdHJpY3QgPSB2YWw7CisgICAgICAgICAgICBpb21tdV9od2RvbV9zdHJpY3Qg PSB2YWw7CiAgICAgICAgIGVsc2UgaWYgKCAhc3RybmNtcChzLCAic2hhcmVwdCIsIHNzIC0gcykg KQogICAgICAgICAgICAgaW9tbXVfaGFwX3B0X3NoYXJlID0gdmFsOwogICAgICAgICBlbHNlCkBA IC0xNTgsMTEgKzE1OSwxMSBAQCBzdGF0aWMgdm9pZCBfX2h3ZG9tX2luaXQgY2hlY2tfaHdkb21f cmVxcyhzdHJ1Y3QgZG9tYWluICpkKQogCiAgICAgYXJjaF9pb21tdV9jaGVja19hdXRvdHJhbnNs YXRlZF9od2RvbShkKTsKIAotICAgIGlmICggaW9tbXVfcGFzc3Rocm91Z2ggKQorICAgIGlmICgg aW9tbXVfaHdkb21fcGFzc3Rocm91Z2ggKQogICAgICAgICBwYW5pYygiRG9tMCB1c2VzIHBhZ2lu ZyB0cmFuc2xhdGVkIG1vZGUsIGRvbTAtcGFzc3Rocm91Z2ggbXVzdCBub3QgYmUgIgogICAgICAg ICAgICAgICAiZW5hYmxlZFxuIik7CiAKLSAgICBpb21tdV9kb20wX3N0cmljdCA9IDE7CisgICAg aW9tbXVfaHdkb21fc3RyaWN0ID0gdHJ1ZTsKIH0KIAogdm9pZCBfX2h3ZG9tX2luaXQgaW9tbXVf aHdkb21faW5pdChzdHJ1Y3QgZG9tYWluICpkKQpAQCAtMTc1LDcgKzE3Niw3IEBAIHZvaWQgX19o d2RvbV9pbml0IGlvbW11X2h3ZG9tX2luaXQoc3RydWN0IGRvbWFpbiAqZCkKICAgICAgICAgcmV0 dXJuOwogCiAgICAgcmVnaXN0ZXJfa2V5aGFuZGxlcignbycsICZpb21tdV9kdW1wX3AybV90YWJs ZSwgImR1bXAgaW9tbXUgcDJtIHRhYmxlIiwgMCk7Ci0gICAgZC0+bmVlZF9pb21tdSA9ICEhaW9t bXVfZG9tMF9zdHJpY3Q7CisgICAgZC0+bmVlZF9pb21tdSA9IGlvbW11X2h3ZG9tX3N0cmljdDsK ICAgICBpZiAoIG5lZWRfaW9tbXUoZCkgJiYgIWlvbW11X3VzZV9oYXBfcHQoZCkgKQogICAgIHsK ICAgICAgICAgc3RydWN0IHBhZ2VfaW5mbyAqcGFnZTsKQEAgLTM3MSw4ICszNzIsOCBAQCBpbnQg X19pbml0IGlvbW11X3NldHVwKHZvaWQpCiAgICAgaW50IHJjID0gLUVOT0RFVjsKICAgICBib29s X3QgZm9yY2VfaW50cmVtYXAgPSBmb3JjZV9pb21tdSAmJiBpb21tdV9pbnRyZW1hcDsKIAotICAg IGlmICggaW9tbXVfZG9tMF9zdHJpY3QgKQotICAgICAgICBpb21tdV9wYXNzdGhyb3VnaCA9IDA7 CisgICAgaWYgKCBpb21tdV9od2RvbV9zdHJpY3QgKQorICAgICAgICBpb21tdV9od2RvbV9wYXNz dGhyb3VnaCA9IGZhbHNlOwogCiAgICAgaWYgKCBpb21tdV9lbmFibGUgKQogICAgIHsKQEAgLTM5 MywxNSArMzk0LDE1IEBAIGludCBfX2luaXQgaW9tbXVfc2V0dXAodm9pZCkKICAgICBpZiAoICFp b21tdV9lbmFibGVkICkKICAgICB7CiAgICAgICAgIGlvbW11X3Nub29wID0gMDsKLSAgICAgICAg aW9tbXVfcGFzc3Rocm91Z2ggPSAwOwotICAgICAgICBpb21tdV9kb20wX3N0cmljdCA9IDA7Cisg ICAgICAgIGlvbW11X2h3ZG9tX3Bhc3N0aHJvdWdoID0gZmFsc2U7CisgICAgICAgIGlvbW11X2h3 ZG9tX3N0cmljdCA9IGZhbHNlOwogICAgIH0KICAgICBwcmludGsoIkkvTyB2aXJ0dWFsaXNhdGlv biAlc2FibGVkXG4iLCBpb21tdV9lbmFibGVkID8gImVuIiA6ICJkaXMiKTsKICAgICBpZiAoIGlv bW11X2VuYWJsZWQgKQogICAgIHsKICAgICAgICAgcHJpbnRrKCIgLSBEb20wIG1vZGU6ICVzXG4i LAotICAgICAgICAgICAgICAgaW9tbXVfcGFzc3Rocm91Z2ggPyAiUGFzc3Rocm91Z2giIDoKLSAg ICAgICAgICAgICAgIGlvbW11X2RvbTBfc3RyaWN0ID8gIlN0cmljdCIgOiAiUmVsYXhlZCIpOwor ICAgICAgICAgICAgICAgaW9tbXVfaHdkb21fcGFzc3Rocm91Z2ggPyAiUGFzc3Rocm91Z2giIDoK KyAgICAgICAgICAgICAgIGlvbW11X2h3ZG9tX3N0cmljdCA/ICJTdHJpY3QiIDogIlJlbGF4ZWQi KTsKICAgICAgICAgcHJpbnRrKCJJbnRlcnJ1cHQgcmVtYXBwaW5nICVzYWJsZWRcbiIsIGlvbW11 X2ludHJlbWFwID8gImVuIiA6ICJkaXMiKTsKICAgICAgICAgdGFza2xldF9pbml0KCZpb21tdV9w dF9jbGVhbnVwX3Rhc2tsZXQsIGlvbW11X2ZyZWVfcGFnZXRhYmxlcywgMCk7CiAgICAgfQpkaWZm IC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMgYi94ZW4vZHJpdmVy cy9wYXNzdGhyb3VnaC92dGQvaW9tbXUuYwppbmRleCAxNzEwMjU2ODIzLi4zMmJmMGZjMjk5IDEw MDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUuYworKysgYi94ZW4v ZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUuYwpAQCAtMTMwNCw3ICsxMzA0LDcgQEAgc3Rh dGljIHZvaWQgX19od2RvbV9pbml0IGludGVsX2lvbW11X2h3ZG9tX2luaXQoc3RydWN0IGRvbWFp biAqZCkKIHsKICAgICBzdHJ1Y3QgYWNwaV9kcmhkX3VuaXQgKmRyaGQ7CiAKLSAgICBpZiAoICFp b21tdV9wYXNzdGhyb3VnaCAmJiBpc19wdl9kb21haW4oZCkgKQorICAgIGlmICggIWlvbW11X2h3 ZG9tX3Bhc3N0aHJvdWdoICYmIGlzX3B2X2RvbWFpbihkKSApCiAgICAgewogICAgICAgICAvKiBT ZXQgdXAgMToxIHBhZ2UgdGFibGUgZm9yIGhhcmR3YXJlIGRvbWFpbi4gKi8KICAgICAgICAgdnRk X3NldF9od2RvbV9tYXBwaW5nKGQpOwpAQCAtMTM5MSw3ICsxMzkxLDcgQEAgaW50IGRvbWFpbl9j b250ZXh0X21hcHBpbmdfb25lKAogICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KIAotICAgIGlm ICggaW9tbXVfcGFzc3Rocm91Z2ggJiYgaXNfaGFyZHdhcmVfZG9tYWluKGRvbWFpbikgKQorICAg IGlmICggaW9tbXVfaHdkb21fcGFzc3Rocm91Z2ggJiYgaXNfaGFyZHdhcmVfZG9tYWluKGRvbWFp bikgKQogICAgIHsKICAgICAgICAgY29udGV4dF9zZXRfdHJhbnNsYXRpb25fdHlwZSgqY29udGV4 dCwgQ09OVEVYVF9UVF9QQVNTX1RIUlUpOwogICAgICAgICBhZ2F3ID0gbGV2ZWxfdG9fYWdhdyhp b21tdS0+bnJfcHRfbGV2ZWxzKTsKQEAgLTE3ODEsNyArMTc4MSw3IEBAIHN0YXRpYyBpbnQgX19t dXN0X2NoZWNrIGludGVsX2lvbW11X21hcF9wYWdlKHN0cnVjdCBkb21haW4gKmQsCiAgICAgICAg IHJldHVybiAwOwogCiAgICAgLyogRG8gbm90aGluZyBpZiBoYXJkd2FyZSBkb21haW4gYW5kIGlv bW11IHN1cHBvcnRzIHBhc3MgdGhydS4gKi8KLSAgICBpZiAoIGlvbW11X3Bhc3N0aHJvdWdoICYm IGlzX2hhcmR3YXJlX2RvbWFpbihkKSApCisgICAgaWYgKCBpb21tdV9od2RvbV9wYXNzdGhyb3Vn aCAmJiBpc19oYXJkd2FyZV9kb21haW4oZCkgKQogICAgICAgICByZXR1cm4gMDsKIAogICAgIHNw aW5fbG9jaygmaGQtPmFyY2gubWFwcGluZ19sb2NrKTsKQEAgLTE4MjYsNyArMTgyNiw3IEBAIHN0 YXRpYyBpbnQgX19tdXN0X2NoZWNrIGludGVsX2lvbW11X3VubWFwX3BhZ2Uoc3RydWN0IGRvbWFp biAqZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z aWduZWQgbG9uZyBnZm4pCiB7CiAgICAgLyogRG8gbm90aGluZyBpZiBoYXJkd2FyZSBkb21haW4g YW5kIGlvbW11IHN1cHBvcnRzIHBhc3MgdGhydS4gKi8KLSAgICBpZiAoIGlvbW11X3Bhc3N0aHJv dWdoICYmIGlzX2hhcmR3YXJlX2RvbWFpbihkKSApCisgICAgaWYgKCBpb21tdV9od2RvbV9wYXNz dGhyb3VnaCAmJiBpc19oYXJkd2FyZV9kb21haW4oZCkgKQogICAgICAgICByZXR1cm4gMDsKIAog ICAgIHJldHVybiBkbWFfcHRlX2NsZWFyX29uZShkLCAocGFkZHJfdClnZm4gPDwgUEFHRV9TSElG VF80Syk7CkBAIC0yMjY5LDggKzIyNjksOCBAQCBpbnQgX19pbml0IGludGVsX3Z0ZF9zZXR1cCh2 b2lkKQogICAgICAgICBpZiAoIGlvbW11X3Nub29wICYmICFlY2FwX3NucF9jdGwoaW9tbXUtPmVj YXApICkKICAgICAgICAgICAgIGlvbW11X3Nub29wID0gMDsKIAotICAgICAgICBpZiAoIGlvbW11 X3Bhc3N0aHJvdWdoICYmICFlY2FwX3Bhc3NfdGhydShpb21tdS0+ZWNhcCkgKQotICAgICAgICAg ICAgaW9tbXVfcGFzc3Rocm91Z2ggPSAwOworICAgICAgICBpZiAoIGlvbW11X2h3ZG9tX3Bhc3N0 aHJvdWdoICYmICFlY2FwX3Bhc3NfdGhydShpb21tdS0+ZWNhcCkgKQorICAgICAgICAgICAgaW9t bXVfaHdkb21fcGFzc3Rocm91Z2ggPSBmYWxzZTsKIAogICAgICAgICBpZiAoIGlvbW11X3FpbnZh bCAmJiAhZWNhcF9xdWV1ZWRfaW52YWwoaW9tbXUtPmVjYXApICkKICAgICAgICAgICAgIGlvbW11 X3FpbnZhbCA9IDA7CkBAIC0yMzA4LDcgKzIzMDgsNyBAQCBpbnQgX19pbml0IGludGVsX3Z0ZF9z ZXR1cCh2b2lkKQogCiAjZGVmaW5lIFAocCxzKSBwcmludGsoIkludGVsIFZULWQgJXMgJXNlbmFi bGVkLlxuIiwgcywgKHApPyAiIiA6ICJub3QgIikKICAgICBQKGlvbW11X3Nub29wLCAiU25vb3Ag Q29udHJvbCIpOwotICAgIFAoaW9tbXVfcGFzc3Rocm91Z2gsICJEb20wIERNQSBQYXNzdGhyb3Vn aCIpOworICAgIFAoaW9tbXVfaHdkb21fcGFzc3Rocm91Z2gsICJEb20wIERNQSBQYXNzdGhyb3Vn aCIpOwogICAgIFAoaW9tbXVfcWludmFsLCAiUXVldWVkIEludmFsaWRhdGlvbiIpOwogICAgIFAo aW9tbXVfaW50cmVtYXAsICJJbnRlcnJ1cHQgUmVtYXBwaW5nIik7CiAgICAgUChpb21tdV9pbnRw b3N0LCAiUG9zdGVkIEludGVycnVwdCIpOwpAQCAtMjMzMCw3ICsyMzMwLDcgQEAgaW50IF9faW5p dCBpbnRlbF92dGRfc2V0dXAodm9pZCkKICBlcnJvcjoKICAgICBpb21tdV9lbmFibGVkID0gMDsK ICAgICBpb21tdV9zbm9vcCA9IDA7Ci0gICAgaW9tbXVfcGFzc3Rocm91Z2ggPSAwOworICAgIGlv bW11X2h3ZG9tX3Bhc3N0aHJvdWdoID0gZmFsc2U7CiAgICAgaW9tbXVfcWludmFsID0gMDsKICAg ICBpb21tdV9pbnRyZW1hcCA9IDA7CiAgICAgaW9tbXVfaW50cG9zdCA9IDA7CmRpZmYgLS1naXQg YS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQveDg2L3Z0ZC5jIGIveGVuL2RyaXZlcnMvcGFz c3Rocm91Z2gvdnRkL3g4Ni92dGQuYwppbmRleCAwMGE5ODkxMDA1Li44Zjg2ODIxNjFiIDEwMDY0 NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQveDg2L3Z0ZC5jCisrKyBiL3hlbi9k cml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvdnRkLmMKQEAgLTE0OCw3ICsxNDgsNyBAQCB2b2lk IF9faHdkb21faW5pdCB2dGRfc2V0X2h3ZG9tX21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCkKICAg ICAgICAgICogSWYgZG9tMC1zdHJpY3QgbW9kZSBpcyBlbmFibGVkIHRoZW4gZXhjbHVkZSBjb252 ZW50aW9uYWwgUkFNCiAgICAgICAgICAqIGFuZCBsZXQgdGhlIGNvbW1vbiBjb2RlIG1hcCBkb20w J3MgcGFnZXMuCiAgICAgICAgICAqLwotICAgICAgICBpZiAoIGlvbW11X2RvbTBfc3RyaWN0ICYm CisgICAgICAgIGlmICggaW9tbXVfaHdkb21fc3RyaWN0ICYmCiAgICAgICAgICAgICAgcGFnZV9p c19yYW1fdHlwZShwZm4sIFJBTV9UWVBFX0NPTlZFTlRJT05BTCkgKQogICAgICAgICAgICAgY29u dGludWU7CiAKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oIGIveGVuL2luY2x1 ZGUveGVuL2lvbW11LmgKaW5kZXggZTM1ZDk0MWYzYy4uMzkyY2YxZTZiOSAxMDA2NDQKLS0tIGEv eGVuL2luY2x1ZGUveGVuL2lvbW11LmgKKysrIGIveGVuL2luY2x1ZGUveGVuL2lvbW11LmgKQEAg LTI5LDEzICsyOSwxNSBAQAogI2luY2x1ZGUgPGFzbS9pb21tdS5oPgogCiBleHRlcm4gYm9vbF90 IGlvbW11X2VuYWJsZSwgaW9tbXVfZW5hYmxlZDsKLWV4dGVybiBib29sX3QgZm9yY2VfaW9tbXUs IGlvbW11X2RvbTBfc3RyaWN0LCBpb21tdV92ZXJib3NlOwotZXh0ZXJuIGJvb2xfdCBpb21tdV93 b3JrYXJvdW5kX2Jpb3NfYnVnLCBpb21tdV9pZ2Z4LCBpb21tdV9wYXNzdGhyb3VnaDsKK2V4dGVy biBib29sX3QgZm9yY2VfaW9tbXUsIGlvbW11X3ZlcmJvc2U7CitleHRlcm4gYm9vbF90IGlvbW11 X3dvcmthcm91bmRfYmlvc19idWcsIGlvbW11X2lnZng7CiBleHRlcm4gYm9vbF90IGlvbW11X3Nu b29wLCBpb21tdV9xaW52YWwsIGlvbW11X2ludHJlbWFwLCBpb21tdV9pbnRwb3N0OwogZXh0ZXJu IGJvb2xfdCBpb21tdV9oYXBfcHRfc2hhcmU7CiBleHRlcm4gYm9vbF90IGlvbW11X2RlYnVnOwog ZXh0ZXJuIGJvb2xfdCBhbWRfaW9tbXVfcGVyZGV2X2ludHJlbWFwOwogCitleHRlcm4gYm9vbCBp b21tdV9od2RvbV9zdHJpY3QsIGlvbW11X2h3ZG9tX3Bhc3N0aHJvdWdoOworCiBleHRlcm4gdW5z aWduZWQgaW50IGlvbW11X2Rldl9pb3RsYl90aW1lb3V0OwogCiBpbnQgaW9tbXVfc2V0dXAodm9p ZCk7Ci0tIAoyLjE4LjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0 Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRl dmVs