From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhang Yi Subject: [PATCH RFC 07/14] xen: vmx: Update the EPT leaf entry indicated with the SPP enable bit. Date: Thu, 19 Oct 2017 16:12:04 +0800 Message-ID: <1a5a2e1b720b622f964c425fbd15c585c45faa67.1508397860.git.yi.z.zhang@linux.intel.com> References: 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 1e55vR-0004jZ-Uo for xen-devel@lists.xenproject.org; Thu, 19 Oct 2017 08:11:34 +0000 In-Reply-To: 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: kevin.tian@intel.com, tamas@tklengyel.com, wei.liu2@citrix.com, jun.nakajima@intel.com, rcojocaru@bitdefender.com, george.dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, Zhang Yi Z , jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org RnJvbTogWmhhbmcgWWkgWiA8eWkuei56aGFuZ0BsaW51eC5pbnRlbC5jb20+CgpJZiB0aGUgc3Vi LXBhZ2Ugd3JpdGUgcGVybWlzc2lvbiBWTS1leGVjdXRpb24gY29udHJvbCBpcyBzZXQsCnRyZWF0 bWVudCBvZiB3cml0ZSBhY2Nlc3NlcyB0byBndWVzdC1waHlzaWNhbCBhY2Nlc3NlcwpkZXBlbmRz IG9uIHRoZSBzdGF0ZSBvZiB0aGUgYWNjdW11bGF0ZWQgd3JpdGUtYWNjZXNzIGJpdCAocG9zaXRp b24gMSkKYW5kIHN1Yi1wYWdlIHBlcm1pc3Npb24gYml0IChwb3NpdGlvbiA2MSkgaW4gdGhlIEVQ VCBsZWFmCnBhZ2luZy1zdHJ1Y3R1cmUuCgpTb2Z0d2FyZSB3aWxsIHVwZGF0ZSB0aGUgRVBUIGxl YWYgZW50cnkgc3ViLXBhZ2UgcGVybWlzc2lvbiBiaXQgd2hpbGUKa3ZtX3NldF9zdWJwYWdlLiBJ ZiB0aGUgRVBUIHdyaXRlLWFjY2VzcyBiaXQgc2V0IHRvIDAgYW5kIHRoZSBTUFAgYml0CnNldCB0 byAxIGluIHRoZSBsZWFmIEVQVCBwYWdpbmctc3RydWN0dXJlIGVudHJ5IHRoYXQgbWFwcyBhIDRL QiBwYWdlLAp0aGVuIHRoZSBoYXJkd2FyZSB3aWxsIGxvb2sgdXAgYSBWTU0tbWFuYWdlZCBTdWIt UGFnZSBQZXJtaXNzaW9uIFRhYmxlCihTUFBUKSwgd2hpY2ggd2lsbCBhbHNvIGJlIHByZXBhcmVk IGJ5IHNldHVwIGt2bV9zZXRfc3VicGFnZS4KClNpZ25lZC1vZmYtYnk6IFpoYW5nIFlpIFogPHlp LnouemhhbmdAbGludXguaW50ZWwuY29tPgotLS0KIHhlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNz LmMgfCAyNCArKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5j ICAgIHwgNDcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhl bi9pbmNsdWRlL2FzbS14ODYvcDJtLmggICAgfCAgMiArKwogMyBmaWxlcyBjaGFuZ2VkLCA3MyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL21lbV9hY2Nlc3MuYyBi L3hlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNzLmMKaW5kZXggNWFkYWY2ZC4uYTQ3MWM3NCAxMDA2 NDQKLS0tIGEveGVuL2FyY2gveDg2L21tL21lbV9hY2Nlc3MuYworKysgYi94ZW4vYXJjaC94ODYv bW0vbWVtX2FjY2Vzcy5jCkBAIC00NjYsNiArNDY2LDMwIEBAIGludCBwMm1fZ2V0X21lbV9hY2Nl c3Moc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgZ2ZuLCB4ZW5tZW1fYWNjZXNzX3QgKmFjY2VzcykK ICAgICByZXR1cm4gX3AybV9nZXRfbWVtX2FjY2VzcyhwMm0sIGdmbiwgYWNjZXNzKTsKIH0KIAor aW50IHAybV9zZXRfbWVtX3NwcF93cChzdHJ1Y3QgZG9tYWluICpkLCBnZm5fdCBnZm4pCit7Cisg ICAgc3RydWN0IHAybV9kb21haW4gKnAybSA9IHAybV9nZXRfaG9zdHAybShkKTsKKyAgICBtZm5f dCBtZm47CisgICAgcDJtX2FjY2Vzc190IG9sZF9hOworICAgIGludCByYyA9IC0xOworICAgIHAy bV90eXBlX3QgdDsKKyAgICB1bnNpZ25lZCBsb25nIGdmbl9sID0gZ2ZuX3goZ2ZuKTsKKworICAg IHAybV9sb2NrKHAybSk7CisgICAgbWZuID0gcDJtLT5nZXRfZW50cnkocDJtLCBnZm5fbCwgJnQs ICZvbGRfYSwgMCwgTlVMTCwgTlVMTCk7CisgICAgaWYoIG1mbl9lcShtZm4sIElOVkFMSURfTUZO KSApCisgICAgeworICAgICAgICByYyA9IC0xOworICAgICAgICBnb3RvIHVubG9ja19leGl0Owor ICAgIH0KKyAgICBpZiAoIHAybS0+dXBkYXRlX2VwdF9zcHBfd3AgKQorICAgICAgICByYyA9IHAy bS0+dXBkYXRlX2VwdF9zcHBfd3AocDJtLCBnZm5fbCk7CisKK3VubG9ja19leGl0OgorICAgIHAy bV91bmxvY2socDJtKTsKKyAgICByZXR1cm4gcmM7Cit9CisKIC8qCiAgKiBMb2NhbCB2YXJpYWJs ZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jIGIv eGVuL2FyY2gveDg2L21tL3AybS1lcHQuYwppbmRleCA4ZDlkYTkyLi5jMjQ5Mjg2IDEwMDY0NAot LS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0t ZXB0LmMKQEAgLTY2Nyw2ICs2NjcsNDggQEAgYm9vbF90IGVwdF9oYW5kbGVfbWlzY29uZmlnKHVp bnQ2NF90IGdwYSkKICAgICByZXR1cm4gc3B1cmlvdXMgPyAocmMgPj0gMCkgOiAocmMgPiAwKTsK IH0KIAorc3RhdGljIGludAorZXB0X3NwcF91cGRhdGVfd3Aoc3RydWN0IHAybV9kb21haW4gKnAy bSwgdW5zaWduZWQgbG9uZyBnZm4pCit7CisgICAgZXB0X2VudHJ5X3QgKnRhYmxlLCAqZXB0X2Vu dHJ5ID0gTlVMTDsKKyAgICB1bnNpZ25lZCBsb25nIGdmbl9yZW1haW5kZXIgPSBnZm47CisgICAg ZXB0X2VudHJ5X3QgbmV3X2VudHJ5ID0geyAuZXB0ZSA9IDAgfTsKKyAgICBzdHJ1Y3QgZXB0X2Rh dGEgKmVwdCA9ICZwMm0tPmVwdDsKKyAgICB1bnNpZ25lZCBpbnQgaTsKKyAgICBpbnQgcmV0LCBy YzsKKworICAgIHRhYmxlID0gbWFwX2RvbWFpbl9wYWdlKF9tZm4ocGFnZXRhYmxlX2dldF9wZm4o cDJtX2dldF9wYWdldGFibGUocDJtKSkpKTsKKworICAgIHJldCA9IEdVRVNUX1RBQkxFX01BUF9G QUlMRUQ7CisgICAgZm9yICggaSA9IGVwdC0+d2w7IGkgPiAwOyBpLS0gKQorICAgIHsKKyAgICAg ICAgcmV0ID0gZXB0X25leHRfbGV2ZWwocDJtLCAwLCAmdGFibGUsICZnZm5fcmVtYWluZGVyLCBp KTsKKyAgICAgICAgaWYgKCByZXQgIT0gR1VFU1RfVEFCTEVfTk9STUFMX1BBR0UgKQorICAgICAg ICB7CisgICAgICAgICAgICByYyA9IC1FTk9FTlQ7CisgICAgICAgICAgICBnb3RvIG91dDsKKyAg ICAgICAgfQorICAgIH0KKworICAgIGVwdF9lbnRyeSA9IHRhYmxlICsgKGdmbl9yZW1haW5kZXIg Pj4gKGkgKiBFUFRfVEFCTEVfT1JERVIpKTsKKyAgICBpZiAoICFpc19lcHRlX3ByZXNlbnQoZXB0 X2VudHJ5KSApCisgICAgeworICAgICAgICByYyA9IC1FTk9FTlQ7CisgICAgICAgIGdvdG8gb3V0 OworICAgIH0KKworICAgIG5ld19lbnRyeSA9IGF0b21pY19yZWFkX2VwdF9lbnRyeShlcHRfZW50 cnkpOworICAgIG5ld19lbnRyeS5zcHAgPSAxOworICAgIG5ld19lbnRyeS53ID0gMDsKKyAgICB3 cml0ZV9hdG9taWMoJihlcHRfZW50cnktPmVwdGUpLCBuZXdfZW50cnkuZXB0ZSk7CisKKyAgICBl cHRfc3luY19kb21haW4ocDJtKTsKKyAgICByYyA9IDA7CitvdXQ6CisgICAgdW5tYXBfZG9tYWlu X3BhZ2UodGFibGUpOworICAgIHJldHVybiByYzsKK30KKwogLyoKICAqIGVwdF9zZXRfZW50cnko KSBjb21wdXRlcyAnbmVlZF9tb2RpZnlfdnRkX3RhYmxlJyBmb3IgaXRzZWxmLAogICogYnkgb2Jz ZXJ2aW5nIHdoZXRoZXIgYW55IGdmbi0+bWZuIHRyYW5zbGF0aW9ucyBhcmUgbW9kaWZpZWQuCkBA IC0xMjY0LDYgKzEzMDYsMTEgQEAgaW50IGVwdF9wMm1faW5pdChzdHJ1Y3QgcDJtX2RvbWFpbiAq cDJtKQogICAgICAgICBwMm0tPmZsdXNoX2hhcmR3YXJlX2NhY2hlZF9kaXJ0eSA9IGVwdF9mbHVz aF9wbWxfYnVmZmVyczsKICAgICB9CiAKKyAgICBpZiAoIGNwdV9oYXNfdm14X2VwdF9zcHAgKQor ICAgIHsKKyAgICAgICAgcDJtLT51cGRhdGVfZXB0X3NwcF93cCA9IGVwdF9zcHBfdXBkYXRlX3dw OworICAgIH0KKwogICAgIGlmICggIXphbGxvY19jcHVtYXNrX3ZhcigmZXB0LT5pbnZhbGlkYXRl KSApCiAgICAgICAgIHJldHVybiAtRU5PTUVNOwogCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9h c20teDg2L3AybS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaAppbmRleCAwNTYxNjQzLi5h ZGJjMWM2IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCisrKyBiL3hlbi9p bmNsdWRlL2FzbS14ODYvcDJtLmgKQEAgLTI2Niw2ICsyNjYsOCBAQCBzdHJ1Y3QgcDJtX2RvbWFp biB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBs b25nIGdmbiwgbDFfcGdlbnRyeV90ICpwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbDFfcGdlbnRyeV90IG5ldywgdW5zaWduZWQgaW50IGxldmVsKTsKICAgICBs b25nICAgICAgICAgICAgICAgKCphdWRpdF9wMm0pKHN0cnVjdCBwMm1fZG9tYWluICpwMm0pOwor ICAgIGludCAgICAgICAgICAgICAgICAoKnVwZGF0ZV9lcHRfc3BwX3dwKShzdHJ1Y3QgcDJtX2Rv bWFpbiAqcDJtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9u ZyBnZm4pOwogCiAgICAgLyoKICAgICAgKiBQMk0gdXBkYXRlcyBtYXkgcmVxdWlyZSBUTEJzIHRv IGJlIGZsdXNoZWQgKGludmFsaWRhdGVkKS4KLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==