From mboxrd@z Thu Jan 1 00:00:00 1970 From: He Chen Subject: [PATCH V2] xen: support enabling SMEP/SMAP for HVM only Date: Thu, 11 Aug 2016 17:17:53 +0800 Message-ID: <1470907073-17801-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: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Nakajima Jun , Andrew Cooper , Wu Feng , Wang Yong , Jan Beulich List-Id: xen-devel@lists.xenproject.org RW5oYW5jZSAic2thamltYUBpbnRlbC5jb20+bWVwIiBhbmQgInNtYXAiIGNvbW1hbmQgbGluZSBv cHRpb25zIHRvIHN1cHBvcnQgZW5hYmxpbmcgU01FUApvciBTTUFQIGZvciBIVk0gb25seSB3aXRo IGFsbG93aW5nICJodm0iIGFzIGEgdmFsdWUuCgpTaWduZWQtb2ZmLWJ5OiBIZSBDaGVuIDxoZS5j aGVuQGxpbnV4LmludGVsLmNvbT4KCi0tLQpDaGFuZ2VzIGluIFYyOgoqIEFsbG93ICJodm0iIGFz IGEgdmFsdWUgdG8gInNtZXAiIGFuZCAic21hcCIgY29tbWFuZCBsaW5lIG9wdGlvbnMuCiogQ2xl YXIgU01FUC9TTUFQIENQVUlEIGJpdHMgZm9yIHB2IGd1ZXN0cyBpZiB0aGV5IGFyZSBzZXQgdG8g aHZtIG9ubHkuCiogUmVmaW5lIGRvY3MuCiogUmV3cml0ZSBjb21taXQgbWVzc2FnZS4KLS0tCiBk b2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5tYXJrZG93biB8IDE0ICsrKysrLS0tLQogeGVuL2Fy Y2gveDg2L2NwdWlkLmMgICAgICAgICAgICAgICAgfCAgNSArKysrCiB4ZW4vYXJjaC94ODYvc2V0 dXAuYyAgICAgICAgICAgICAgICB8IDU4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr LS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvc2V0dXAuaCAgICAgICAgIHwgIDMgKysKIDQgZmls ZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZG9jcy9taXNjL3hlbi1jb21tYW5kLWxpbmUubWFya2Rvd24gYi9kb2NzL21pc2MveGVuLWNv bW1hbmQtbGluZS5tYXJrZG93bgppbmRleCAzYTI1MGNiLi4wZTQ5MzU4IDEwMDY0NAotLS0gYS9k b2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5tYXJrZG93bgorKysgYi9kb2NzL21pc2MveGVuLWNv bW1hbmQtbGluZS5tYXJrZG93bgpAQCAtMTQyNywxOSArMTQyNywyMSBAQCBlbmFibGluZyBtb3Jl IHNvY2tldHMgYW5kIGNvcmVzIHRvIGdvIGludG8gZGVlcGVyIHNsZWVwIHN0YXRlcy4KIAogU2V0 IHRoZSBzZXJpYWwgdHJhbnNtaXQgYnVmZmVyIHNpemUuCiAKLSMjIyBzbWVwCi0+IGA9IDxib29s ZWFuPmAKKyMjIyBzbWFwCis+IGA9IDxib29sZWFuPiB8IGh2bWAKIAogPiBEZWZhdWx0OiBgdHJ1 ZWAKIAotRmxhZyB0byBlbmFibGUgU3VwZXJ2aXNvciBNb2RlIEV4ZWN1dGlvbiBQcm90ZWN0aW9u CitGbGFnIHRvIGVuYWJsZSBTdXBlcnZpc29yIE1vZGUgQWNjZXNzIFByZXZlbnRpb24KK1VzaW5n IGBzbWFwPWh2bWAgdG8gZW5hYmxlIFNNQVAgZm9yIEhWTSBndWVzdHMgb25seS4KIAotIyMjIHNt YXAKLT4gYD0gPGJvb2xlYW4+YAorIyMjIHNtZXAKKz4gYD0gPGJvb2xlYW4+IHwgaHZtYAogCiA+ IERlZmF1bHQ6IGB0cnVlYAogCi1GbGFnIHRvIGVuYWJsZSBTdXBlcnZpc29yIE1vZGUgQWNjZXNz IFByZXZlbnRpb24KK0ZsYWcgdG8gZW5hYmxlIFN1cGVydmlzb3IgTW9kZSBFeGVjdXRpb24gUHJv dGVjdGlvbgorVXNpbmcgYHNtZXA9aHZtYCB0byBlbmFibGUgU01FUCBmb3IgSFZNIGd1ZXN0cyBv bmx5LgogCiAjIyMgc25iXF9pZ2RcX3F1aXJrCiA+IGA9IDxib29sZWFuPiB8IGNhcCB8IDxpbnRl Z2VyPmAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9jcHVpZC5jIGIveGVuL2FyY2gveDg2L2Nw dWlkLmMKaW5kZXggMzhlMzRiZC4uYWZhMTZiOCAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2Nw dWlkLmMKKysrIGIveGVuL2FyY2gveDg2L2NwdWlkLmMKQEAgLTQsNiArNCw3IEBACiAjaW5jbHVk ZSA8YXNtL2h2bS9odm0uaD4KICNpbmNsdWRlIDxhc20vaHZtL3ZteC92bWNzLmg+CiAjaW5jbHVk ZSA8YXNtL3Byb2Nlc3Nvci5oPgorI2luY2x1ZGUgPGFzbS9zZXR1cC5oPgogCiBjb25zdCB1aW50 MzJfdCBrbm93bl9mZWF0dXJlc1tdID0gSU5JVF9LTk9XTl9GRUFUVVJFUzsKIGNvbnN0IHVpbnQz Ml90IHNwZWNpYWxfZmVhdHVyZXNbXSA9IElOSVRfU1BFQ0lBTF9GRUFUVVJFUzsKQEAgLTExOCw2 ICsxMTksMTAgQEAgc3RhdGljIHZvaWQgX19pbml0IGNhbGN1bGF0ZV9wdl9mZWF0dXJlc2V0KHZv aWQpCiAgICAgX19zZXRfYml0KFg4Nl9GRUFUVVJFX0hUVCwgcHZfZmVhdHVyZXNldCk7CiAgICAg X19zZXRfYml0KFg4Nl9GRUFUVVJFX1gyQVBJQywgcHZfZmVhdHVyZXNldCk7CiAgICAgX19zZXRf Yml0KFg4Nl9GRUFUVVJFX0NNUF9MRUdBQ1ksIHB2X2ZlYXR1cmVzZXQpOworICAgIGlmICggc21l cF9odm1fb25seSApCisgICAgICAgIF9fY2xlYXJfYml0KFg4Nl9GRUFUVVJFX1NNRVAsIHB2X2Zl YXR1cmVzZXQpOworICAgIGlmICggc21hcF9odm1fb25seSApCisgICAgICAgIF9fY2xlYXJfYml0 KFg4Nl9GRUFUVVJFX1NNQVAsIHB2X2ZlYXR1cmVzZXQpOwogCiAgICAgc2FuaXRpc2VfZmVhdHVy ZXNldChwdl9mZWF0dXJlc2V0KTsKIH0KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9zZXR1cC5j IGIveGVuL2FyY2gveDg2L3NldHVwLmMKaW5kZXggMjE3Yzc3NS4uNjI1YjliNCAxMDA2NDQKLS0t IGEveGVuL2FyY2gveDg2L3NldHVwLmMKKysrIGIveGVuL2FyY2gveDg2L3NldHVwLmMKQEAgLTYx LDEzICs2MSwxOSBAQCBib29sZWFuX3BhcmFtKCJub3NtcCIsIG9wdF9ub3NtcCk7CiBzdGF0aWMg dW5zaWduZWQgaW50IF9faW5pdGRhdGEgbWF4X2NwdXM7CiBpbnRlZ2VyX3BhcmFtKCJtYXhjcHVz IiwgbWF4X2NwdXMpOwogCi0vKiBzbWVwOiBFbmFibGUvZGlzYWJsZSBTdXBlcnZpc29yIE1vZGUg RXhlY3V0aW9uIFByb3RlY3Rpb24gKGRlZmF1bHQgb24pLiAqLwotc3RhdGljIGJvb2xfdCBfX2lu aXRkYXRhIG9wdF9zbWVwID0gMTsKLWJvb2xlYW5fcGFyYW0oInNtZXAiLCBvcHRfc21lcCk7Ci0K LS8qIHNtYXA6IEVuYWJsZS9kaXNhYmxlIFN1cGVydmlzb3IgTW9kZSBBY2Nlc3MgUHJldmVudGlv biAoZGVmYXVsdCBvbikuICovCi1zdGF0aWMgYm9vbF90IF9faW5pdGRhdGEgb3B0X3NtYXAgPSAx OwotYm9vbGVhbl9wYXJhbSgic21hcCIsIG9wdF9zbWFwKTsKKy8qIFN1cGVydmlzb3IgTW9kZSBF eGVjdXRpb24gUHJvdGVjdGlvbiAoZGVmYXVsdCBvbikuICovCisvKiAic21lcD1vbiI6IEVuYWJs ZSBTTUVQIGZvciBYZW4gYW5kIGd1ZXN0cy4gICAgICAgICAqLworLyogInNtZXA9aHZtIjogRW5h YmxlIFNNRVAgZm9yIEhWTSBvbmx5LiAgICAgICAgICAgICAgKi8KKy8qICJzbWVwPW9mZiI6IERp c2FibGUgU01FUCBmb3IgWGVuIGFuZCBndWVzdHMuICAgICAgICovCitzdGF0aWMgdm9pZCBwYXJz ZV9zbWVwX3BhcmFtKGNoYXIgKnMpOworY3VzdG9tX3BhcmFtKCJzbWVwIiwgcGFyc2Vfc21lcF9w YXJhbSk7CisKKy8qIFN1cGVydmlzb3IgTW9kZSBBY2Nlc3MgUHJldmVudGlvbiAoZGVmYXVsdCBv bikuICovCisvKiAic21lcD1vbiI6IEVuYWJsZSBTTUFQIGZvciBYZW4gYW5kIGd1ZXN0cy4gICAg ICAqLworLyogInNtZXA9aHZtIjogRW5hYmxlIFNNQVAgZm9yIEhWTSBvbmx5LiAgICAgICAgICAg Ki8KKy8qICJzbWVwPW9mZiI6IERpc2FibGUgU01BUCBmb3IgWGVuIGFuZCBndWVzdHMuICAgICov CitzdGF0aWMgdm9pZCBwYXJzZV9zbWFwX3BhcmFtKGNoYXIgKnMpOworY3VzdG9tX3BhcmFtKCJz bWFwIiwgcGFyc2Vfc21hcF9wYXJhbSk7CiAKIHVuc2lnbmVkIGxvbmcgX19yZWFkX21vc3RseSBj cjRfcHYzMl9tYXNrOwogCkBAIC0xMTEsNiArMTE3LDM0IEBAIHN0cnVjdCBjcHVpbmZvX3g4NiBf X3JlYWRfbW9zdGx5IGJvb3RfY3B1X2RhdGEgPSB7IDAsIDAsIDAsIDAsIC0xIH07CiAKIHVuc2ln bmVkIGxvbmcgX19yZWFkX21vc3RseSBtbXVfY3I0X2ZlYXR1cmVzID0gWEVOX01JTklNQUxfQ1I0 OwogCitzdGF0aWMgYm9vbF90IF9faW5pdGRhdGEgb3B0X3NtZXAgPSAxOworYm9vbF90IF9faW5p dGRhdGEgc21lcF9odm1fb25seSA9IDA7CitzdGF0aWMgdm9pZCBfX2luaXQgcGFyc2Vfc21lcF9w YXJhbShjaGFyICpzKQoreworICAgIGlmICggIXBhcnNlX2Jvb2wocykgKQorICAgIHsKKyAgICAg ICAgb3B0X3NtZXAgPSAwOworICAgIH0KKyAgICBlbHNlIGlmICggIXN0cmNtcChzLCAiaHZtIikg KQorICAgIHsKKyAgICAgICAgc21lcF9odm1fb25seSA9IDE7CisgICAgfQorfQorCitzdGF0aWMg Ym9vbF90IF9faW5pdGRhdGEgb3B0X3NtYXAgPSAxOworYm9vbF90IF9faW5pdGRhdGEgc21hcF9o dm1fb25seSA9IDA7CitzdGF0aWMgdm9pZCBfX2luaXQgcGFyc2Vfc21hcF9wYXJhbShjaGFyICpz KQoreworICAgIGlmICggIXBhcnNlX2Jvb2wocykgKQorICAgIHsKKyAgICAgICAgb3B0X3NtYXAg PSAwOworICAgIH0KKyAgICBlbHNlIGlmICggIXN0cmNtcChzLCAiaHZtIikgKQorICAgIHsKKyAg ICAgICAgc21hcF9odm1fb25seSA9IDE7CisgICAgfQorfQorCiBib29sX3QgX19yZWFkX21vc3Rs eSBhY3BpX2Rpc2FibGVkOwogYm9vbF90IF9faW5pdGRhdGEgYWNwaV9mb3JjZTsKIHN0YXRpYyBj aGFyIF9faW5pdGRhdGEgYWNwaV9wYXJhbVsxMF0gPSAiIjsKQEAgLTE0MDQsMTIgKzE0MzgsMjAg QEAgdm9pZCBfX2luaXQgbm9yZXR1cm4gX19zdGFydF94ZW4odW5zaWduZWQgbG9uZyBtYmlfcCkK ICAgICBpZiAoICFvcHRfc21lcCApCiAgICAgICAgIHNldHVwX2NsZWFyX2NwdV9jYXAoWDg2X0ZF QVRVUkVfU01FUCk7CiAgICAgaWYgKCBjcHVfaGFzX3NtZXAgKQorICAgIHsKICAgICAgICAgc2V0 X2luX2NyNChYODZfQ1I0X1NNRVApOworICAgICAgICBpZiAoIHNtZXBfaHZtX29ubHkgKQorICAg ICAgICAgICAgd3JpdGVfY3I0KHJlYWRfY3I0KCkgJiB+WDg2X0NSNF9TTUVQKTsKKyAgICB9CiAK ICAgICBpZiAoICFvcHRfc21hcCApCiAgICAgICAgIHNldHVwX2NsZWFyX2NwdV9jYXAoWDg2X0ZF QVRVUkVfU01BUCk7CiAgICAgaWYgKCBjcHVfaGFzX3NtYXAgKQorICAgIHsKICAgICAgICAgc2V0 X2luX2NyNChYODZfQ1I0X1NNQVApOworICAgICAgICBpZiAoIHNtYXBfaHZtX29ubHkgKQorICAg ICAgICAgICAgd3JpdGVfY3I0KHJlYWRfY3I0KCkgJiB+WDg2X0NSNF9TTUFQKTsKKyAgICB9CiAK ICAgICBjcjRfcHYzMl9tYXNrID0gbW11X2NyNF9mZWF0dXJlcyAmIFhFTl9DUjRfUFYzMl9CSVRT OwogCkBAIC0xNTcwLDcgKzE2MTIsNyBAQCB2b2lkIF9faW5pdCBub3JldHVybiBfX3N0YXJ0X3hl bih1bnNpZ25lZCBsb25nIG1iaV9wKQogICAgICAgICAgICAgICAgICAgICAgICAgYm9vdHN0cmFw X21hcCwgY21kbGluZSkgIT0gMCkKICAgICAgICAgcGFuaWMoIkNvdWxkIG5vdCBzZXQgdXAgRE9N MCBndWVzdCBPUyIpOwogCi0gICAgaWYgKCBjcHVfaGFzX3NtYXAgKQorICAgIGlmICggY3B1X2hh c19zbWFwICYmICFzbWFwX2h2bV9vbmx5ICkKICAgICB7CiAgICAgICAgIHdyaXRlX2NyNChyZWFk X2NyNCgpIHwgWDg2X0NSNF9TTUFQKTsKICAgICAgICAgY3I0X3B2MzJfbWFzayB8PSBYODZfQ1I0 X1NNQVA7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3NldHVwLmggYi94ZW4vaW5j bHVkZS9hc20teDg2L3NldHVwLmgKaW5kZXggYzY1Yjc5Yy4uYTBlNjlhZSAxMDA2NDQKLS0tIGEv eGVuL2luY2x1ZGUvYXNtLXg4Ni9zZXR1cC5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvc2V0 dXAuaApAQCAtNTEsNiArNTEsOSBAQCB2b2lkIG1pY3JvY29kZV9ncmFiX21vZHVsZSgKIAogZXh0 ZXJuIHVpbnQ4X3Qga2JkX3NoaWZ0X2ZsYWdzOwogCitleHRlcm4gYm9vbF90IHNtZXBfaHZtX29u bHk7CitleHRlcm4gYm9vbF90IHNtYXBfaHZtX29ubHk7CisKICNpZmRlZiBOREVCVUcKICMgZGVm aW5lIGhpZ2htZW1fc3RhcnQgMAogI2Vsc2UKLS0gCjEuOS4xCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==