From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH v2 07/12] x86/vmce: emulate MSR_IA32_MCG_EXT_CTL Date: Fri, 17 Mar 2017 14:46:09 +0800 Message-ID: <20170317064614.23539-8-haozhong.zhang@intel.com> References: <20170317064614.23539-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: <20170317064614.23539-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 LmNvb3BlcjNAY2l0cml4LmNvbT4KCkNoYW5nZXMgaW4gdjI6CiAqIFJlbW92ZSBzdHJheSBibGFu ayBpbiB0aGUgY29kZSBjb21tZW50LgogKiBNb3ZlIHRoZSBzdWNjZXNzIGJyYW5jaCB0byB0aGUg ZnJvbnQgd2hlbiBoYW5kbGluZyBNU1JfSUEzMl9NQ0dfRVhUX0NUTC4KICogTW92ZSBsbWNlX2Vu YWJsZWQgYmVmb3JlIGJhbmtbXSBpbiBzdHJ1Y3Qgdm1jZS4KICogSW5jcmVhc2UgWEVOX0RPTUNU TF9JTlRFUkZBQ0VfVkVSU0lPTiBieSAxLgotLS0KIHhlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3Zt Y2UuYyAgICAgICAgIHwgMzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogeGVu L2luY2x1ZGUvYXNtLXg4Ni9tY2UuaCAgICAgICAgICAgICAgfCAgMSArCiB4ZW4vaW5jbHVkZS9w dWJsaWMvYXJjaC14ODYvaHZtL3NhdmUuaCB8ICAyICsrCiB4ZW4vaW5jbHVkZS9wdWJsaWMvZG9t Y3RsLmggICAgICAgICAgICB8ICAyICstCiA0IGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdS9tY2hlY2sv dm1jZS5jIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5jCmluZGV4IDA1OGJiOTEuLmMz OTZkMDcgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuYworKysgYi94 ZW4vYXJjaC94ODYvY3B1L21jaGVjay92bWNlLmMKQEAgLTkwLDYgKzkwLDcgQEAgaW50IHZtY2Vf cmVzdG9yZV92Y3B1KHN0cnVjdCB2Y3B1ICp2LCBjb25zdCBzdHJ1Y3QgaHZtX3ZtY2VfdmNwdSAq Y3R4dCkKICAgICB2LT5hcmNoLnZtY2UubWNnX2NhcCA9IGN0eHQtPmNhcHM7CiAgICAgdi0+YXJj aC52bWNlLmJhbmtbMF0ubWNpX2N0bDIgPSBjdHh0LT5tY2lfY3RsMl9iYW5rMDsKICAgICB2LT5h cmNoLnZtY2UuYmFua1sxXS5tY2lfY3RsMiA9IGN0eHQtPm1jaV9jdGwyX2JhbmsxOworICAgIHYt PmFyY2gudm1jZS5sbWNlX2VuYWJsZWQgPSBjdHh0LT5sbWNlX2VuYWJsZWQ7CiAKICAgICByZXR1 cm4gMDsKIH0KQEAgLTE5OSw2ICsyMDAsMjYgQEAgaW50IHZtY2VfcmRtc3IodWludDMyX3QgbXNy LCB1aW50NjRfdCAqdmFsKQogICAgICAgICBtY2VfcHJpbnRrKE1DRV9WRVJCT1NFLCAiTUNFOiAl cHY6IHJkIE1DR19DVEwgJSMiUFJJeDY0IlxuIiwgY3VyLCAqdmFsKTsKICAgICAgICAgYnJlYWs7 CiAKKyAgICBjYXNlIE1TUl9JQTMyX01DR19FWFRfQ1RMOgorICAgICAgICAvKgorICAgICAgICAg KiBJZiBNQ0dfTE1DRV9QIGlzIHByZXNlbnQgaW4gZ3Vlc3QgTVNSX0lBMzJfTUNHX0NBUCwgdGhl IExNQ0UgYW5kIExPQ0sKKyAgICAgICAgICogYml0cyBhcmUgYWx3YXlzIHNldCBpbiBndWVzdCBN U1JfSUEzMl9GRUFUVVJFX0NPTlRST0wgYnkgWGVuLCBzbyBpdAorICAgICAgICAgKiBkb2VzIG5v dCBuZWVkIHRvIGNoZWNrIHRoZW0gaGVyZS4KKyAgICAgICAgICovCisgICAgICAgIGlmICggY3Vy LT5hcmNoLnZtY2UubWNnX2NhcCAmIE1DR19MTUNFX1AgKQorICAgICAgICB7CisgICAgICAgICAg ICAqdmFsID0gY3VyLT5hcmNoLnZtY2UubG1jZV9lbmFibGVkID8gTUNHX0VYVF9DVExfTE1DRV9F TiA6IDA7CisgICAgICAgICAgICBtY2VfcHJpbnRrKE1DRV9WRVJCT1NFLCAiTUNFOiAlcHY6IHJk IE1DR19FWFRfQ1RMICUjIlBSSXg2NCJcbiIsCisgICAgICAgICAgICAgICAgICAgICAgIGN1ciwg KnZhbCk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICBy ZXQgPSAtMTsKKyAgICAgICAgICAgIG1jZV9wcmludGsoTUNFX1ZFUkJPU0UsICJNQ0U6ICVwdjog cmQgTUNHX0VYVF9DVEwsIG5vdCBzdXBwb3J0ZWRcbiIsCisgICAgICAgICAgICAgICAgICAgICAg IGN1cik7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisKICAgICBkZWZhdWx0OgogICAgICAg ICByZXQgPSBtY2VfYmFua19tc3IoY3VyLCBtc3IpID8gYmFua19tY2VfcmRtc3IoY3VyLCBtc3Is IHZhbCkgOiAwOwogICAgICAgICBicmVhazsKQEAgLTMwOCw2ICszMjksMTYgQEAgaW50IHZtY2Vf d3Jtc3IodWludDMyX3QgbXNyLCB1aW50NjRfdCB2YWwpCiAgICAgICAgIG1jZV9wcmludGsoTUNF X1ZFUkJPU0UsICJNQ0U6ICVwdjogTUNHX0NBUCBpcyByL29cbiIsIGN1cik7CiAgICAgICAgIGJy ZWFrOwogCisgICAgY2FzZSBNU1JfSUEzMl9NQ0dfRVhUX0NUTDoKKyAgICAgICAgaWYgKCAoY3Vy LT5hcmNoLnZtY2UubWNnX2NhcCAmIE1DR19MTUNFX1ApICYmCisgICAgICAgICAgICAgISh2YWwg JiB+TUNHX0VYVF9DVExfTE1DRV9FTikgKQorICAgICAgICAgICAgY3VyLT5hcmNoLnZtY2UubG1j ZV9lbmFibGVkID0gKHZhbCAmIE1DR19FWFRfQ1RMX0xNQ0VfRU4pOworICAgICAgICBlbHNlCisg ICAgICAgICAgICByZXQgPSAtMTsKKyAgICAgICAgbWNlX3ByaW50ayhNQ0VfVkVSQk9TRSwgIk1D RTogJXB2OiB3ciBNQ0dfRVhUX0NUTCAlIlBSSXg2NCIlc1xuIiwKKyAgICAgICAgICAgICAgICAg ICBjdXIsIHZhbCwgKHJldCA9PSAtMSkgPyAiLCBub3Qgc3VwcG9ydGVkIiA6ICIiKTsKKyAgICAg ICAgYnJlYWs7CisKICAgICBkZWZhdWx0OgogICAgICAgICByZXQgPSBtY2VfYmFua19tc3IoY3Vy LCBtc3IpID8gYmFua19tY2Vfd3Jtc3IoY3VyLCBtc3IsIHZhbCkgOiAwOwogICAgICAgICBicmVh azsKQEAgLTMyNiw3ICszNTcsOCBAQCBzdGF0aWMgaW50IHZtY2Vfc2F2ZV92Y3B1X2N0eHQoc3Ry dWN0IGRvbWFpbiAqZCwgaHZtX2RvbWFpbl9jb250ZXh0X3QgKmgpCiAgICAgICAgIHN0cnVjdCBo dm1fdm1jZV92Y3B1IGN0eHQgPSB7CiAgICAgICAgICAgICAuY2FwcyA9IHYtPmFyY2gudm1jZS5t Y2dfY2FwLAogICAgICAgICAgICAgLm1jaV9jdGwyX2JhbmswID0gdi0+YXJjaC52bWNlLmJhbmtb MF0ubWNpX2N0bDIsCi0gICAgICAgICAgICAubWNpX2N0bDJfYmFuazEgPSB2LT5hcmNoLnZtY2Uu YmFua1sxXS5tY2lfY3RsMgorICAgICAgICAgICAgLm1jaV9jdGwyX2JhbmsxID0gdi0+YXJjaC52 bWNlLmJhbmtbMV0ubWNpX2N0bDIsCisgICAgICAgICAgICAubG1jZV9lbmFibGVkID0gdi0+YXJj aC52bWNlLmxtY2VfZW5hYmxlZCwKICAgICAgICAgfTsKIAogICAgICAgICBlcnIgPSBodm1fc2F2 ZV9lbnRyeShWTUNFX1ZDUFUsIHYtPnZjcHVfaWQsIGgsICZjdHh0KTsKZGlmZiAtLWdpdCBhL3hl bi9pbmNsdWRlL2FzbS14ODYvbWNlLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L21jZS5oCmluZGV4 IDZiODI3ZWYuLmRlZTY2YjMgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbWNlLmgK KysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tY2UuaApAQCAtMjgsNiArMjgsNyBAQCBzdHJ1Y3Qg dm1jZSB7CiAgICAgdWludDY0X3QgbWNnX2NhcDsKICAgICB1aW50NjRfdCBtY2dfc3RhdHVzOwog ICAgIHNwaW5sb2NrX3QgbG9jazsKKyAgICBib29sIGxtY2VfZW5hYmxlZDsgLyogZ3Vlc3QgTVNS X0lBMzJfTUNHX0VYVF9DVEwuTE1DRV9FTiAoYml0IDApICovCiAgICAgc3RydWN0IHZtY2VfYmFu ayBiYW5rW0dVRVNUX01DX0JBTktfTlVNXTsKIH07CiAKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRl L3B1YmxpYy9hcmNoLXg4Ni9odm0vc2F2ZS5oIGIveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2 L2h2bS9zYXZlLmgKaW5kZXggNDE5YTNiMi4uNzYzNzRmYyAxMDA2NDQKLS0tIGEveGVuL2luY2x1 ZGUvcHVibGljL2FyY2gteDg2L2h2bS9zYXZlLmgKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2Fy Y2gteDg2L2h2bS9zYXZlLmgKQEAgLTU5OSw2ICs1OTksOCBAQCBzdHJ1Y3QgaHZtX3ZtY2VfdmNw dSB7CiAgICAgdWludDY0X3QgY2FwczsKICAgICB1aW50NjRfdCBtY2lfY3RsMl9iYW5rMDsKICAg ICB1aW50NjRfdCBtY2lfY3RsMl9iYW5rMTsKKyAgICB1aW50OF90ICBsbWNlX2VuYWJsZWQ7Cisg ICAgdWludDhfdCAgcGFkWzddOwogfTsKIAogREVDTEFSRV9IVk1fU0FWRV9UWVBFKFZNQ0VfVkNQ VSwgMTgsIHN0cnVjdCBodm1fdm1jZV92Y3B1KTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3B1 YmxpYy9kb21jdGwuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwuaAppbmRleCA4NWNiYjdj Li4yODQyNTg5IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMvZG9tY3RsLmgKKysrIGIv eGVuL2luY2x1ZGUvcHVibGljL2RvbWN0bC5oCkBAIC0zNyw3ICszNyw3IEBACiAjaW5jbHVkZSAi aHZtL3NhdmUuaCIKICNpbmNsdWRlICJtZW1vcnkuaCIKIAotI2RlZmluZSBYRU5fRE9NQ1RMX0lO VEVSRkFDRV9WRVJTSU9OIDB4MDAwMDAwMGMKKyNkZWZpbmUgWEVOX0RPTUNUTF9JTlRFUkZBQ0Vf VkVSU0lPTiAweDAwMDAwMDBkCiAKIC8qCiAgKiBOQi4geGVuX2RvbWN0bC5kb21haW4gaXMgYW4g SU4vT1VUIHBhcmFtZXRlciBmb3IgdGhpcyBvcGVyYXRpb24uCi0tIAoyLjEwLjEKCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGlu ZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4t ZGV2ZWwK