From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH v8 08/17] x86/msr: Emulation of MSR_{SPEC_CTRL, PRED_CMD} for guests Date: Fri, 12 Jan 2018 18:00:58 +0000 Message-ID: <1515780067-31735-9-git-send-email-andrew.cooper3@citrix.com> References: <1515780067-31735-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1515780067-31735-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4K UmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCiB4ZW4vYXJj aC94ODYvbXNyLmMgICAgICAgIHwgMzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIHhlbi9pbmNsdWRlL2FzbS14ODYvbXNyLmggfCAxMiArKysrKysrKysrKysKIDIgZmlsZXMg Y2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tc3Iu YyBiL3hlbi9hcmNoL3g4Ni9tc3IuYwppbmRleCAzMTk4M2VkLi4wMmE3YjQ5IDEwMDY0NAotLS0g YS94ZW4vYXJjaC94ODYvbXNyLmMKKysrIGIveGVuL2FyY2gveDg2L21zci5jCkBAIC0xMTksMTEg KzExOSwyMiBAQCBpbnQgaW5pdF92Y3B1X21zcl9wb2xpY3koc3RydWN0IHZjcHUgKnYpCiAKIGlu dCBndWVzdF9yZG1zcihjb25zdCBzdHJ1Y3QgdmNwdSAqdiwgdWludDMyX3QgbXNyLCB1aW50NjRf dCAqdmFsKQogeworICAgIGNvbnN0IHN0cnVjdCBjcHVpZF9wb2xpY3kgKmNwID0gdi0+ZG9tYWlu LT5hcmNoLmNwdWlkOwogICAgIGNvbnN0IHN0cnVjdCBtc3JfZG9tYWluX3BvbGljeSAqZHAgPSB2 LT5kb21haW4tPmFyY2gubXNyOwogICAgIGNvbnN0IHN0cnVjdCBtc3JfdmNwdV9wb2xpY3kgKnZw ID0gdi0+YXJjaC5tc3I7CiAKICAgICBzd2l0Y2ggKCBtc3IgKQogICAgIHsKKyAgICBjYXNlIE1T Ul9QUkVEX0NNRDoKKyAgICAgICAgLyogV3JpdGUtb25seSAqLworICAgICAgICBnb3RvIGdwX2Zh dWx0OworCisgICAgY2FzZSBNU1JfU1BFQ19DVFJMOgorICAgICAgICBpZiAoICFjcC0+ZmVhdC5p YnJzYiApCisgICAgICAgICAgICBnb3RvIGdwX2ZhdWx0OworICAgICAgICAqdmFsID0gdnAtPnNw ZWNfY3RybC5ndWVzdDsKKyAgICAgICAgYnJlYWs7CisKICAgICBjYXNlIE1TUl9JTlRFTF9QTEFU Rk9STV9JTkZPOgogICAgICAgICBpZiAoICFkcC0+cGxhZm9ybV9pbmZvLmF2YWlsYWJsZSApCiAg ICAgICAgICAgICBnb3RvIGdwX2ZhdWx0OwpAQCAtMTUyLDE0ICsxNjMsMzggQEAgaW50IGd1ZXN0 X3dybXNyKHN0cnVjdCB2Y3B1ICp2LCB1aW50MzJfdCBtc3IsIHVpbnQ2NF90IHZhbCkKIHsKICAg ICBjb25zdCBzdHJ1Y3QgdmNwdSAqY3VyciA9IGN1cnJlbnQ7CiAgICAgc3RydWN0IGRvbWFpbiAq ZCA9IHYtPmRvbWFpbjsKKyAgICBjb25zdCBzdHJ1Y3QgY3B1aWRfcG9saWN5ICpjcCA9IGQtPmFy Y2guY3B1aWQ7CiAgICAgc3RydWN0IG1zcl9kb21haW5fcG9saWN5ICpkcCA9IGQtPmFyY2gubXNy OwogICAgIHN0cnVjdCBtc3JfdmNwdV9wb2xpY3kgKnZwID0gdi0+YXJjaC5tc3I7CiAKICAgICBz d2l0Y2ggKCBtc3IgKQogICAgIHsKICAgICBjYXNlIE1TUl9JTlRFTF9QTEFURk9STV9JTkZPOgor ICAgICAgICAvKiBSZWFkLW9ubHkgKi8KICAgICAgICAgZ290byBncF9mYXVsdDsKIAorICAgIGNh c2UgTVNSX1NQRUNfQ1RSTDoKKyAgICAgICAgaWYgKCAhY3AtPmZlYXQuaWJyc2IgKQorICAgICAg ICAgICAgZ290byBncF9mYXVsdDsgLyogTVNSIGF2YWlsYWJsZT8gKi8KKyAgICAgICAgaWYgKCB2 YWwgJiB+KFNQRUNfQ1RSTF9JQlJTIHwKKyAgICAgICAgICAgICAgICAgICAgIChjcC0+ZmVhdC5z dGlicCA/IFNQRUNfQ1RSTF9TVElCUCA6IDApKSApCisgICAgICAgICAgICBnb3RvIGdwX2ZhdWx0 OyAvKiBSc3ZkIGJpdCBzZXQ/ICovCisgICAgICAgIHZwLT5zcGVjX2N0cmwuZ3Vlc3QgPSB2YWw7 CisgICAgICAgIHZwLT5zcGVjX2N0cmwuaG9zdCAgPSB2YWw7CisgICAgICAgIGJyZWFrOworCisg ICAgY2FzZSBNU1JfUFJFRF9DTUQ6CisgICAgICAgIGlmICggIWNwLT5mZWF0LmlicnNiICYmICFj cC0+ZXh0ZC5pYnBiICkKKyAgICAgICAgICAgIGdvdG8gZ3BfZmF1bHQ7IC8qIE1TUiBhdmFpbGFi bGU/ICovCisKKyAgICAgICAgLyoKKyAgICAgICAgICogVGhlIG9ubHkgZGVmaW5lZCBiZWhhdmlv dXIgaXMgd2hlbiB3cml0aW5nIFBSRURfQ01EX0lCUEIuICBJbgorICAgICAgICAgKiBwcmFjdGlj ZSwgcmVhbCBoYXJkd2FyZSBhY2NlcHRzIGFueSB2YWx1ZSB3aXRob3V0IGZhdWx0aW5nLgorICAg ICAgICAgKi8KKyAgICAgICAgaWYgKCB2ID09IGN1cnIgJiYgKHZhbCAmIFBSRURfQ01EX0lCUEIp ICkKKyAgICAgICAgICAgIHdybXNybChNU1JfUFJFRF9DTUQsIFBSRURfQ01EX0lCUEIpOworICAg ICAgICBicmVhazsKKwogICAgIGNhc2UgTVNSX0lOVEVMX01JU0NfRkVBVFVSRVNfRU5BQkxFUzoK ICAgICB7CiAgICAgICAgIHVpbnQ2NF90IHJzdmQgPSB+MHVsbDsKZGlmZiAtLWdpdCBhL3hlbi9p bmNsdWRlL2FzbS14ODYvbXNyLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L21zci5oCmluZGV4IDJm YmVkMDIuLjNkMDAxMmQgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbXNyLmgKKysr IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc3IuaApAQCAtMjIzLDYgKzIyMywxOCBAQCBzdHJ1Y3Qg bXNyX2RvbWFpbl9wb2xpY3kKIC8qIE1TUiBwb2xpY3kgb2JqZWN0IGZvciBwZXItdkNQVSBNU1Jz ICovCiBzdHJ1Y3QgbXNyX3ZjcHVfcG9saWN5CiB7CisgICAgLyogMHgwMDAwMDA0OCAtIE1TUl9T UEVDX0NUUkwgKi8KKyAgICBzdHJ1Y3QgeworICAgICAgICAvKgorICAgICAgICAgKiBPbmx5IHRo ZSBib3R0b20gdHdvIGJpdHMgYXJlIGRlZmluZWQsIHNvIG5vIG5lZWQgdG8gd2FzdGUgc3BhY2UK KyAgICAgICAgICogd2l0aCB1aW50NjRfdCBhdCB0aGUgbW9tZW50LiAgV2UgbWFpbnRhaW4gdGhl IGd1ZXN0cyBpZGVhIG9mIHRoZQorICAgICAgICAgKiB2YWx1ZSBpdCB3cm90ZSwgYW5kIGEgdmFs dWUgdG8gaW5zdGFsbCBpbnRvIGhhcmR3YXJlIChleHRlbmRlZCB0bworICAgICAgICAgKiB1aW50 MzJfdCB0byBzaW1wbGlmeSB0aGUgYXNtKSB3aGljaCBtaWdodCBiZSBkaWZmZXJlbnQuCisgICAg ICAgICAqLworICAgICAgICB1aW50MzJfdCBob3N0OworICAgICAgICB1aW50OF90IGd1ZXN0Owor ICAgIH0gc3BlY19jdHJsOworCiAgICAgLyogMHgwMDAwMDE0MCAgTVNSX0lOVEVMX01JU0NfRkVB VFVSRVNfRU5BQkxFUyAqLwogICAgIHN0cnVjdCB7CiAgICAgICAgIGJvb2wgYXZhaWxhYmxlOyAv KiBUaGlzIE1TUiBpcyBub24tYXJjaGl0ZWN0dXJhbCAqLwotLSAKMi4xLjQKCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBs aXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2pl Y3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs