From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH v6.5 17/26] x86/msr: Emulation of MSR_{SPEC_CTRL, PRED_CMD} for guests Date: Thu, 4 Jan 2018 00:15:46 +0000 Message-ID: <1515024955-13390-18-git-send-email-andrew.cooper3@citrix.com> References: <1515024955-13390-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: <1515024955-13390-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 UmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCnYzOgogKiBC cmFja2V0cyBhcm91bmQgJiYgKC4uICYgLi4pIG9wZXJhdGlvbgogKiBFeHRlbmQgaG9zdCB0byB1 aW50MzJfdCBmb3IgdGhlIGJlbmVmaXQgb2YgdGhlIGFzbSBjb2RlLgp2NDoKICogRXh0ZW5kIE1T Ul9QUkVEX0NNRCBhdmFpbGFiaWxpdHkgbG9naWMgZm9yIEFNRC4KLS0tCiB4ZW4vYXJjaC94ODYv bXNyLmMgICAgICAgIHwgMzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhl bi9pbmNsdWRlL2FzbS14ODYvbXNyLmggfCAxMiArKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdl ZCwgNDcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tc3IuYyBiL3hl bi9hcmNoL3g4Ni9tc3IuYwppbmRleCAzMTk4M2VkLi4wMmE3YjQ5IDEwMDY0NAotLS0gYS94ZW4v YXJjaC94ODYvbXNyLmMKKysrIGIveGVuL2FyY2gveDg2L21zci5jCkBAIC0xMTksMTEgKzExOSwy MiBAQCBpbnQgaW5pdF92Y3B1X21zcl9wb2xpY3koc3RydWN0IHZjcHUgKnYpCiAKIGludCBndWVz dF9yZG1zcihjb25zdCBzdHJ1Y3QgdmNwdSAqdiwgdWludDMyX3QgbXNyLCB1aW50NjRfdCAqdmFs KQogeworICAgIGNvbnN0IHN0cnVjdCBjcHVpZF9wb2xpY3kgKmNwID0gdi0+ZG9tYWluLT5hcmNo LmNwdWlkOwogICAgIGNvbnN0IHN0cnVjdCBtc3JfZG9tYWluX3BvbGljeSAqZHAgPSB2LT5kb21h aW4tPmFyY2gubXNyOwogICAgIGNvbnN0IHN0cnVjdCBtc3JfdmNwdV9wb2xpY3kgKnZwID0gdi0+ YXJjaC5tc3I7CiAKICAgICBzd2l0Y2ggKCBtc3IgKQogICAgIHsKKyAgICBjYXNlIE1TUl9QUkVE X0NNRDoKKyAgICAgICAgLyogV3JpdGUtb25seSAqLworICAgICAgICBnb3RvIGdwX2ZhdWx0Owor CisgICAgY2FzZSBNU1JfU1BFQ19DVFJMOgorICAgICAgICBpZiAoICFjcC0+ZmVhdC5pYnJzYiAp CisgICAgICAgICAgICBnb3RvIGdwX2ZhdWx0OworICAgICAgICAqdmFsID0gdnAtPnNwZWNfY3Ry bC5ndWVzdDsKKyAgICAgICAgYnJlYWs7CisKICAgICBjYXNlIE1TUl9JTlRFTF9QTEFURk9STV9J TkZPOgogICAgICAgICBpZiAoICFkcC0+cGxhZm9ybV9pbmZvLmF2YWlsYWJsZSApCiAgICAgICAg ICAgICBnb3RvIGdwX2ZhdWx0OwpAQCAtMTUyLDE0ICsxNjMsMzggQEAgaW50IGd1ZXN0X3dybXNy KHN0cnVjdCB2Y3B1ICp2LCB1aW50MzJfdCBtc3IsIHVpbnQ2NF90IHZhbCkKIHsKICAgICBjb25z dCBzdHJ1Y3QgdmNwdSAqY3VyciA9IGN1cnJlbnQ7CiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IHYt PmRvbWFpbjsKKyAgICBjb25zdCBzdHJ1Y3QgY3B1aWRfcG9saWN5ICpjcCA9IGQtPmFyY2guY3B1 aWQ7CiAgICAgc3RydWN0IG1zcl9kb21haW5fcG9saWN5ICpkcCA9IGQtPmFyY2gubXNyOwogICAg IHN0cnVjdCBtc3JfdmNwdV9wb2xpY3kgKnZwID0gdi0+YXJjaC5tc3I7CiAKICAgICBzd2l0Y2gg KCBtc3IgKQogICAgIHsKICAgICBjYXNlIE1TUl9JTlRFTF9QTEFURk9STV9JTkZPOgorICAgICAg ICAvKiBSZWFkLW9ubHkgKi8KICAgICAgICAgZ290byBncF9mYXVsdDsKIAorICAgIGNhc2UgTVNS X1NQRUNfQ1RSTDoKKyAgICAgICAgaWYgKCAhY3AtPmZlYXQuaWJyc2IgKQorICAgICAgICAgICAg Z290byBncF9mYXVsdDsgLyogTVNSIGF2YWlsYWJsZT8gKi8KKyAgICAgICAgaWYgKCB2YWwgJiB+ KFNQRUNfQ1RSTF9JQlJTIHwKKyAgICAgICAgICAgICAgICAgICAgIChjcC0+ZmVhdC5zdGlicCA/ IFNQRUNfQ1RSTF9TVElCUCA6IDApKSApCisgICAgICAgICAgICBnb3RvIGdwX2ZhdWx0OyAvKiBS c3ZkIGJpdCBzZXQ/ICovCisgICAgICAgIHZwLT5zcGVjX2N0cmwuZ3Vlc3QgPSB2YWw7CisgICAg ICAgIHZwLT5zcGVjX2N0cmwuaG9zdCAgPSB2YWw7CisgICAgICAgIGJyZWFrOworCisgICAgY2Fz ZSBNU1JfUFJFRF9DTUQ6CisgICAgICAgIGlmICggIWNwLT5mZWF0LmlicnNiICYmICFjcC0+ZXh0 ZC5pYnBiICkKKyAgICAgICAgICAgIGdvdG8gZ3BfZmF1bHQ7IC8qIE1TUiBhdmFpbGFibGU/ICov CisKKyAgICAgICAgLyoKKyAgICAgICAgICogVGhlIG9ubHkgZGVmaW5lZCBiZWhhdmlvdXIgaXMg d2hlbiB3cml0aW5nIFBSRURfQ01EX0lCUEIuICBJbgorICAgICAgICAgKiBwcmFjdGljZSwgcmVh bCBoYXJkd2FyZSBhY2NlcHRzIGFueSB2YWx1ZSB3aXRob3V0IGZhdWx0aW5nLgorICAgICAgICAg Ki8KKyAgICAgICAgaWYgKCB2ID09IGN1cnIgJiYgKHZhbCAmIFBSRURfQ01EX0lCUEIpICkKKyAg ICAgICAgICAgIHdybXNybChNU1JfUFJFRF9DTUQsIFBSRURfQ01EX0lCUEIpOworICAgICAgICBi cmVhazsKKwogICAgIGNhc2UgTVNSX0lOVEVMX01JU0NfRkVBVFVSRVNfRU5BQkxFUzoKICAgICB7 CiAgICAgICAgIHVpbnQ2NF90IHJzdmQgPSB+MHVsbDsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRl L2FzbS14ODYvbXNyLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L21zci5oCmluZGV4IDJmYmVkMDIu LjNkMDAxMmQgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbXNyLmgKKysrIGIveGVu L2luY2x1ZGUvYXNtLXg4Ni9tc3IuaApAQCAtMjIzLDYgKzIyMywxOCBAQCBzdHJ1Y3QgbXNyX2Rv bWFpbl9wb2xpY3kKIC8qIE1TUiBwb2xpY3kgb2JqZWN0IGZvciBwZXItdkNQVSBNU1JzICovCiBz dHJ1Y3QgbXNyX3ZjcHVfcG9saWN5CiB7CisgICAgLyogMHgwMDAwMDA0OCAtIE1TUl9TUEVDX0NU UkwgKi8KKyAgICBzdHJ1Y3QgeworICAgICAgICAvKgorICAgICAgICAgKiBPbmx5IHRoZSBib3R0 b20gdHdvIGJpdHMgYXJlIGRlZmluZWQsIHNvIG5vIG5lZWQgdG8gd2FzdGUgc3BhY2UKKyAgICAg ICAgICogd2l0aCB1aW50NjRfdCBhdCB0aGUgbW9tZW50LiAgV2UgbWFpbnRhaW4gdGhlIGd1ZXN0 cyBpZGVhIG9mIHRoZQorICAgICAgICAgKiB2YWx1ZSBpdCB3cm90ZSwgYW5kIGEgdmFsdWUgdG8g aW5zdGFsbCBpbnRvIGhhcmR3YXJlIChleHRlbmRlZCB0bworICAgICAgICAgKiB1aW50MzJfdCB0 byBzaW1wbGlmeSB0aGUgYXNtKSB3aGljaCBtaWdodCBiZSBkaWZmZXJlbnQuCisgICAgICAgICAq LworICAgICAgICB1aW50MzJfdCBob3N0OworICAgICAgICB1aW50OF90IGd1ZXN0OworICAgIH0g c3BlY19jdHJsOworCiAgICAgLyogMHgwMDAwMDE0MCAgTVNSX0lOVEVMX01JU0NfRkVBVFVSRVNf RU5BQkxFUyAqLwogICAgIHN0cnVjdCB7CiAgICAgICAgIGJvb2wgYXZhaWxhYmxlOyAvKiBUaGlz IE1TUiBpcyBub24tYXJjaGl0ZWN0dXJhbCAqLwotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhl bi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3Jn L21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs