From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH v3 2/9] x86/mce_intel: detect and enable LMCE on Intel host Date: Thu, 30 Mar 2017 14:19:56 +0800 Message-ID: <20170330062003.9119-3-haozhong.zhang@intel.com> References: <20170330062003.9119-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: <20170330062003.9119-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 RW5hYmxlIExNQ0UgaWYgaXQncyBzdXBwb3J0ZWQgYnkgdGhlIGhvc3QgQ1BVLiBJZiBYZW4gYm9v dCBwYXJhbWV0ZXIKIm1jZV9mYiA9IDEiIGlzIHByZXNlbnQsIExNQ0Ugd2lsbCBiZSBkaXNhYmxl ZCBmb3JjaWJseS4KClNpZ25lZC1vZmYtYnk6IEhhb3pob25nIFpoYW5nIDxoYW96aG9uZy56aGFu Z0BpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ Ci0tLQpDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3Bl ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KCkNoYW5nZXMgaW4gdjM6CiAqIE1ha2UgbG1j ZV9zdXBwb3J0IHN0YXRpYy4KLS0tCiB4ZW4vYXJjaC94ODYvY3B1L21jaGVjay9tY2VfaW50ZWwu YyB8IDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KIHhlbi9hcmNoL3g4 Ni9jcHUvbWNoZWNrL3g4Nl9tY2EuaCAgIHwgIDUgKysrKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9t c3ItaW5kZXguaCAgICAgfCAgMiArKwogMyBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRpb25zKCsp LCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL21j ZV9pbnRlbC5jIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svbWNlX2ludGVsLmMKaW5kZXggZmRm NTdjZS4uM2M1NzA1MiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svbWNlX2lu dGVsLmMKKysrIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svbWNlX2ludGVsLmMKQEAgLTI5LDYg KzI5LDkgQEAgYm9vbGVhbl9wYXJhbSgibWNlX2ZiIiwgbWNlX2ZvcmNlX2Jyb2FkY2FzdCk7CiAK IHN0YXRpYyBpbnQgX19yZWFkX21vc3RseSBucl9pbnRlbF9leHRfbXNyczsKIAorLyogSWYgbWNl X2ZvcmNlX2Jyb2FkY2FzdCA9PSAxLCBsbWNlX3N1cHBvcnQgd2lsbCBiZSBkaXNhYmxlZCBmb3Jj aWJseS4gKi8KK3N0YXRpYyBib29sIF9fcmVhZF9tb3N0bHkgbG1jZV9zdXBwb3J0OworCiAvKiBJ bnRlbCBTRE0gZGVmaW5lIGJpdDE1fmJpdDAgb2YgSUEzMl9NQ2lfU1RBVFVTIGFzIHRoZSBNQyBl cnJvciBjb2RlICovCiAjZGVmaW5lIElOVEVMX01DQ09EX01BU0sgMHhGRkZGCiAKQEAgLTY5OCwx MCArNzAxLDM0IEBAIHN0YXRpYyBib29sIG1jZV9pc19icm9hZGNhc3Qoc3RydWN0IGNwdWluZm9f eDg2ICpjKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAorc3RhdGljIGJvb2wgaW50ZWxfZW5hYmxl X2xtY2Uodm9pZCkKK3sKKyAgICB1aW50NjRfdCBtc3JfY29udGVudDsKKworICAgIC8qCisgICAg ICogU2VjdGlvbiAiRW5hYmxpbmcgTG9jYWwgTWFjaGluZSBDaGVjayIgaW4gSW50ZWwgU0RNIFZv bCAzCisgICAgICogcmVxdWlyZXMgc29mdHdhcmUgbXVzdCBlbnN1cmUgdGhlIExPQ0sgYml0IGFu ZCBMTUNFX09OIGJpdAorICAgICAqIG9mIE1TUl9JQTMyX0ZFQVRVUkVfQ09OVFJPTCBhcmUgc2V0 IGJlZm9yZSBzZXR0aW5nCisgICAgICogTVNSX0lBMzJfTUNHX0VYVF9DVEwuTE1DRV9FTi4KKyAg ICAgKi8KKworICAgIGlmICggcmRtc3Jfc2FmZShNU1JfSUEzMl9GRUFUVVJFX0NPTlRST0wsIG1z cl9jb250ZW50KSApCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICggKG1zcl9jb250 ZW50ICYgSUEzMl9GRUFUVVJFX0NPTlRST0xfTE9DSykgJiYKKyAgICAgICAgIChtc3JfY29udGVu dCAmIElBMzJfRkVBVFVSRV9DT05UUk9MX0xNQ0VfT04pICkKKyAgICB7CisgICAgICAgIHdybXNy bChNU1JfSUEzMl9NQ0dfRVhUX0NUTCwgTUNHX0VYVF9DVExfTE1DRV9FTik7CisgICAgICAgIHJl dHVybiB0cnVlOworICAgIH0KKworICAgIHJldHVybiBmYWxzZTsKK30KKwogLyogQ2hlY2sgYW5k IGluaXQgTUNBICovCiBzdGF0aWMgdm9pZCBpbnRlbF9pbml0X21jYShzdHJ1Y3QgY3B1aW5mb194 ODYgKmMpCiB7Ci0gICAgYm9vbCBicm9hZGNhc3QsIGNtY2kgPSBmYWxzZSwgc2VyID0gZmFsc2U7 CisgICAgYm9vbCBicm9hZGNhc3QsIGNtY2kgPSBmYWxzZSwgc2VyID0gZmFsc2UsIGxtY2UgPSBm YWxzZTsKICAgICBpbnQgZXh0X251bSA9IDAsIGZpcnN0OwogICAgIHVpbnQ2NF90IG1zcl9jb250 ZW50OwogCkBAIC03MjEsMzMgKzc0OCw0MCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9pbml0X21jYShz dHJ1Y3QgY3B1aW5mb194ODYgKmMpCiAKICAgICBmaXJzdCA9IG1jZV9maXJzdGJhbmsoYyk7CiAK KyAgICBpZiAoIW1jZV9mb3JjZV9icm9hZGNhc3QgJiYgKG1zcl9jb250ZW50ICYgTUNHX0xNQ0Vf UCkpCisgICAgICAgIGxtY2UgPSBpbnRlbF9lbmFibGVfbG1jZSgpOworCiAjZGVmaW5lIENBUChl bmFibGVkLCBuYW1lKSAoKGVuYWJsZWQpID8gIiwgIiBuYW1lIDogIiIpCiAgICAgaWYgKHNtcF9w cm9jZXNzb3JfaWQoKSA9PSAwKQogICAgIHsKICAgICAgICAgZHByaW50ayhYRU5MT0dfSU5GTywK LSAgICAgICAgICAgICAgICAiTUNBIGNhcGFiaWxpdHk6IGZpcnN0YmFuayAlZCwgJWQgZXh0IE1T UnMlcyVzJXNcbiIsCisgICAgICAgICAgICAgICAgIk1DQSBDYXBhYmlsaXR5OiBmaXJzdGJhbmsg JWQsIGV4dGVuZGVkIE1DRSBNU1IgJWQlcyVzJXMlc1xuIiwKICAgICAgICAgICAgICAgICBmaXJz dCwgZXh0X251bSwKICAgICAgICAgICAgICAgICBDQVAoYnJvYWRjYXN0LCAiQkNBU1QiKSwKICAg ICAgICAgICAgICAgICBDQVAoc2VyLCAiU0VSIiksCi0gICAgICAgICAgICAgICAgQ0FQKGNtY2ks ICJDTUNJIikpOworICAgICAgICAgICAgICAgIENBUChjbWNpLCAiQ01DSSIpLAorICAgICAgICAg ICAgICAgIENBUChsbWNlLCAiTE1DRSIpKTsKIAogICAgICAgICBtY2VfYnJvYWRjYXN0ID0gYnJv YWRjYXN0OwogICAgICAgICBjbWNpX3N1cHBvcnQgPSBjbWNpOwogICAgICAgICBzZXJfc3VwcG9y dCA9IHNlcjsKKyAgICAgICAgbG1jZV9zdXBwb3J0ID0gbG1jZTsKICAgICAgICAgbnJfaW50ZWxf ZXh0X21zcnMgPSBleHRfbnVtOwogICAgICAgICBmaXJzdGJhbmsgPSBmaXJzdDsKICAgICB9CiAg ICAgZWxzZSBpZiAoY21jaSAhPSBjbWNpX3N1cHBvcnQgfHwgc2VyICE9IHNlcl9zdXBwb3J0IHx8 CiAgICAgICAgICAgICAgYnJvYWRjYXN0ICE9IG1jZV9icm9hZGNhc3QgfHwKLSAgICAgICAgICAg ICBmaXJzdCAhPSBmaXJzdGJhbmsgfHwgZXh0X251bSAhPSBucl9pbnRlbF9leHRfbXNycykKKyAg ICAgICAgICAgICBmaXJzdCAhPSBmaXJzdGJhbmsgfHwgZXh0X251bSAhPSBucl9pbnRlbF9leHRf bXNycyB8fAorICAgICAgICAgICAgIGxtY2UgIT0gbG1jZV9zdXBwb3J0KQogICAgICAgICBkcHJp bnRrKFhFTkxPR19XQVJOSU5HLAogICAgICAgICAgICAgICAgICJDUFUldSBoYXMgZGlmZmVyZW50 IE1DQSBjYXBhYmlsaXR5ICIKLSAgICAgICAgICAgICAgICAiKGZpcnN0YmFuayAlZCwgJWQgZXh0 IE1TUnMlcyVzJXMpIgorICAgICAgICAgICAgICAgICIoZmlyc3RiYW5rICVkLCBleHRlbmRlZCBN Q0UgTVNSICVkJXMlcyVzJXMpIgogICAgICAgICAgICAgICAgICIgdGhhbiBCU1AsIG1heSBjYXVz ZSB1bmRldGVybWluZWQgcmVzdWx0ISEhXG4iLAogICAgICAgICAgICAgICAgIHNtcF9wcm9jZXNz b3JfaWQoKSwgZmlyc3QsIGV4dF9udW0sCiAgICAgICAgICAgICAgICAgQ0FQKGJyb2FkY2FzdCwg IkJDQVNUIiksCiAgICAgICAgICAgICAgICAgQ0FQKHNlciwgIlNFUiIpLAotICAgICAgICAgICAg ICAgIENBUChjbWNpLCAiQ01DSSIpKTsKKyAgICAgICAgICAgICAgICBDQVAoY21jaSwgIkNNQ0ki KSwKKyAgICAgICAgICAgICAgICBDQVAobG1jZSwgIkxNQ0UiKSk7CiAjdW5kZWYgQ0FQCiB9CiAK ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3g4Nl9tY2EuaCBiL3hlbi9hcmNo L3g4Ni9jcHUvbWNoZWNrL3g4Nl9tY2EuaAppbmRleCBkZTAzZjgyLi4wZjg3YmNmIDEwMDY0NAot LS0gYS94ZW4vYXJjaC94ODYvY3B1L21jaGVjay94ODZfbWNhLmgKKysrIGIveGVuL2FyY2gveDg2 L2NwdS9tY2hlY2sveDg2X21jYS5oCkBAIC0zNiw2ICszNiw3IEBACiAjZGVmaW5lIE1DR19URVNf UCAgICAgICAgICAgICAgICgxVUxMPDwxMSkgLyogSW50ZWwgc3BlY2lmaWMgKi8KICNkZWZpbmUg TUNHX0VYVF9DTlQgICAgICAgICAgICAgMTYgICAgICAgICAvKiBJbnRlbCBzcGVjaWZpYyAqLwog I2RlZmluZSBNQ0dfU0VSX1AgICAgICAgICAgICAgICAoMVVMTDw8MjQpIC8qIEludGVsIHNwZWNp ZmljICovCisjZGVmaW5lIE1DR19MTUNFX1AgICAgICAgICAgICAgICgxVUxMPDwyNykgLyogSW50 ZWwgc3BlY2lmaWMgKi8KIC8qIE90aGVyIGJpdHMgYXJlIHJlc2VydmVkICovCiAKIC8qIEJpdGZp ZWxkIG9mIHRoZSBNU1JfSUEzMl9NQ0dfU1RBVFVTIHJlZ2lzdGVyICovCkBAIC00Niw2ICs0Nywx MCBAQAogLyogQml0cyAzLTYzIGFyZSByZXNlcnZlZCBvbiBDUFUgbm90IHN1cHBvcnRpbmcgTE1D RSAqLwogLyogQml0cyA0LTYzIGFyZSByZXNlcnZlZCBvbiBDUFUgc3VwcG9ydGluZyBMTUNFICov CiAKKy8qIEJpdGZpZWxkIG9mIE1TUl9JQTMyX01DR19FWFRfQ1RMIHJlZ2lzdGVyIChJbnRlbCBT cGVjaWZpYykgKi8KKyNkZWZpbmUgTUNHX0VYVF9DVExfTE1DRV9FTiAgICAgKDFVTEw8PDApCisv KiBPdGhlciBiaXRzIGFyZSByZXNlcnZlZCAqLworCiAvKiBCaXRmaWVsZCBvZiBNU1JfSzhfTUNp X1NUQVRVUyByZWdpc3RlcnMgKi8KIC8qIE1DQSBlcnJvciBjb2RlICovCiAjZGVmaW5lIE1DaV9T VEFUVVNfTUNBICAgICAgICAgIDB4MDAwMDAwMDAwMDAwZmZmZlVMTApkaWZmIC0tZ2l0IGEveGVu L2luY2x1ZGUvYXNtLXg4Ni9tc3ItaW5kZXguaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvbXNyLWlu ZGV4LmgKaW5kZXggNzcxZTc1MC4uNzU2YjIzZCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNt LXg4Ni9tc3ItaW5kZXguaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L21zci1pbmRleC5oCkBA IC01MSw2ICs1MSw3IEBACiAjZGVmaW5lIE1TUl9JQTMyX01DR19DQVAJCTB4MDAwMDAxNzkKICNk ZWZpbmUgTVNSX0lBMzJfTUNHX1NUQVRVUwkJMHgwMDAwMDE3YQogI2RlZmluZSBNU1JfSUEzMl9N Q0dfQ1RMCQkweDAwMDAwMTdiCisjZGVmaW5lIE1TUl9JQTMyX01DR19FWFRfQ1RMCTB4MDAwMDA0 ZDAKIAogI2RlZmluZSBNU1JfSUEzMl9QRUJTX0VOQUJMRQkJMHgwMDAwMDNmMQogI2RlZmluZSBN U1JfSUEzMl9EU19BUkVBCQkweDAwMDAwNjAwCkBAIC0yOTYsNiArMjk3LDcgQEAKICNkZWZpbmUg SUEzMl9GRUFUVVJFX0NPTlRST0xfU0VOVEVSX1BBUkFNX0NUTCAgICAgICAgIDB4N2YwMAogI2Rl ZmluZSBJQTMyX0ZFQVRVUkVfQ09OVFJPTF9FTkFCTEVfU0VOVEVSICAgICAgICAgICAgMHg4MDAw CiAjZGVmaW5lIElBMzJfRkVBVFVSRV9DT05UUk9MX1NHWF9FTkFCTEUgICAgICAgICAgICAgICAw eDQwMDAwCisjZGVmaW5lIElBMzJfRkVBVFVSRV9DT05UUk9MX0xNQ0VfT04gICAgICAgICAgICAg ICAgICAweDEwMDAwMAogCiAjZGVmaW5lIE1TUl9JQTMyX1RTQ19BREpVU1QJCTB4MDAwMDAwM2IK IAotLSAKMi4xMC4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRw czovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==