From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH v2 5/6] xen/x86: use flag byte for decision whether xen_cr3 is valid Date: Fri, 2 Mar 2018 09:14:02 +0100 Message-ID: <20180302081403.16953-6-jgross@suse.com> References: <20180302081403.16953-1-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1erfpU-0004Hp-08 for xen-devel@lists.xenproject.org; Fri, 02 Mar 2018 08:14:12 +0000 In-Reply-To: <20180302081403.16953-1-jgross@suse.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: Juergen Gross , andrew.cooper3@citrix.com, wei.liu2@citrix.com, jbeulich@suse.com, dfaggioli@suse.com List-Id: xen-devel@lists.xenproject.org VG9kYXkgY3B1X2luZm8tPnhlbl9jcjMgaXMgZWl0aGVyIDAgdG8gaW5kaWNhdGUgJWNyMyBkb2Vz bid0IG5lZWQgdG8KYmUgc3dpdGNoZWQgb24gZW50cnkgdG8gWGVuLCBvciBuZWdhdGl2ZSBmb3Ig a2VlcGluZyB0aGUgdmFsdWUgd2hpbGUKaW5kaWNhdGluZyBub3QgdG8gcmVzdG9yZSAlY3IzLCBv ciBwb3NpdGl2ZSBpbiBjYXNlICVjcjMgaXMgdG8gYmUKcmVzdG9yZWQuCgpTd2l0Y2ggdG8gdXNl IGEgZmxhZyBieXRlIGluc3RlYWQgb2YgYSBuZWdhdGl2ZSB4ZW5fY3IzIHZhbHVlIGluIG9yZGVy CnRvIGFsbG93ICVjcjMgdmFsdWVzIHdpdGggdGhlIGhpZ2ggYml0IHNldCBpbiBjYXNlIHdlIHdh bnQgdG8ga2VlcCBUTEIKZW50cmllcyB3aGVuIHVzaW5nIHRoZSBQQ0lEIGZlYXR1cmUuCgpUaGlz IHJlZHVjZXMgdGhlIG51bWJlciBvZiBicmFuY2hlcyBpbiBpbnRlcnJ1cHQgaGFuZGxpbmcgYW5k IHJlc3VsdHMKaW4gYmV0dGVyIHBlcmZvcm1hbmNlIChlLmcuIHBhcmFsbGVsIG1ha2Ugb2YgdGhl IFhlbiBoeXBlcnZpc29yIG9uIG15CnN5c3RlbSB3YXMgdXNpbmcgYWJvdXQgMyUgbGVzcyBzeXN0 ZW0gdGltZSkuCgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ Ci0tLQogeGVuL2FyY2gveDg2L2RvbWFpbi5jICAgICAgICAgICAgICB8ICAxICsKIHhlbi9hcmNo L3g4Ni9tbS5jICAgICAgICAgICAgICAgICAgfCAgMSArCiB4ZW4vYXJjaC94ODYvc21wYm9vdC5j ICAgICAgICAgICAgIHwgIDIgKysKIHhlbi9hcmNoL3g4Ni94ODZfNjQvYXNtLW9mZnNldHMuYyAg fCAgMSArCiB4ZW4vYXJjaC94ODYveDg2XzY0L2NvbXBhdC9lbnRyeS5TIHwgIDUgKystLQogeGVu L2FyY2gveDg2L3g4Nl82NC9lbnRyeS5TICAgICAgICB8IDU5ICsrKysrKysrKysrKysrKystLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L2N1cnJlbnQuaCAgICAgIHwg MTEgKysrKy0tLQogNyBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCA0MSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvZG9tYWluLmMgYi94ZW4vYXJjaC94ODYv ZG9tYWluLmMKaW5kZXggMWY4YjA4ZWYwMi4uYzAxYWU2MDI5NiAxMDA2NDQKLS0tIGEveGVuL2Fy Y2gveDg2L2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9kb21haW4uYwpAQCAtMTY5OCw2ICsx Njk4LDcgQEAgdm9pZCBjb250ZXh0X3N3aXRjaChzdHJ1Y3QgdmNwdSAqcHJldiwgc3RydWN0IHZj cHUgKm5leHQpCiAgICAgQVNTRVJUKGxvY2FsX2lycV9pc19lbmFibGVkKCkpOwogCiAgICAgZ2V0 X2NwdV9pbmZvKCktPnhlbl9jcjMgPSAwOworICAgIGdldF9jcHVfaW5mbygpLT51c2VfeGVuX2Ny MyA9IGZhbHNlOwogCiAgICAgaWYgKCB1bmxpa2VseShkaXJ0eV9jcHUgIT0gY3B1KSAmJiBkaXJ0 eV9jcHUgIT0gVkNQVV9DUFVfQ0xFQU4gKQogICAgIHsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4 Ni9tbS5jIGIveGVuL2FyY2gveDg2L21tLmMKaW5kZXggMGQwYmFkZWE4Ni4uMmQ4MzY2YTAxYyAx MDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAg LTUyMCw2ICs1MjAsNyBAQCB2b2lkIHdyaXRlX3B0YmFzZShzdHJ1Y3QgdmNwdSAqdikKICAgICB7 CiAgICAgICAgIGdldF9jcHVfaW5mbygpLT5yb290X3BndF9jaGFuZ2VkID0gZmFsc2U7CiAgICAg ICAgIC8qIE1ha2Ugc3VyZSB0byBjbGVhciB4ZW5fY3IzIGJlZm9yZSBwdl9jcjM7IHdyaXRlX2Ny MygpIHNlcmlhbGl6ZXMuICovCisgICAgICAgIGdldF9jcHVfaW5mbygpLT51c2VfeGVuX2NyMyA9 IGZhbHNlOwogICAgICAgICBnZXRfY3B1X2luZm8oKS0+eGVuX2NyMyA9IDA7CiAgICAgICAgIHdy aXRlX2NyMyh2LT5hcmNoLmNyMyk7CiAgICAgICAgIGdldF9jcHVfaW5mbygpLT5wdl9jcjMgPSAw OwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3NtcGJvb3QuYyBiL3hlbi9hcmNoL3g4Ni9zbXBi b290LmMKaW5kZXggNjA2MDRmNDUzNS4uMWI2NjU5OTFiZCAxMDA2NDQKLS0tIGEveGVuL2FyY2gv eDg2L3NtcGJvb3QuYworKysgYi94ZW4vYXJjaC94ODYvc21wYm9vdC5jCkBAIC0zMzAsNiArMzMw LDcgQEAgdm9pZCBzdGFydF9zZWNvbmRhcnkodm9pZCAqdW51c2VkKQogICAgICAqLwogICAgIHNw aW5fZGVidWdfZGlzYWJsZSgpOwogCisgICAgZ2V0X2NwdV9pbmZvKCktPnVzZV94ZW5fY3IzID0g ZmFsc2U7CiAgICAgZ2V0X2NwdV9pbmZvKCktPnhlbl9jcjMgPSAwOwogICAgIGdldF9jcHVfaW5m bygpLT5wdl9jcjMgPSAwOwogCkBAIC0xMTI5LDYgKzExMzAsNyBAQCB2b2lkIF9faW5pdCBzbXBf cHJlcGFyZV9ib290X2NwdSh2b2lkKQogICAgIHBlcl9jcHUoc2NyYXRjaF9jcHVtYXNrLCBjcHUp ID0gJnNjcmF0Y2hfY3B1MG1hc2s7CiAjZW5kaWYKIAorICAgIGdldF9jcHVfaW5mbygpLT51c2Vf eGVuX2NyMyA9IGZhbHNlOwogICAgIGdldF9jcHVfaW5mbygpLT54ZW5fY3IzID0gMDsKICAgICBn ZXRfY3B1X2luZm8oKS0+cHZfY3IzID0gMDsKIH0KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni94 ODZfNjQvYXNtLW9mZnNldHMuYyBiL3hlbi9hcmNoL3g4Ni94ODZfNjQvYXNtLW9mZnNldHMuYwpp bmRleCBjOTIyNWIwNmMxLi5kMjc2ZjcwYTc1IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYveDg2 XzY0L2FzbS1vZmZzZXRzLmMKKysrIGIveGVuL2FyY2gveDg2L3g4Nl82NC9hc20tb2Zmc2V0cy5j CkBAIC0xNDUsNiArMTQ1LDcgQEAgdm9pZCBfX2R1bW15X18odm9pZCkKICAgICBPRkZTRVQoQ1BV SU5GT191c2Vfc2hhZG93X3NwZWNfY3RybCwgc3RydWN0IGNwdV9pbmZvLCB1c2Vfc2hhZG93X3Nw ZWNfY3RybCk7CiAgICAgT0ZGU0VUKENQVUlORk9fYnRpX2lzdF9pbmZvLCBzdHJ1Y3QgY3B1X2lu Zm8sIGJ0aV9pc3RfaW5mbyk7CiAgICAgT0ZGU0VUKENQVUlORk9fcm9vdF9wZ3RfY2hhbmdlZCwg c3RydWN0IGNwdV9pbmZvLCByb290X3BndF9jaGFuZ2VkKTsKKyAgICBPRkZTRVQoQ1BVSU5GT191 c2VfeGVuX2NyMywgc3RydWN0IGNwdV9pbmZvLCB1c2VfeGVuX2NyMyk7CiAgICAgREVGSU5FKENQ VUlORk9fc2l6ZW9mLCBzaXplb2Yoc3RydWN0IGNwdV9pbmZvKSk7CiAgICAgQkxBTksoKTsKIApk aWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3g4Nl82NC9jb21wYXQvZW50cnkuUyBiL3hlbi9hcmNo L3g4Ni94ODZfNjQvY29tcGF0L2VudHJ5LlMKaW5kZXggMjdjZGYyNDRlNi4uNzQwNTVlYWRlOCAx MDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3g4Nl82NC9jb21wYXQvZW50cnkuUworKysgYi94ZW4v YXJjaC94ODYveDg2XzY0L2NvbXBhdC9lbnRyeS5TCkBAIC0yMTgsMTAgKzIxOCw5IEBAIEVOVFJZ KGNzdGFyX2VudGVyKQogICAgICAgICBHRVRfU1RBQ0tfRU5EKGJ4KQogLkxjc3Rhcl9jcjNfc3Rh cnQ6CiAgICAgICAgIG1vdiAgIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXJieCksICVy Y3gKLSAgICAgICAgbmVnICAgJXJjeAorICAgICAgICB0ZXN0ICAlcmN4LCAlcmN4CiAgICAgICAg IGp6ICAgIC5MY3N0YXJfY3IzX29rYXkKLSAgICAgICAgbW92ICAgJXJjeCwgU1RBQ0tfQ1BVSU5G T19GSUVMRCh4ZW5fY3IzKSglcmJ4KQotICAgICAgICBuZWcgICAlcmN4CisgICAgICAgIG1vdmIg ICQwLCBTVEFDS19DUFVJTkZPX0ZJRUxEKHVzZV94ZW5fY3IzKSglcmJ4KQogICAgICAgICBtb3Yg ICAlcmN4LCAlY3IzCiAgICAgICAgIG1vdnEgICQwLCBTVEFDS19DUFVJTkZPX0ZJRUxEKHhlbl9j cjMpKCVyYngpCiAuTGNzdGFyX2NyM19va2F5OgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3g4 Nl82NC9lbnRyeS5TIGIveGVuL2FyY2gveDg2L3g4Nl82NC9lbnRyeS5TCmluZGV4IGE4ZDM4ZTdl YjIuLjJjOWNlOGQ4MjEgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni94ODZfNjQvZW50cnkuUwor KysgYi94ZW4vYXJjaC94ODYveDg2XzY0L2VudHJ5LlMKQEAgLTc0LDYgKzc0LDcgQEAgcmVzdG9y ZV9hbGxfZ3Vlc3Q6CiAgICAgICAgIHJlcCBtb3ZzcQogLkxyYWdfY29weV9kb25lOgogICAgICAg ICBtb3YgICAlcjksIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXJkeCkKKyAgICAgICAg bW92YiAgJDEsIFNUQUNLX0NQVUlORk9fRklFTEQodXNlX3hlbl9jcjMpKCVyZHgpCiAgICAgICAg IG1vdiAgICVyYXgsICVjcjMKIC5McmFnX2NyM19lbmQ6CiAgICAgICAgIEFMVEVSTkFUSVZFX05P UCAuTHJhZ19jcjNfc3RhcnQsIC5McmFnX2NyM19lbmQsIFg4Nl9GRUFUVVJFX05PX1hQVEkKQEAg LTEyMywxNCArMTI0LDkgQEAgcmVzdG9yZV9hbGxfeGVuOgogICAgICAgICAgKiBjYXNlIHdlIHJl dHVybiB0byBsYXRlIFBWIGV4aXQgY29kZSAoZnJvbSBhbiBOTUkgb3IgI01DKS4KICAgICAgICAg ICovCiAgICAgICAgIEdFVF9TVEFDS19FTkQoYngpCi0gICAgICAgIG1vdiAgIFNUQUNLX0NQVUlO Rk9fRklFTEQoeGVuX2NyMykoJXJieCksICVyZHgKKyAgICAgICAgY21wYiAgJDAsIFNUQUNLX0NQ VUlORk9fRklFTEQodXNlX3hlbl9jcjMpKCVyYngpCitVTkxJS0VMWV9TVEFSVChuZSwgZXhpdF9j cjMpCiAgICAgICAgIG1vdiAgIFNUQUNLX0NQVUlORk9fRklFTEQocHZfY3IzKSglcmJ4KSwgJXJh eAotICAgICAgICB0ZXN0ICAlcmR4LCAlcmR4Ci0gICAgICAgIC8qCi0gICAgICAgICAqIElkZWFs bHkgdGhlIGNvbmRpdGlvbiB3b3VsZCBiZSAibnN6IiwgYnV0IHN1Y2ggZG9lc24ndCBleGlzdCwK LSAgICAgICAgICogc28gImciIHdpbGwgaGF2ZSB0byBkby4KLSAgICAgICAgICovCi1VTkxJS0VM WV9TVEFSVChnLCBleGl0X2NyMykKICAgICAgICAgbW92ICAgJXJheCwgJWNyMwogVU5MSUtFTFlf RU5EKGV4aXRfY3IzKQogCkBAIC0xNzMsMTAgKzE2OSw5IEBAIEVOVFJZKGxzdGFyX2VudGVyKQog ICAgICAgICBHRVRfU1RBQ0tfRU5EKGJ4KQogLkxsc3Rhcl9jcjNfc3RhcnQ6CiAgICAgICAgIG1v diAgIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXJieCksICVyY3gKLSAgICAgICAgbmVn ICAgJXJjeAorICAgICAgICB0ZXN0ICAlcmN4LCAlcmN4CiAgICAgICAgIGp6ICAgIC5MbHN0YXJf Y3IzX29rYXkKLSAgICAgICAgbW92ICAgJXJjeCwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3Iz KSglcmJ4KQotICAgICAgICBuZWcgICAlcmN4CisgICAgICAgIG1vdmIgICQwLCBTVEFDS19DUFVJ TkZPX0ZJRUxEKHVzZV94ZW5fY3IzKSglcmJ4KQogICAgICAgICBtb3YgICAlcmN4LCAlY3IzCiAg ICAgICAgIG1vdnEgICQwLCBTVEFDS19DUFVJTkZPX0ZJRUxEKHhlbl9jcjMpKCVyYngpCiAuTGxz dGFyX2NyM19va2F5OgpAQCAtMjgzLDEwICsyNzgsOSBAQCBHTE9CQUwoc3lzZW50ZXJfZWZsYWdz X3NhdmVkKQogICAgICAgICBHRVRfU1RBQ0tfRU5EKGJ4KQogLkxzeXNlX2NyM19zdGFydDoKICAg ICAgICAgbW92ICAgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3IzKSglcmJ4KSwgJXJjeAotICAg ICAgICBuZWcgICAlcmN4CisgICAgICAgIHRlc3QgICVyY3gsICVyY3gKICAgICAgICAganogICAg LkxzeXNlX2NyM19va2F5Ci0gICAgICAgIG1vdiAgICVyY3gsIFNUQUNLX0NQVUlORk9fRklFTEQo eGVuX2NyMykoJXJieCkKLSAgICAgICAgbmVnICAgJXJjeAorICAgICAgICBtb3ZiICAkMCwgU1RB Q0tfQ1BVSU5GT19GSUVMRCh1c2VfeGVuX2NyMykoJXJieCkKICAgICAgICAgbW92ICAgJXJjeCwg JWNyMwogICAgICAgICBtb3ZxICAkMCwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3IzKSglcmJ4 KQogLkxzeXNlX2NyM19va2F5OgpAQCAtMzM2LDEwICszMzAsOSBAQCBFTlRSWShpbnQ4MF9kaXJl Y3RfdHJhcCkKICAgICAgICAgR0VUX1NUQUNLX0VORChieCkKIC5MaW50ODBfY3IzX3N0YXJ0Ogog ICAgICAgICBtb3YgICBTVEFDS19DUFVJTkZPX0ZJRUxEKHhlbl9jcjMpKCVyYngpLCAlcmN4Ci0g ICAgICAgIG5lZyAgICVyY3gKKyAgICAgICAgdGVzdCAgJXJjeCwgJXJjeAogICAgICAgICBqeiAg ICAuTGludDgwX2NyM19va2F5Ci0gICAgICAgIG1vdiAgICVyY3gsIFNUQUNLX0NQVUlORk9fRklF TEQoeGVuX2NyMykoJXJieCkKLSAgICAgICAgbmVnICAgJXJjeAorICAgICAgICBtb3ZiICAkMCwg U1RBQ0tfQ1BVSU5GT19GSUVMRCh1c2VfeGVuX2NyMykoJXJieCkKICAgICAgICAgbW92ICAgJXJj eCwgJWNyMwogICAgICAgICBtb3ZxICAkMCwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3IzKSgl cmJ4KQogLkxpbnQ4MF9jcjNfb2theToKQEAgLTUyMywxOCArNTE2LDE3IEBAIEVOVFJZKGNvbW1v bl9pbnRlcnJ1cHQpCiAKIC5MaW50cl9jcjNfc3RhcnQ6CiAgICAgICAgIG1vdiAgIFNUQUNLX0NQ VUlORk9fRklFTEQoeGVuX2NyMykoJXIxNCksICVyY3gKKyAgICAgICAgbW92ICAgU1RBQ0tfQ1BV SU5GT19GSUVMRCh1c2VfeGVuX2NyMykoJXIxNCksICVibAogICAgICAgICBtb3YgICAlcmN4LCAl cjE1Ci0gICAgICAgIG5lZyAgICVyY3gKKyAgICAgICAgdGVzdCAgJXJjeCwgJXJjeAogICAgICAg ICBqeiAgICAuTGludHJfY3IzX29rYXkKLSAgICAgICAgam5zICAgLkxpbnRyX2NyM19sb2FkCi0g ICAgICAgIG1vdiAgICVyY3gsIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXIxNCkKLSAg ICAgICAgbmVnICAgJXJjeAotLkxpbnRyX2NyM19sb2FkOgorICAgICAgICBtb3ZiICAkMCwgU1RB Q0tfQ1BVSU5GT19GSUVMRCh1c2VfeGVuX2NyMykoJXIxNCkKICAgICAgICAgbW92ICAgJXJjeCwg JWNyMwogICAgICAgICB4b3IgICAlZWN4LCAlZWN4CiAgICAgICAgIG1vdiAgICVyY3gsIFNUQUNL X0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXIxNCkKICAgICAgICAgdGVzdGIgJDMsIFVSRUdTX2Nz KCVyc3ApCiAgICAgICAgIGNtb3ZueiAlcmN4LCAlcjE1CisgICAgICAgIGNtb3ZueiAlY3gsICVi eAogLkxpbnRyX2NyM19va2F5OgogCiAgICAgICAgIENSNF9QVjMyX1JFU1RPUkUKQEAgLTU0Miw2 ICs1MzQsNyBAQCBFTlRSWShjb21tb25faW50ZXJydXB0KQogICAgICAgICBjYWxscSBkb19JUlEK IC5MaW50cl9jcjNfcmVzdG9yZToKICAgICAgICAgbW92ICAgJXIxNSwgU1RBQ0tfQ1BVSU5GT19G SUVMRCh4ZW5fY3IzKSglcjE0KQorICAgICAgICBtb3YgICAlYmwsIFNUQUNLX0NQVUlORk9fRklF TEQodXNlX3hlbl9jcjMpKCVyMTQpCiAuTGludHJfY3IzX2VuZDoKICAgICAgICAgam1wIHJldF9m cm9tX2ludHIKIApAQCAtNTcxLDE4ICs1NjQsMTcgQEAgR0xPQkFMKGhhbmRsZV9leGNlcHRpb24p CiAKIC5MeGNwdF9jcjNfc3RhcnQ6CiAgICAgICAgIG1vdiAgIFNUQUNLX0NQVUlORk9fRklFTEQo eGVuX2NyMykoJXIxNCksICVyY3gKKyAgICAgICAgbW92ICAgU1RBQ0tfQ1BVSU5GT19GSUVMRCh1 c2VfeGVuX2NyMykoJXIxNCksICVyMTNiCiAgICAgICAgIG1vdiAgICVyY3gsICVyMTUKLSAgICAg ICAgbmVnICAgJXJjeAorICAgICAgICB0ZXN0ICAlcmN4LCAlcmN4CiAgICAgICAgIGp6ICAgIC5M eGNwdF9jcjNfb2theQotICAgICAgICBqbnMgICAuTHhjcHRfY3IzX2xvYWQKLSAgICAgICAgbW92 ICAgJXJjeCwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3IzKSglcjE0KQotICAgICAgICBuZWcg ICAlcmN4Ci0uTHhjcHRfY3IzX2xvYWQ6CisgICAgICAgIG1vdmIgICQwLCBTVEFDS19DUFVJTkZP X0ZJRUxEKHVzZV94ZW5fY3IzKSglcjE0KQogICAgICAgICBtb3YgICAlcmN4LCAlY3IzCiAgICAg ICAgIHhvciAgICVlY3gsICVlY3gKICAgICAgICAgbW92ICAgJXJjeCwgU1RBQ0tfQ1BVSU5GT19G SUVMRCh4ZW5fY3IzKSglcjE0KQogICAgICAgICB0ZXN0YiAkMywgVVJFR1NfY3MoJXJzcCkKICAg ICAgICAgY21vdm56ICVyY3gsICVyMTUKKyAgICAgICAgY21vdm56ICVyY3gsICVyMTMKIC5MeGNw dF9jcjNfb2theToKIAogaGFuZGxlX2V4Y2VwdGlvbl9zYXZlZDoKQEAgLTY1Miw2ICs2NDQsNyBA QCBoYW5kbGVfZXhjZXB0aW9uX3NhdmVkOgogICAgICAgICBJTkRJUkVDVF9DQUxMICVyZHgKIC5M eGNwdF9jcjNfcmVzdG9yZTE6CiAgICAgICAgIG1vdiAgICVyMTUsIFNUQUNLX0NQVUlORk9fRklF TEQoeGVuX2NyMykoJXIxNCkKKyAgICAgICAgbW92ICAgJXIxM2IsIFNUQUNLX0NQVUlORk9fRklF TEQodXNlX3hlbl9jcjMpKCVyMTQpCiAuTHhjcHRfY3IzX2VuZDE6CiAgICAgICAgIHRlc3RiICQz LFVSRUdTX2NzKCVyc3ApCiAgICAgICAgIGp6ICAgIHJlc3RvcmVfYWxsX3hlbgpAQCAtNjg3LDYg KzY4MCw3IEBAIGV4Y2VwdGlvbl93aXRoX2ludHNfZGlzYWJsZWQ6CiAgICAgICAgIG1vdnEgICVy YXgsVVJFR1Nfa2VybmVsX3NpemVvZiglcnNwKQogLkx4Y3B0X2NyM19yZXN0b3JlMjoKICAgICAg ICAgbW92ICAgJXIxNSwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3IzKSglcjE0KQorICAgICAg ICBtb3YgICAlcjEzYiwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh1c2VfeGVuX2NyMykoJXIxNCkKIC5M eGNwdF9jcjNfZW5kMjoKICAgICAgICAgam1wICAgcmVzdG9yZV9hbGxfeGVuICAgICAgICAgICAj IHJldHVybiB0byBmaXh1cCBjb2RlCiAKQEAgLTc4MSw5ICs3NzUsNiBAQCBFTlRSWShkb3VibGVf ZmF1bHQpCiAgICAgICAgIG1vdiAgIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXIxNCks ICVyYngKICAgICAgICAgdGVzdCAgJXJieCwgJXJieAogICAgICAgICBqeiAgICAuTGRibGZfY3Iz X29rYXkKLSAgICAgICAgam5zICAgLkxkYmxmX2NyM19sb2FkCi0gICAgICAgIG5lZyAgICVyYngK LS5MZGJsZl9jcjNfbG9hZDoKICAgICAgICAgbW92ICAgJXJieCwgJWNyMwogLkxkYmxmX2NyM19v a2F5OgogCkBAIC04MTIsMTMgKzgwMywxMSBAQCBoYW5kbGVfaXN0X2V4Y2VwdGlvbjoKICAgICAg ICAgLyogV0FSTklORyEgYHJldGAsIGBjYWxsICpgLCBgam1wICpgIG5vdCBzYWZlIGJlZm9yZSB0 aGlzIHBvaW50LiAqLwogCiAgICAgICAgIG1vdiAgIFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2Ny MykoJXIxNCksICVyY3gKKyAgICAgICAgbW92ICAgU1RBQ0tfQ1BVSU5GT19GSUVMRCh1c2VfeGVu X2NyMykoJXIxNCksICVibAogICAgICAgICBtb3YgICAlcmN4LCAlcjE1Ci0gICAgICAgIG5lZyAg ICVyY3gKKyAgICAgICAgdGVzdCAgJXJjeCwgJXJjeAogICAgICAgICBqeiAgICAuTGlzdF9jcjNf b2theQotICAgICAgICBqbnMgICAuTGlzdF9jcjNfbG9hZAotICAgICAgICBtb3YgICAlcmN4LCBT VEFDS19DUFVJTkZPX0ZJRUxEKHhlbl9jcjMpKCVyMTQpCi0gICAgICAgIG5lZyAgICVyY3gKLS5M aXN0X2NyM19sb2FkOgorICAgICAgICBtb3ZiICAkMCwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh1c2Vf eGVuX2NyMykoJXIxNCkKICAgICAgICAgbW92ICAgJXJjeCwgJWNyMwogICAgICAgICBtb3ZxICAk MCwgU1RBQ0tfQ1BVSU5GT19GSUVMRCh4ZW5fY3IzKSglcjE0KQogLkxpc3RfY3IzX29rYXk6CkBA IC04MzEsNiArODIwLDcgQEAgaGFuZGxlX2lzdF9leGNlcHRpb246CiAgICAgICAgICAqIGFuZCBj b3B5IHRoZSBjb250ZXh0IHRvIHN0YWNrIGJvdHRvbS4KICAgICAgICAgICovCiAgICAgICAgIHhv ciAgICVyMTUsICVyMTUKKyAgICAgICAgeG9yICAgJWJsLCAlYmwKICAgICAgICAgR0VUX0NQVUlO Rk9fRklFTEQoZ3Vlc3RfY3B1X3VzZXJfcmVncyxkaSkKICAgICAgICAgbW92cSAgJXJzcCwlcnNp CiAgICAgICAgIG1vdmwgICRVUkVHU19rZXJuZWxfc2l6ZW9mLzgsJWVjeApAQCAtODQyLDYgKzgz Miw3IEBAIGhhbmRsZV9pc3RfZXhjZXB0aW9uOgogICAgICAgICBtb3YgICAoJXJkeCwgJXJheCwg OCksICVyZHgKICAgICAgICAgSU5ESVJFQ1RfQ0FMTCAlcmR4CiAgICAgICAgIG1vdiAgICVyMTUs IFNUQUNLX0NQVUlORk9fRklFTEQoeGVuX2NyMykoJXIxNCkKKyAgICAgICAgbW92ICAgJWJsLCBT VEFDS19DUFVJTkZPX0ZJRUxEKHVzZV94ZW5fY3IzKSglcjE0KQogICAgICAgICBjbXBiICAkVFJB UF9ubWksVVJFR1NfZW50cnlfdmVjdG9yKCVyc3ApCiAgICAgICAgIGpuZSAgIHJldF9mcm9tX2lu dHIKIApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9jdXJyZW50LmggYi94ZW4vaW5j bHVkZS9hc20teDg2L2N1cnJlbnQuaAppbmRleCBkNTIzNmM4MmRlLi4zNGE5NTEyZDkzIDEwMDY0 NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2N1cnJlbnQuaAorKysgYi94ZW4vaW5jbHVkZS9h c20teDg2L2N1cnJlbnQuaApAQCAtNDcsMTAgKzQ3LDcgQEAgc3RydWN0IGNwdV9pbmZvIHsKICAg ICAgKiBjb250ZXh0IGlzIGJlaW5nIGVudGVyZWQuIEEgdmFsdWUgb2YgemVybyBpbmRpY2F0ZXMg bm8gc2V0dGluZyBvZiBDUjMKICAgICAgKiBpcyB0byBiZSBwZXJmb3JtZWQuCiAgICAgICogVGhl IGZvcm1lciBpcyB0aGUgdmFsdWUgdG8gcmVzdG9yZSB3aGVuIHJlLWVudGVyaW5nIFhlbiwgaWYg YW55LiBJT1cKLSAgICAgKiBpdHMgdmFsdWUgYmVpbmcgemVybyBtZWFucyB0aGVyZSdzIG5vdGhp bmcgdG8gcmVzdG9yZS4gSG93ZXZlciwgaXRzCi0gICAgICogdmFsdWUgY2FuIGFsc28gYmUgbmVn YXRpdmUsIGluZGljYXRpbmcgdG8gdGhlIGV4aXQtdG8tWGVuIGNvZGUgdGhhdAotICAgICAqIHJl c3RvcmluZyBpcyBub3QgbmVjZXNzYXJ5LCBidXQgYWxsb3dpbmcgYW55IG5lc3RlZCBlbnRyeSBj b2RlIHBhdGhzCi0gICAgICogdG8gc3RpbGwga25vdyB0aGUgdmFsdWUgdG8gcHV0IGJhY2sgaW50 byBDUjMuCisgICAgICogaXRzIHZhbHVlIGJlaW5nIHplcm8gbWVhbnMgdGhlcmUncyBub3RoaW5n IHRvIHJlc3RvcmUuCiAgICAgICovCiAgICAgdW5zaWduZWQgbG9uZyB4ZW5fY3IzOwogICAgIHVu c2lnbmVkIGxvbmcgcHZfY3IzOwpAQCAtNjgsNiArNjUsMTIgQEAgc3RydWN0IGNwdV9pbmZvIHsK ICAgICAgKi8KICAgICBib29sICAgICAgICAgcm9vdF9wZ3RfY2hhbmdlZDsKIAorICAgIC8qCisg ICAgICogdXNlX3hlbl9jcjMgaXMgc2V0IGluIGNhc2UgdGhlIHZhbHVlIG9mIHhlbl9jcjMgaXMg dG8gYmUgd3JpdHRlbiBpbnRvCisgICAgICogQ1IzIHdoZW4gZW50ZXJpbmcgdGhlIGh5cGVydmlz b3IuCisgICAgICovCisgICAgYm9vbCAgICAgICAgIHVzZV94ZW5fY3IzOworCiAgICAgdW5zaWdu ZWQgbG9uZyBfX3BhZDsKICAgICAvKiBnZXRfc3RhY2tfYm90dG9tKCkgbXVzdCBiZSAxNi1ieXRl IGFsaWduZWQgKi8KIH07Ci0tIAoyLjEzLjYKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0 cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlz dGluZm8veGVuLWRldmVs