From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH v7 2/7] x86/vmce: emulate MSR_IA32_MCG_EXT_CTL Date: Fri, 7 Jul 2017 11:53:09 +0800 Message-ID: <20170707035314.15659-3-haozhong.zhang@intel.com> References: <20170707035314.15659-1-haozhong.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170707035314.15659-1-haozhong.zhang@intel.com> 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: Haozhong Zhang , Jan Beulich , Andrew Cooper List-Id: xen-devel@lists.xenproject.org SWYgTUNHX0xNQ0VfUCBpcyBwcmVzZW50IGluIGd1ZXN0IE1TUl9JQTMyX01DR19DQVAsIHRoZW4g YWxsb3cgZ3Vlc3QKdG8gcmVhZC93cml0ZSBNU1JfSUEzMl9NQ0dfRVhUX0NUTC4KClNpZ25lZC1v ZmYtYnk6IEhhb3pob25nIFpoYW5nIDxoYW96aG9uZy56aGFuZ0BpbnRlbC5jb20+Ci0tLQpDYzog SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3 LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYvY3B1L21jaGVjay92bWNlLmMg ICAgICAgICB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIHhlbi9hcmNo L3g4Ni9kb21jdGwuYyAgICAgICAgICAgICAgICAgIHwgIDIgKysKIHhlbi9pbmNsdWRlL2FzbS14 ODYvbWNlLmggICAgICAgICAgICAgIHwgIDEgKwogeGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2 L2h2bS9zYXZlLmggfCAgMSArCiA0IGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvY3B1L21jaGVjay92bWNlLmMg Yi94ZW4vYXJjaC94ODYvY3B1L21jaGVjay92bWNlLmMKaW5kZXggMTM1NmY2MTFhYi4uMDYwZTJk MDU4MiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5jCisrKyBiL3hl bi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuYwpAQCAtOTEsNiArOTEsNyBAQCBpbnQgdm1jZV9y ZXN0b3JlX3ZjcHUoc3RydWN0IHZjcHUgKnYsIGNvbnN0IHN0cnVjdCBodm1fdm1jZV92Y3B1ICpj dHh0KQogICAgIHYtPmFyY2gudm1jZS5tY2dfY2FwID0gY3R4dC0+Y2FwczsKICAgICB2LT5hcmNo LnZtY2UuYmFua1swXS5tY2lfY3RsMiA9IGN0eHQtPm1jaV9jdGwyX2JhbmswOwogICAgIHYtPmFy Y2gudm1jZS5iYW5rWzFdLm1jaV9jdGwyID0gY3R4dC0+bWNpX2N0bDJfYmFuazE7CisgICAgdi0+ YXJjaC52bWNlLm1jZ19leHRfY3RsID0gY3R4dC0+bWNnX2V4dF9jdGw7CiAKICAgICByZXR1cm4g MDsKIH0KQEAgLTIwMCw2ICsyMDEsMjYgQEAgaW50IHZtY2VfcmRtc3IodWludDMyX3QgbXNyLCB1 aW50NjRfdCAqdmFsKQogICAgICAgICBtY2VfcHJpbnRrKE1DRV9WRVJCT1NFLCAiTUNFOiAlcHY6 IHJkIE1DR19DVEwgJSMiUFJJeDY0IlxuIiwgY3VyLCAqdmFsKTsKICAgICAgICAgYnJlYWs7CiAK KyAgICBjYXNlIE1TUl9JQTMyX01DR19FWFRfQ1RMOgorICAgICAgICAvKgorICAgICAgICAgKiBJ ZiBNQ0dfTE1DRV9QIGlzIHByZXNlbnQgaW4gZ3Vlc3QgTVNSX0lBMzJfTUNHX0NBUCwgdGhlIExN Q0UgYW5kIExPQ0sKKyAgICAgICAgICogYml0cyBhcmUgYWx3YXlzIHNldCBpbiBndWVzdCBNU1Jf SUEzMl9GRUFUVVJFX0NPTlRST0wgYnkgWGVuLCBzbyBpdAorICAgICAgICAgKiBkb2VzIG5vdCBu ZWVkIHRvIGNoZWNrIHRoZW0gaGVyZS4KKyAgICAgICAgICovCisgICAgICAgIGlmICggY3VyLT5h cmNoLnZtY2UubWNnX2NhcCAmIE1DR19MTUNFX1AgKQorICAgICAgICB7CisgICAgICAgICAgICAq dmFsID0gY3VyLT5hcmNoLnZtY2UubWNnX2V4dF9jdGw7CisgICAgICAgICAgICBtY2VfcHJpbnRr KE1DRV9WRVJCT1NFLCAiTUNFOiAlcHY6IHJkIE1DR19FWFRfQ1RMICUjIlBSSXg2NCJcbiIsCisg ICAgICAgICAgICAgICAgICAgICAgIGN1ciwgKnZhbCk7CisgICAgICAgIH0KKyAgICAgICAgZWxz ZQorICAgICAgICB7CisgICAgICAgICAgICByZXQgPSAtMTsKKyAgICAgICAgICAgIG1jZV9wcmlu dGsoTUNFX1ZFUkJPU0UsICJNQ0U6ICVwdjogcmQgTUNHX0VYVF9DVEwsIG5vdCBzdXBwb3J0ZWRc biIsCisgICAgICAgICAgICAgICAgICAgICAgIGN1cik7CisgICAgICAgIH0KKyAgICAgICAgYnJl YWs7CisKICAgICBkZWZhdWx0OgogICAgICAgICByZXQgPSBtY2VfYmFua19tc3IoY3VyLCBtc3Ip ID8gYmFua19tY2VfcmRtc3IoY3VyLCBtc3IsIHZhbCkgOiAwOwogICAgICAgICBicmVhazsKQEAg LTMwOSw2ICszMzAsMTYgQEAgaW50IHZtY2Vfd3Jtc3IodWludDMyX3QgbXNyLCB1aW50NjRfdCB2 YWwpCiAgICAgICAgIG1jZV9wcmludGsoTUNFX1ZFUkJPU0UsICJNQ0U6ICVwdjogTUNHX0NBUCBp cyByL29cbiIsIGN1cik7CiAgICAgICAgIGJyZWFrOwogCisgICAgY2FzZSBNU1JfSUEzMl9NQ0df RVhUX0NUTDoKKyAgICAgICAgaWYgKCAoY3VyLT5hcmNoLnZtY2UubWNnX2NhcCAmIE1DR19MTUNF X1ApICYmCisgICAgICAgICAgICAgISh2YWwgJiB+TUNHX0VYVF9DVExfTE1DRV9FTikgKQorICAg ICAgICAgICAgY3VyLT5hcmNoLnZtY2UubWNnX2V4dF9jdGwgPSB2YWw7CisgICAgICAgIGVsc2UK KyAgICAgICAgICAgIHJldCA9IC0xOworICAgICAgICBtY2VfcHJpbnRrKE1DRV9WRVJCT1NFLCAi TUNFOiAlcHY6IHdyIE1DR19FWFRfQ1RMICUiUFJJeDY0IiVzXG4iLAorICAgICAgICAgICAgICAg ICAgIGN1ciwgdmFsLCAocmV0ID09IC0xKSA/ICIsIG5vdCBzdXBwb3J0ZWQiIDogIiIpOworICAg ICAgICBicmVhazsKKwogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldCA9IG1jZV9iYW5rX21zcihj dXIsIG1zcikgPyBiYW5rX21jZV93cm1zcihjdXIsIG1zciwgdmFsKSA6IDA7CiAgICAgICAgIGJy ZWFrOwpAQCAtMzI3LDcgKzM1OCw4IEBAIHN0YXRpYyBpbnQgdm1jZV9zYXZlX3ZjcHVfY3R4dChz dHJ1Y3QgZG9tYWluICpkLCBodm1fZG9tYWluX2NvbnRleHRfdCAqaCkKICAgICAgICAgc3RydWN0 IGh2bV92bWNlX3ZjcHUgY3R4dCA9IHsKICAgICAgICAgICAgIC5jYXBzID0gdi0+YXJjaC52bWNl Lm1jZ19jYXAsCiAgICAgICAgICAgICAubWNpX2N0bDJfYmFuazAgPSB2LT5hcmNoLnZtY2UuYmFu a1swXS5tY2lfY3RsMiwKLSAgICAgICAgICAgIC5tY2lfY3RsMl9iYW5rMSA9IHYtPmFyY2gudm1j ZS5iYW5rWzFdLm1jaV9jdGwyCisgICAgICAgICAgICAubWNpX2N0bDJfYmFuazEgPSB2LT5hcmNo LnZtY2UuYmFua1sxXS5tY2lfY3RsMiwKKyAgICAgICAgICAgIC5tY2dfZXh0X2N0bCA9IHYtPmFy Y2gudm1jZS5tY2dfZXh0X2N0bCwKICAgICAgICAgfTsKIAogICAgICAgICBlcnIgPSBodm1fc2F2 ZV9lbnRyeShWTUNFX1ZDUFUsIHYtPnZjcHVfaWQsIGgsICZjdHh0KTsKZGlmZiAtLWdpdCBhL3hl bi9hcmNoL3g4Ni9kb21jdGwuYyBiL3hlbi9hcmNoL3g4Ni9kb21jdGwuYwppbmRleCA1Y2QyYWY3 NmJiLi4wZTkwMWU3Mjk4IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvZG9tY3RsLmMKKysrIGIv eGVuL2FyY2gveDg2L2RvbWN0bC5jCkBAIC0zMTIsNiArMzEyLDcgQEAgc3RhdGljIGludCB2Y3B1 X3NldF92bWNlKHN0cnVjdCB2Y3B1ICp2LAogICAgICAqLwogICAgIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBpbnQgdmFsaWRfdm1jZV9zaXplW10gPSB7CiAgICAgICAgIHNpemVvZihldmMtPnZtY2Up LAorICAgICAgICBzaXplb2YoZXZjLT52bWNlKSAtIHNpemVvZihldmMtPnZtY2UubWNnX2V4dF9j dGwpLAogICAgICAgICBzaXplb2YoZXZjLT5tY2dfY2FwKSwKICAgICAgICAgMCwKICAgICB9OwpA QCAtOTA0LDYgKzkwNSw3IEBAIGxvbmcgYXJjaF9kb19kb21jdGwoCiAgICAgICAgICAgICBldmMt PnZtY2UuY2FwcyA9IHYtPmFyY2gudm1jZS5tY2dfY2FwOwogICAgICAgICAgICAgZXZjLT52bWNl Lm1jaV9jdGwyX2JhbmswID0gdi0+YXJjaC52bWNlLmJhbmtbMF0ubWNpX2N0bDI7CiAgICAgICAg ICAgICBldmMtPnZtY2UubWNpX2N0bDJfYmFuazEgPSB2LT5hcmNoLnZtY2UuYmFua1sxXS5tY2lf Y3RsMjsKKyAgICAgICAgICAgIGV2Yy0+dm1jZS5tY2dfZXh0X2N0bCA9IHYtPmFyY2gudm1jZS5t Y2dfZXh0X2N0bDsKIAogICAgICAgICAgICAgcmV0ID0gMDsKICAgICAgICAgICAgIHZjcHVfdW5w YXVzZSh2KTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbWNlLmggYi94ZW4vaW5j bHVkZS9hc20teDg2L21jZS5oCmluZGV4IDU2YWQxZjkyZGQuLjM1Zjk5NjI2MzggMTAwNjQ0Ci0t LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbWNlLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9t Y2UuaApAQCAtMjcsNiArMjcsNyBAQCBzdHJ1Y3Qgdm1jZV9iYW5rIHsKIHN0cnVjdCB2bWNlIHsK ICAgICB1aW50NjRfdCBtY2dfY2FwOwogICAgIHVpbnQ2NF90IG1jZ19zdGF0dXM7CisgICAgdWlu dDY0X3QgbWNnX2V4dF9jdGw7CiAgICAgc3BpbmxvY2tfdCBsb2NrOwogICAgIHN0cnVjdCB2bWNl X2JhbmsgYmFua1tHVUVTVF9NQ19CQU5LX05VTV07CiB9OwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1 ZGUvcHVibGljL2FyY2gteDg2L2h2bS9zYXZlLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14 ODYvaHZtL3NhdmUuaAppbmRleCA4MTY5NzNiOWMyLi5mZDdiZjNmYjM4IDEwMDY0NAotLS0gYS94 ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvaHZtL3NhdmUuaAorKysgYi94ZW4vaW5jbHVkZS9w dWJsaWMvYXJjaC14ODYvaHZtL3NhdmUuaApAQCAtNjEwLDYgKzYxMCw3IEBAIHN0cnVjdCBodm1f dm1jZV92Y3B1IHsKICAgICB1aW50NjRfdCBjYXBzOwogICAgIHVpbnQ2NF90IG1jaV9jdGwyX2Jh bmswOwogICAgIHVpbnQ2NF90IG1jaV9jdGwyX2JhbmsxOworICAgIHVpbnQ2NF90IG1jZ19leHRf Y3RsOwogfTsKIAogREVDTEFSRV9IVk1fU0FWRV9UWVBFKFZNQ0VfVkNQVSwgMTgsIHN0cnVjdCBo dm1fdm1jZV92Y3B1KTsKLS0gCjIuMTEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3Rz Lnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=