From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH v5 04/11] x86/mce_intel: detect and enable LMCE on Intel host Date: Mon, 3 Jul 2017 11:46:19 +0800 Message-ID: <20170703034626.9429-5-haozhong.zhang@intel.com> References: <20170703034626.9429-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: <20170703034626.9429-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 ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYvY3B1L21jaGVj ay9tY2VfaW50ZWwuYyB8IDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0K IHhlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3g4Nl9tY2EuaCAgIHwgIDUgKysrKwogeGVuL2luY2x1 ZGUvYXNtLXg4Ni9tc3ItaW5kZXguaCAgICAgfCAgMiArKwogMyBmaWxlcyBjaGFuZ2VkLCA0NyBp bnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9j cHUvbWNoZWNrL21jZV9pbnRlbC5jIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svbWNlX2ludGVs LmMKaW5kZXggNGU5NzZjNDVmOC4uMDIwYjAyZGVmZiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2 L2NwdS9tY2hlY2svbWNlX2ludGVsLmMKKysrIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svbWNl X2ludGVsLmMKQEAgLTI5LDYgKzI5LDkgQEAgYm9vbGVhbl9wYXJhbSgibWNlX2ZiIiwgbWNlX2Zv cmNlX2Jyb2FkY2FzdCk7CiAKIHN0YXRpYyBpbnQgX19yZWFkX21vc3RseSBucl9pbnRlbF9leHRf bXNyczsKIAorLyogSWYgbWNlX2ZvcmNlX2Jyb2FkY2FzdCA9PSAxLCBsbWNlX3N1cHBvcnQgd2ls bCBiZSBkaXNhYmxlZCBmb3JjaWJseS4gKi8KK3N0YXRpYyBib29sIF9fcmVhZF9tb3N0bHkgbG1j ZV9zdXBwb3J0OworCiAvKiBJbnRlbCBTRE0gZGVmaW5lIGJpdDE1fmJpdDAgb2YgSUEzMl9NQ2lf U1RBVFVTIGFzIHRoZSBNQyBlcnJvciBjb2RlICovCiAjZGVmaW5lIElOVEVMX01DQ09EX01BU0sg MHhGRkZGCiAKQEAgLTY5OCwxMCArNzAxLDM0IEBAIHN0YXRpYyBib29sIG1jZV9pc19icm9hZGNh c3Qoc3RydWN0IGNwdWluZm9feDg2ICpjKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAorc3RhdGlj IGJvb2wgaW50ZWxfZW5hYmxlX2xtY2Uodm9pZCkKK3sKKyAgICB1aW50NjRfdCBtc3JfY29udGVu dDsKKworICAgIC8qCisgICAgICogU2VjdGlvbiAiRW5hYmxpbmcgTG9jYWwgTWFjaGluZSBDaGVj ayIgaW4gSW50ZWwgU0RNIFZvbCAzCisgICAgICogcmVxdWlyZXMgc29mdHdhcmUgbXVzdCBlbnN1 cmUgdGhlIExPQ0sgYml0IGFuZCBMTUNFX09OIGJpdAorICAgICAqIG9mIE1TUl9JQTMyX0ZFQVRV UkVfQ09OVFJPTCBhcmUgc2V0IGJlZm9yZSBzZXR0aW5nCisgICAgICogTVNSX0lBMzJfTUNHX0VY VF9DVEwuTE1DRV9FTi4KKyAgICAgKi8KKworICAgIGlmICggcmRtc3Jfc2FmZShNU1JfSUEzMl9G RUFUVVJFX0NPTlRST0wsIG1zcl9jb250ZW50KSApCisgICAgICAgIHJldHVybiBmYWxzZTsKKwor ICAgIGlmICggKG1zcl9jb250ZW50ICYgSUEzMl9GRUFUVVJFX0NPTlRST0xfTE9DSykgJiYKKyAg ICAgICAgIChtc3JfY29udGVudCAmIElBMzJfRkVBVFVSRV9DT05UUk9MX0xNQ0VfT04pICkKKyAg ICB7CisgICAgICAgIHdybXNybChNU1JfSUEzMl9NQ0dfRVhUX0NUTCwgTUNHX0VYVF9DVExfTE1D RV9FTik7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIHJldHVybiBmYWxzZTsK K30KKwogLyogQ2hlY2sgYW5kIGluaXQgTUNBICovCiBzdGF0aWMgdm9pZCBpbnRlbF9pbml0X21j YShzdHJ1Y3QgY3B1aW5mb194ODYgKmMpCiB7Ci0gICAgYm9vbCBicm9hZGNhc3QsIGNtY2kgPSBm YWxzZSwgc2VyID0gZmFsc2U7CisgICAgYm9vbCBicm9hZGNhc3QsIGNtY2kgPSBmYWxzZSwgc2Vy ID0gZmFsc2UsIGxtY2UgPSBmYWxzZTsKICAgICBpbnQgZXh0X251bSA9IDAsIGZpcnN0OwogICAg IHVpbnQ2NF90IG1zcl9jb250ZW50OwogCkBAIC03MjEsMzMgKzc0OCw0MCBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9pbml0X21jYShzdHJ1Y3QgY3B1aW5mb194ODYgKmMpCiAKICAgICBmaXJzdCA9IG1j ZV9maXJzdGJhbmsoYyk7CiAKKyAgICBpZiAoIW1jZV9mb3JjZV9icm9hZGNhc3QgJiYgKG1zcl9j b250ZW50ICYgTUNHX0xNQ0VfUCkpCisgICAgICAgIGxtY2UgPSBpbnRlbF9lbmFibGVfbG1jZSgp OworCiAjZGVmaW5lIENBUChlbmFibGVkLCBuYW1lKSAoKGVuYWJsZWQpID8gIiwgIiBuYW1lIDog IiIpCiAgICAgaWYgKHNtcF9wcm9jZXNzb3JfaWQoKSA9PSAwKQogICAgIHsKICAgICAgICAgZHBy aW50ayhYRU5MT0dfSU5GTywKLSAgICAgICAgICAgICAgICAiTUNBIGNhcGFiaWxpdHk6IGZpcnN0 YmFuayAlZCwgJWQgZXh0IE1TUnMlcyVzJXNcbiIsCisgICAgICAgICAgICAgICAgIk1DQSBDYXBh YmlsaXR5OiBmaXJzdGJhbmsgJWQsIGV4dGVuZGVkIE1DRSBNU1IgJWQlcyVzJXMlc1xuIiwKICAg ICAgICAgICAgICAgICBmaXJzdCwgZXh0X251bSwKICAgICAgICAgICAgICAgICBDQVAoYnJvYWRj YXN0LCAiQkNBU1QiKSwKICAgICAgICAgICAgICAgICBDQVAoc2VyLCAiU0VSIiksCi0gICAgICAg ICAgICAgICAgQ0FQKGNtY2ksICJDTUNJIikpOworICAgICAgICAgICAgICAgIENBUChjbWNpLCAi Q01DSSIpLAorICAgICAgICAgICAgICAgIENBUChsbWNlLCAiTE1DRSIpKTsKIAogICAgICAgICBt Y2VfYnJvYWRjYXN0ID0gYnJvYWRjYXN0OwogICAgICAgICBjbWNpX3N1cHBvcnQgPSBjbWNpOwog ICAgICAgICBzZXJfc3VwcG9ydCA9IHNlcjsKKyAgICAgICAgbG1jZV9zdXBwb3J0ID0gbG1jZTsK ICAgICAgICAgbnJfaW50ZWxfZXh0X21zcnMgPSBleHRfbnVtOwogICAgICAgICBmaXJzdGJhbmsg PSBmaXJzdDsKICAgICB9CiAgICAgZWxzZSBpZiAoY21jaSAhPSBjbWNpX3N1cHBvcnQgfHwgc2Vy ICE9IHNlcl9zdXBwb3J0IHx8CiAgICAgICAgICAgICAgYnJvYWRjYXN0ICE9IG1jZV9icm9hZGNh c3QgfHwKLSAgICAgICAgICAgICBmaXJzdCAhPSBmaXJzdGJhbmsgfHwgZXh0X251bSAhPSBucl9p bnRlbF9leHRfbXNycykKKyAgICAgICAgICAgICBmaXJzdCAhPSBmaXJzdGJhbmsgfHwgZXh0X251 bSAhPSBucl9pbnRlbF9leHRfbXNycyB8fAorICAgICAgICAgICAgIGxtY2UgIT0gbG1jZV9zdXBw b3J0KQogICAgICAgICBkcHJpbnRrKFhFTkxPR19XQVJOSU5HLAogICAgICAgICAgICAgICAgICJD UFUldSBoYXMgZGlmZmVyZW50IE1DQSBjYXBhYmlsaXR5ICIKLSAgICAgICAgICAgICAgICAiKGZp cnN0YmFuayAlZCwgJWQgZXh0IE1TUnMlcyVzJXMpIgorICAgICAgICAgICAgICAgICIoZmlyc3Ri YW5rICVkLCBleHRlbmRlZCBNQ0UgTVNSICVkJXMlcyVzJXMpIgogICAgICAgICAgICAgICAgICIg dGhhbiBCU1AsIG1heSBjYXVzZSB1bmRldGVybWluZWQgcmVzdWx0ISEhXG4iLAogICAgICAgICAg ICAgICAgIHNtcF9wcm9jZXNzb3JfaWQoKSwgZmlyc3QsIGV4dF9udW0sCiAgICAgICAgICAgICAg ICAgQ0FQKGJyb2FkY2FzdCwgIkJDQVNUIiksCiAgICAgICAgICAgICAgICAgQ0FQKHNlciwgIlNF UiIpLAotICAgICAgICAgICAgICAgIENBUChjbWNpLCAiQ01DSSIpKTsKKyAgICAgICAgICAgICAg ICBDQVAoY21jaSwgIkNNQ0kiKSwKKyAgICAgICAgICAgICAgICBDQVAobG1jZSwgIkxNQ0UiKSk7 CiAjdW5kZWYgQ0FQCiB9CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3g4 Nl9tY2EuaCBiL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3g4Nl9tY2EuaAppbmRleCBkZTAzZjgy OWMzLi4wZjg3YmNmNjNlIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvY3B1L21jaGVjay94ODZf bWNhLmgKKysrIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2sveDg2X21jYS5oCkBAIC0zNiw2ICsz Niw3IEBACiAjZGVmaW5lIE1DR19URVNfUCAgICAgICAgICAgICAgICgxVUxMPDwxMSkgLyogSW50 ZWwgc3BlY2lmaWMgKi8KICNkZWZpbmUgTUNHX0VYVF9DTlQgICAgICAgICAgICAgMTYgICAgICAg ICAvKiBJbnRlbCBzcGVjaWZpYyAqLwogI2RlZmluZSBNQ0dfU0VSX1AgICAgICAgICAgICAgICAo MVVMTDw8MjQpIC8qIEludGVsIHNwZWNpZmljICovCisjZGVmaW5lIE1DR19MTUNFX1AgICAgICAg ICAgICAgICgxVUxMPDwyNykgLyogSW50ZWwgc3BlY2lmaWMgKi8KIC8qIE90aGVyIGJpdHMgYXJl IHJlc2VydmVkICovCiAKIC8qIEJpdGZpZWxkIG9mIHRoZSBNU1JfSUEzMl9NQ0dfU1RBVFVTIHJl Z2lzdGVyICovCkBAIC00Niw2ICs0NywxMCBAQAogLyogQml0cyAzLTYzIGFyZSByZXNlcnZlZCBv biBDUFUgbm90IHN1cHBvcnRpbmcgTE1DRSAqLwogLyogQml0cyA0LTYzIGFyZSByZXNlcnZlZCBv biBDUFUgc3VwcG9ydGluZyBMTUNFICovCiAKKy8qIEJpdGZpZWxkIG9mIE1TUl9JQTMyX01DR19F WFRfQ1RMIHJlZ2lzdGVyIChJbnRlbCBTcGVjaWZpYykgKi8KKyNkZWZpbmUgTUNHX0VYVF9DVExf TE1DRV9FTiAgICAgKDFVTEw8PDApCisvKiBPdGhlciBiaXRzIGFyZSByZXNlcnZlZCAqLworCiAv KiBCaXRmaWVsZCBvZiBNU1JfSzhfTUNpX1NUQVRVUyByZWdpc3RlcnMgKi8KIC8qIE1DQSBlcnJv ciBjb2RlICovCiAjZGVmaW5lIE1DaV9TVEFUVVNfTUNBICAgICAgICAgIDB4MDAwMDAwMDAwMDAw ZmZmZlVMTApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc3ItaW5kZXguaCBiL3hl bi9pbmNsdWRlL2FzbS14ODYvbXNyLWluZGV4LmgKaW5kZXggNzcxZTc1MDBhZi4uNzU2YjIzZDE5 ZSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc3ItaW5kZXguaAorKysgYi94ZW4v aW5jbHVkZS9hc20teDg2L21zci1pbmRleC5oCkBAIC01MSw2ICs1MSw3IEBACiAjZGVmaW5lIE1T Ul9JQTMyX01DR19DQVAJCTB4MDAwMDAxNzkKICNkZWZpbmUgTVNSX0lBMzJfTUNHX1NUQVRVUwkJ MHgwMDAwMDE3YQogI2RlZmluZSBNU1JfSUEzMl9NQ0dfQ1RMCQkweDAwMDAwMTdiCisjZGVmaW5l IE1TUl9JQTMyX01DR19FWFRfQ1RMCTB4MDAwMDA0ZDAKIAogI2RlZmluZSBNU1JfSUEzMl9QRUJT X0VOQUJMRQkJMHgwMDAwMDNmMQogI2RlZmluZSBNU1JfSUEzMl9EU19BUkVBCQkweDAwMDAwNjAw CkBAIC0yOTYsNiArMjk3LDcgQEAKICNkZWZpbmUgSUEzMl9GRUFUVVJFX0NPTlRST0xfU0VOVEVS X1BBUkFNX0NUTCAgICAgICAgIDB4N2YwMAogI2RlZmluZSBJQTMyX0ZFQVRVUkVfQ09OVFJPTF9F TkFCTEVfU0VOVEVSICAgICAgICAgICAgMHg4MDAwCiAjZGVmaW5lIElBMzJfRkVBVFVSRV9DT05U Uk9MX1NHWF9FTkFCTEUgICAgICAgICAgICAgICAweDQwMDAwCisjZGVmaW5lIElBMzJfRkVBVFVS RV9DT05UUk9MX0xNQ0VfT04gICAgICAgICAgICAgICAgICAweDEwMDAwMAogCiAjZGVmaW5lIE1T Ul9JQTMyX1RTQ19BREpVU1QJCTB4MDAwMDAwM2IKIAotLSAKMi4xMS4wCgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlz dApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVs Cg==