From mboxrd@z Thu Jan 1 00:00:00 1970 From: He Chen Subject: [PATCH v4] xen/sm{e, a}p: allow disabling sm{e, a}p for Xen itself Date: Wed, 31 Aug 2016 17:49:56 +0800 Message-ID: <1472636996-6415-1-git-send-email-he.chen@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bf2Cj-0004MO-Qc for xen-devel@lists.xenproject.org; Wed, 31 Aug 2016 09:53:09 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Andrew Cooper , Feng Wu , Jan Beulich List-Id: xen-devel@lists.xenproject.org U01FUC9TTUFQIGlzIGEgc2VjdXJpdHkgZmVhdHVyZSB0byBwcmV2ZW50IGtlcm5lbCBleGVjdXRp bmcvYWNjZXNzaW5nCnVzZXIgYWRkcmVzcyBpbnZvbHVudGFyaWx5LCBhbnkgc3VjaCBiZWhhdmlv ciB3aWxsIGxlYWQgdG8gYSBwYWdlIGZhdWx0LgoKU01FUC9TTUFQIGlzIG9wZW4gKGluIENSNCkg Zm9yIGJvdGggWGVuIGFuZCBIVk0gZ3Vlc3QgaW4gZWFybGllciBjb2RlLgpTTUVQL1NNQVAgYml0 IHNldCBpbiBYZW4gQ1I0IHdvdWxkIGVuZm9yY2Ugc2VjdXJpdHkgY2hlY2tpbmcgZm9yIDMyLWJp dApQViBndWVzdCB3aGljaCB3aWxsIHN1ZmZlciB1bmtub3duIFNNRVAvU01BUCBwYWdlIGZhdWx0 IHdoZW4gZ3Vlc3QKa2VybmVsIGF0dGVtcHQgdG8gYWNjZXNzIHVzZXIgYWRkcmVzcyBhbHRob3Vn aCBTTUVQL1NNQVAgaXMgY2xvc2UgZm9yClBWIGd1ZXN0cy4KClRoaXMgcGF0Y2ggaW50cm9kdWNl cyBhIG5ldyBib290IG9wdGlvbiB2YWx1ZSAiaHZtIiBmb3IgInNte2UsYX1wIiwgaXQKaXMgZ29p bmcgdG8gZGlhYmxlIFNNRVAvU01BUCBmb3IgWGVuIGh5cGVydmlzb3Igd2hpbGUgZW5hYmxlIHRo ZW0gZm9yCkhWTS4gSW4gdGhpcyB3YXksIDMyLWJpdCBQViBndWVzdCB3aWxsIG5vdCBzdWZmZXIg U01FUC9TTUFQIHNlY3VyaXR5Cmlzc3VlLiBVc2VycyBjYW4gY2hvb3NlIHdoZXRoZXIgb3BlbiBT TUVQL1NNQVAgZm9yIFhlbiBpdHNlbGYsCmVzcGVjaWFsbHkgd2hlbiB0aGV5IGFyZSBnb2luZyB0 byBydW4gMzItYml0IFBWIGd1ZXN0cy4KClNpZ25lZC1vZmYtYnk6IEhlIENoZW4gPGhlLmNoZW5A bGludXguaW50ZWwuY29tPgoKLS0tCkNoYW5nZXMgaW4gdjQ6CiogaW50cm9kdWNlIDIgbmV3IHN5 bnRoZXRpYyBmZWF0dXJlcyBYODZfRkVBVFVSRV9YRU5fU01FUCBhbmQKICBYODZfRkVBVFVSRV9Y RU5fU01BUCBmb3IgWGVuIGl0c2VsZi4KKiBhZGp1c3QgU017RSxBfVAgcmVsYXRlZCBpbnN0cnVj dGlvbiBwYXRjaGluZyBjb2RlLgoqIENvbW1pdCBtZXNzYWdlIHJlZmluZW1lbnQuCgpDaGFuZ2Vz IGluIHYzOgoqIEZpeCBib290IG9wdGlvbnMuCiogRml4IENSNCAmIG1tdV9jcjRfZmVhdHVyZXMg b3BlcmF0aW9ucy4KKiBEaXNhYmxlIFNNRVAvU01BUCBmb3IgRG9tMC4KKiBDb21taXQgbWVzc2Fn ZSByZWZpbmVtZW50LgoKQ2hhbmdlcyBpbiB2MjoKKiBBbGxvdyAiaHZtIiBhcyBhIHZhbHVlIHRv ICJzbWVwIiBhbmQgInNtYXAiIGNvbW1hbmQgbGluZSBvcHRpb25zLgoqIENsZWFyIFNNRVAvU01B UCBDUFVJRCBiaXRzIGZvciBwdiBndWVzdHMgaWYgdGhleSBhcmUgc2V0IHRvIGh2bSBvbmx5Lgoq IFJlZmluZSBkb2NzLgoqIFJld3JpdGUgY29tbWl0IG1lc3NhZ2UuCi0tLQogZG9jcy9taXNjL3hl bi1jb21tYW5kLWxpbmUubWFya2Rvd24gfCAgMiArKwogeGVuL2FyY2gveDg2L3NldHVwLmMgICAg ICAgICAgICAgICAgfCA1OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCiB4 ZW4vaW5jbHVkZS9hc20teDg2L2FzbV9kZWZucy5oICAgICB8IDEwICsrKy0tLS0KIHhlbi9pbmNs dWRlL2FzbS14ODYvY3B1ZmVhdHVyZS5oICAgIHwgIDUgKysrLQogNCBmaWxlcyBjaGFuZ2VkLCA2 MSBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2NzL21pc2Mv eGVuLWNvbW1hbmQtbGluZS5tYXJrZG93biBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5lLm1h cmtkb3duCmluZGV4IDNhMjUwY2IuLmIxNWYzZTcgMTAwNjQ0Ci0tLSBhL2RvY3MvbWlzYy94ZW4t Y29tbWFuZC1saW5lLm1hcmtkb3duCisrKyBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5lLm1h cmtkb3duCkBAIC0xNDMzLDYgKzE0MzMsNyBAQCBTZXQgdGhlIHNlcmlhbCB0cmFuc21pdCBidWZm ZXIgc2l6ZS4KID4gRGVmYXVsdDogYHRydWVgCiAKIEZsYWcgdG8gZW5hYmxlIFN1cGVydmlzb3Ig TW9kZSBFeGVjdXRpb24gUHJvdGVjdGlvbgorVXNlIGBzbWVwPWh2bWAgdG8gZW5hYmxlIFNNRVAg Zm9yIEhWTSBndWVzdHMgb25seS4KIAogIyMjIHNtYXAKID4gYD0gPGJvb2xlYW4+YApAQCAtMTQ0 MCw2ICsxNDQxLDcgQEAgRmxhZyB0byBlbmFibGUgU3VwZXJ2aXNvciBNb2RlIEV4ZWN1dGlvbiBQ cm90ZWN0aW9uCiA+IERlZmF1bHQ6IGB0cnVlYAogCiBGbGFnIHRvIGVuYWJsZSBTdXBlcnZpc29y IE1vZGUgQWNjZXNzIFByZXZlbnRpb24KK1VzZSBgc21hcD1odm1gIHRvIGVuYWJsZSBTTUFQIGZv ciBIVk0gZ3Vlc3RzIG9ubHkuCiAKICMjIyBzbmJcX2lnZFxfcXVpcmsKID4gYD0gPGJvb2xlYW4+ IHwgY2FwIHwgPGludGVnZXI+YApkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3NldHVwLmMgYi94 ZW4vYXJjaC94ODYvc2V0dXAuYwppbmRleCAyMTdjNzc1Li41OTIzOGE0IDEwMDY0NAotLS0gYS94 ZW4vYXJjaC94ODYvc2V0dXAuYworKysgYi94ZW4vYXJjaC94ODYvc2V0dXAuYwpAQCAtNjIsMTIg KzYyLDEyIEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgX19pbml0ZGF0YSBtYXhfY3B1czsKIGludGVn ZXJfcGFyYW0oIm1heGNwdXMiLCBtYXhfY3B1cyk7CiAKIC8qIHNtZXA6IEVuYWJsZS9kaXNhYmxl IFN1cGVydmlzb3IgTW9kZSBFeGVjdXRpb24gUHJvdGVjdGlvbiAoZGVmYXVsdCBvbikuICovCi1z dGF0aWMgYm9vbF90IF9faW5pdGRhdGEgb3B0X3NtZXAgPSAxOwotYm9vbGVhbl9wYXJhbSgic21l cCIsIG9wdF9zbWVwKTsKK3N0YXRpYyB2b2lkIHBhcnNlX3NtZXBfcGFyYW0oY2hhciAqcyk7Citj dXN0b21fcGFyYW0oInNtZXAiLCBwYXJzZV9zbWVwX3BhcmFtKTsKIAogLyogc21hcDogRW5hYmxl L2Rpc2FibGUgU3VwZXJ2aXNvciBNb2RlIEFjY2VzcyBQcmV2ZW50aW9uIChkZWZhdWx0IG9uKS4g Ki8KLXN0YXRpYyBib29sX3QgX19pbml0ZGF0YSBvcHRfc21hcCA9IDE7Ci1ib29sZWFuX3BhcmFt KCJzbWFwIiwgb3B0X3NtYXApOworc3RhdGljIHZvaWQgcGFyc2Vfc21hcF9wYXJhbShjaGFyICpz KTsKK2N1c3RvbV9wYXJhbSgic21hcCIsIHBhcnNlX3NtYXBfcGFyYW0pOwogCiB1bnNpZ25lZCBs b25nIF9fcmVhZF9tb3N0bHkgY3I0X3B2MzJfbWFzazsKIApAQCAtMTExLDYgKzExMSw0OCBAQCBz dHJ1Y3QgY3B1aW5mb194ODYgX19yZWFkX21vc3RseSBib290X2NwdV9kYXRhID0geyAwLCAwLCAw LCAwLCAtMSB9OwogCiB1bnNpZ25lZCBsb25nIF9fcmVhZF9tb3N0bHkgbW11X2NyNF9mZWF0dXJl cyA9IFhFTl9NSU5JTUFMX0NSNDsKIAorI2RlZmluZSBTTUVQX0hWTV9PTkxZICgtMSkKK3N0YXRp YyBpbnQgX19pbml0ZGF0YSBvcHRfc21lcCA9IDE7CitzdGF0aWMgdm9pZCBfX2luaXQgcGFyc2Vf c21lcF9wYXJhbShjaGFyICpzKQoreworICAgIGlmICggIXN0cmNtcChzLCAiaHZtIikgKQorICAg IHsKKyAgICAgICAgb3B0X3NtZXAgPSBTTUVQX0hWTV9PTkxZOworICAgIH0KKyAgICBlbHNlIGlm ICggIXBhcnNlX2Jvb2wocykgKQorICAgIHsKKyAgICAgICAgb3B0X3NtZXAgPSAwOworICAgIH0K KyAgICBlbHNlIGlmICggcGFyc2VfYm9vbChzKSAmJiBvcHRfc21lcCAhPSBTTUVQX0hWTV9PTkxZ ICkKKyAgICB7CisgICAgICAgIG9wdF9zbWVwID0gMTsKKyAgICB9CisKKyAgICBpZiAoIG9wdF9z bWVwID09IDEgKQorICAgICAgICBfX3NldF9iaXQoWDg2X0ZFQVRVUkVfWEVOX1NNRVAsIGJvb3Rf Y3B1X2RhdGEueDg2X2NhcGFiaWxpdHkpOworfQorCisjZGVmaW5lIFNNQVBfSFZNX09OTFkgKC0x KQorc3RhdGljIGludCBfX2luaXRkYXRhIG9wdF9zbWFwID0gMTsKK3N0YXRpYyB2b2lkIF9faW5p dCBwYXJzZV9zbWFwX3BhcmFtKGNoYXIgKnMpCit7CisgICAgaWYgKCAhc3RyY21wKHMsICJodm0i KSApCisgICAgeworICAgICAgICBvcHRfc21hcCA9IFNNQVBfSFZNX09OTFk7CisgICAgfQorICAg IGVsc2UgaWYgKCAhcGFyc2VfYm9vbChzKSApCisgICAgeworICAgICAgICBvcHRfc21hcCA9IDA7 CisgICAgfQorICAgIGVsc2UgaWYgKCBwYXJzZV9ib29sKHMpICYmIG9wdF9zbWFwICE9IFNNQVBf SFZNX09OTFkgKQorICAgIHsKKyAgICAgICAgb3B0X3NtYXAgPSAxOworICAgIH0KKworICAgIGlm ICggb3B0X3NtYXAgPT0gMSApCisgICAgICAgIF9fc2V0X2JpdChYODZfRkVBVFVSRV9YRU5fU01B UCwgYm9vdF9jcHVfZGF0YS54ODZfY2FwYWJpbGl0eSk7Cit9CisKIGJvb2xfdCBfX3JlYWRfbW9z dGx5IGFjcGlfZGlzYWJsZWQ7CiBib29sX3QgX19pbml0ZGF0YSBhY3BpX2ZvcmNlOwogc3RhdGlj IGNoYXIgX19pbml0ZGF0YSBhY3BpX3BhcmFtWzEwXSA9ICIiOwpAQCAtMTQwMywxMiArMTQ0NSwx MiBAQCB2b2lkIF9faW5pdCBub3JldHVybiBfX3N0YXJ0X3hlbih1bnNpZ25lZCBsb25nIG1iaV9w KQogCiAgICAgaWYgKCAhb3B0X3NtZXAgKQogICAgICAgICBzZXR1cF9jbGVhcl9jcHVfY2FwKFg4 Nl9GRUFUVVJFX1NNRVApOwotICAgIGlmICggY3B1X2hhc19zbWVwICkKKyAgICBpZiAoIGNwdV9o YXNfeGVuX3NtZXAgKQogICAgICAgICBzZXRfaW5fY3I0KFg4Nl9DUjRfU01FUCk7CiAKICAgICBp ZiAoICFvcHRfc21hcCApCiAgICAgICAgIHNldHVwX2NsZWFyX2NwdV9jYXAoWDg2X0ZFQVRVUkVf U01BUCk7Ci0gICAgaWYgKCBjcHVfaGFzX3NtYXAgKQorICAgIGlmICggY3B1X2hhc194ZW5fc21h cCApCiAgICAgICAgIHNldF9pbl9jcjQoWDg2X0NSNF9TTUFQKTsKIAogICAgIGNyNF9wdjMyX21h c2sgPSBtbXVfY3I0X2ZlYXR1cmVzICYgWEVOX0NSNF9QVjMyX0JJVFM7CkBAIC0xNTUwLDcgKzE1 OTIsNyBAQCB2b2lkIF9faW5pdCBub3JldHVybiBfX3N0YXJ0X3hlbih1bnNpZ25lZCBsb25nIG1i aV9wKQogICAgICAqIFRoaXMgc2F2ZXMgYSBsYXJnZSBudW1iZXIgb2YgY29ybmVyIGNhc2VzIGlu dGVyYWN0aW9ucyB3aXRoCiAgICAgICogY29weV9mcm9tX3VzZXIoKS4KICAgICAgKi8KLSAgICBp ZiAoIGNwdV9oYXNfc21hcCApCisgICAgaWYgKCBjcHVfaGFzX3hlbl9zbWFwICkKICAgICB7CiAg ICAgICAgIGNyNF9wdjMyX21hc2sgJj0gflg4Nl9DUjRfU01BUDsKICAgICAgICAgd3JpdGVfY3I0 KHJlYWRfY3I0KCkgJiB+WDg2X0NSNF9TTUFQKTsKQEAgLTE1NzAsNyArMTYxMiw3IEBAIHZvaWQg X19pbml0IG5vcmV0dXJuIF9fc3RhcnRfeGVuKHVuc2lnbmVkIGxvbmcgbWJpX3ApCiAgICAgICAg ICAgICAgICAgICAgICAgICBib290c3RyYXBfbWFwLCBjbWRsaW5lKSAhPSAwKQogICAgICAgICBw YW5pYygiQ291bGQgbm90IHNldCB1cCBET00wIGd1ZXN0IE9TIik7CiAKLSAgICBpZiAoIGNwdV9o YXNfc21hcCApCisgICAgaWYgKCBjcHVfaGFzX3hlbl9zbWFwICkKICAgICB7CiAgICAgICAgIHdy aXRlX2NyNChyZWFkX2NyNCgpIHwgWDg2X0NSNF9TTUFQKTsKICAgICAgICAgY3I0X3B2MzJfbWFz ayB8PSBYODZfQ1I0X1NNQVA7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2FzbV9k ZWZucy5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9hc21fZGVmbnMuaAppbmRleCBlMzZlNzhmLi5m MWM2ZmExIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2FzbV9kZWZucy5oCisrKyBi L3hlbi9pbmNsdWRlL2FzbS14ODYvYXNtX2RlZm5zLmgKQEAgLTIwNSw3ICsyMDUsNyBAQCB2b2lk IHJldF9mcm9tX2ludHIodm9pZCk7CiAgICAgICAgIC5wb3BzZWN0aW9uOyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgLnB1c2hzZWN0 aW9uIC5hbHRpbnN0cnVjdGlvbnMsICJhIjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAog ICAgICAgICBhbHRpbnN0cnVjdGlvbl9lbnRyeSA2NjFiLCA2NjFiLCBYODZfRkVBVFVSRV9BTFdB WVMsIDMsIDA7ICAgICBcCi0gICAgICAgIGFsdGluc3RydWN0aW9uX2VudHJ5IDY2MWIsIDY2MmIs IFg4Nl9GRUFUVVJFX1NNQVAsIDMsIDM7ICAgICAgIFwKKyAgICAgICAgYWx0aW5zdHJ1Y3Rpb25f ZW50cnkgNjYxYiwgNjYyYiwgWDg2X0ZFQVRVUkVfWEVOX1NNQVAsIDMsIDM7ICAgICAgIFwKICAg ICAgICAgLnBvcHNlY3Rpb24KIAogI2RlZmluZSBBU01fU1RBQyBBU01fQUMoU1RBQykKQEAgLTIx NywyMSArMjE3LDIxIEBAIHZvaWQgcmV0X2Zyb21faW50cih2b2lkKTsKICAgICAgICAgNjY4OiBj YWxsIGNyNF9wdjMyX3Jlc3RvcmU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg ICAgICAgIC5zZWN0aW9uIC5hbHRpbnN0cnVjdGlvbnMsICJhIjsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAogICAgICAgICBhbHRpbnN0cnVjdGlvbl9lbnRyeSA2NjdiLCA2NjdiLCBYODZf RkVBVFVSRV9BTFdBWVMsIDUsIDA7IFwKLSAgICAgICAgYWx0aW5zdHJ1Y3Rpb25fZW50cnkgNjY3 YiwgNjY4YiwgWDg2X0ZFQVRVUkVfU01FUCwgNSwgNTsgICBcCi0gICAgICAgIGFsdGluc3RydWN0 aW9uX2VudHJ5IDY2N2IsIDY2OGIsIFg4Nl9GRUFUVVJFX1NNQVAsIDUsIDU7ICAgXAorICAgICAg ICBhbHRpbnN0cnVjdGlvbl9lbnRyeSA2NjdiLCA2NjhiLCBYODZfRkVBVFVSRV9YRU5fU01FUCwg NSwgNTsgICBcCisgICAgICAgIGFsdGluc3RydWN0aW9uX2VudHJ5IDY2N2IsIDY2OGIsIFg4Nl9G RUFUVVJFX1hFTl9TTUFQLCA1LCA1OyAgIFwKICAgICAgICAgLnBvcHNlY3Rpb24KIAogI2Vsc2UK IHN0YXRpYyBhbHdheXNfaW5saW5lIHZvaWQgY2xhYyh2b2lkKQogewogICAgIC8qIE5vdGU6IGEg YmFycmllciBpcyBpbXBsaWNpdCBpbiBhbHRlcm5hdGl2ZSgpICovCi0gICAgYWx0ZXJuYXRpdmUo QVNNX05PUDMsIF9fc3RyaW5naWZ5KF9fQVNNX0NMQUMpLCBYODZfRkVBVFVSRV9TTUFQKTsKKyAg ICBhbHRlcm5hdGl2ZShBU01fTk9QMywgX19zdHJpbmdpZnkoX19BU01fQ0xBQyksIFg4Nl9GRUFU VVJFX1hFTl9TTUFQKTsKIH0KIAogc3RhdGljIGFsd2F5c19pbmxpbmUgdm9pZCBzdGFjKHZvaWQp CiB7CiAgICAgLyogTm90ZTogYSBiYXJyaWVyIGlzIGltcGxpY2l0IGluIGFsdGVybmF0aXZlKCkg Ki8KLSAgICBhbHRlcm5hdGl2ZShBU01fTk9QMywgX19zdHJpbmdpZnkoX19BU01fU1RBQyksIFg4 Nl9GRUFUVVJFX1NNQVApOworICAgIGFsdGVybmF0aXZlKEFTTV9OT1AzLCBfX3N0cmluZ2lmeShf X0FTTV9TVEFDKSwgWDg2X0ZFQVRVUkVfWEVOX1NNQVApOwogfQogI2VuZGlmCiAKZGlmZiAtLWdp dCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1ZmVhdHVyZS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4 Ni9jcHVmZWF0dXJlLmgKaW5kZXggYmNkZjVkNi4uYTBiNWIwNiAxMDA2NDQKLS0tIGEveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVm ZWF0dXJlLmgKQEAgLTE3LDYgKzE3LDggQEAgWEVOX0NQVUZFQVRVUkUoQ1BVSURfRkFVTFRJTkcs ICAoRlNDQVBJTlRTKzApKjMyKyA2KSAvKiBjcHVpZCBmYXVsdGluZyAqLwogWEVOX0NQVUZFQVRV UkUoQ0xGTFVTSF9NT05JVE9SLCAoRlNDQVBJTlRTKzApKjMyKyA3KSAvKiBjbGZsdXNoIHJlcWQg d2l0aCBtb25pdG9yICovCiBYRU5fQ1BVRkVBVFVSRShBUEVSRk1QRVJGLCAgICAgIChGU0NBUElO VFMrMCkqMzIrIDgpIC8qIEFQRVJGTVBFUkYgKi8KIFhFTl9DUFVGRUFUVVJFKE1GRU5DRV9SRFRT QywgICAgKEZTQ0FQSU5UUyswKSozMisgOSkgLyogTUZFTkNFIHN5bmNocm9uaXplcyBSRFRTQyAq LworWEVOX0NQVUZFQVRVUkUoWEVOX1NNRVAsICAgICAgICAoRlNDQVBJTlRTKzApKjMyKyAxMCkg LyogU01FUCBnZXRzIHVzZWQgYnkgWGVuIGl0c2VsZiAqLworWEVOX0NQVUZFQVRVUkUoWEVOX1NN QVAsICAgICAgICAoRlNDQVBJTlRTKzApKjMyKyAxMSkgLyogU01BUCBnZXRzIHVzZWQgYnkgWGVu IGl0c2VsZiAqLwogCiAjZGVmaW5lIE5DQVBJTlRTIChGU0NBUElOVFMgKyAxKSAvKiBOIDMyLWJp dCB3b3JkcyB3b3J0aCBvZiBpbmZvICovCiAKQEAgLTY3LDcgKzY5LDggQEAgWEVOX0NQVUZFQVRV UkUoTUZFTkNFX1JEVFNDLCAgICAoRlNDQVBJTlRTKzApKjMyKyA5KSAvKiBNRkVOQ0Ugc3luY2hy b25pemVzIFJEVFMKICNkZWZpbmUgY3B1X2hhc19mc2dzYmFzZQlib290X2NwdV9oYXMoWDg2X0ZF QVRVUkVfRlNHU0JBU0UpCiAjZGVmaW5lIGNwdV9oYXNfYXBlcmZtcGVyZglib290X2NwdV9oYXMo WDg2X0ZFQVRVUkVfQVBFUkZNUEVSRikKICNkZWZpbmUgY3B1X2hhc19zbWVwICAgICAgICAgICAg Ym9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1NNRVApCi0jZGVmaW5lIGNwdV9oYXNfc21hcCAgICAg ICAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9TTUFQKQorI2RlZmluZSBjcHVfaGFzX3hl bl9zbWVwICAgICAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfWEVOX1NNRVApCisjZGVmaW5l IGNwdV9oYXNfeGVuX3NtYXAgICAgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9YRU5fU01B UCkKICNkZWZpbmUgY3B1X2hhc19mcHVfc2VsICAgICAgICAgKCFib290X2NwdV9oYXMoWDg2X0ZF QVRVUkVfTk9fRlBVX1NFTCkpCiAjZGVmaW5lIGNwdV9oYXNfZmZ4c3IgICAgICAgICAgICgoYm9v dF9jcHVfZGF0YS54ODZfdmVuZG9yID09IFg4Nl9WRU5ET1JfQU1EKSBcCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAmJiBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfRkZYU1IpKQot LSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8v bGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK