From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH 16/19] x86/vmce: enable injecting LMCE to guest on Intel host Date: Fri, 17 Feb 2017 14:39:33 +0800 Message-ID: <20170217063936.13208-17-haozhong.zhang@intel.com> References: <20170217063936.13208-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: <20170217063936.13208-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 , Christoph Egger , Andrew Cooper , Jan Beulich , Liu Jinsong List-Id: xen-devel@lists.xenproject.org SW5qZWN0IExNQ0UgdG8gZ3Vlc3QgaWYgdGhlIGhvc3QgTUNFIGlzIExNQ0UgYW5kIHRoZSBhZmZl Y3RlZCB2Y3B1IGlzCmtub3duLiBPdGhlcndpc2UsIGJyb2FkY2FzdCBNQ0UgdG8gYWxsIHZjcHVz IG9uIEludGVsIGhvc3QuCgpTaWduZWQtb2ZmLWJ5OiBIYW96aG9uZyBaaGFuZyA8aGFvemhvbmcu emhhbmdAaW50ZWwuY29tPgotLS0KQ2M6IENocmlzdG9waCBFZ2dlciA8Y2hlZ2dlckBhbWF6b24u ZGU+CkNjOiBMaXUgSmluc29uZyA8amluc29uZy5saXVAYWxpYmFiYS1pbmMuY29tPgpDYzogSmFu IEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNv b3BlcjNAY2l0cml4LmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYvY3B1L21jaGVjay9tY2FjdGlvbi5j IHwgMTQgKysrKysrKystLS0tLS0KIHhlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuYyAgICAg fCAgOSArKysrKysrKy0KIHhlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuaCAgICAgfCAgMiAr LQogMyBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL21jYWN0aW9uLmMgYi94ZW4vYXJjaC94 ODYvY3B1L21jaGVjay9tY2FjdGlvbi5jCmluZGV4IDkwYzY4ZmYuLjM0MTBiZmQgMTAwNjQ0Ci0t LSBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL21jYWN0aW9uLmMKKysrIGIveGVuL2FyY2gveDg2 L2NwdS9tY2hlY2svbWNhY3Rpb24uYwpAQCAtODgsMTcgKzg4LDE5IEBAIG1jX21lbWVycl9kaGFu ZGxlcihzdHJ1Y3QgbWNhX2JpbmZvICpiaW5mbywKICAgICAgICAgICAgICAgICAgICAgZ290byB2 bWNlX2ZhaWxlZDsKICAgICAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgICAgICBpZiAoIGJv b3RfY3B1X2RhdGEueDg2X3ZlbmRvciA9PSBYODZfVkVORE9SX0lOVEVMICkKKyAgICAgICAgICAg ICAgICB2bWNlX3ZjcHVpZCA9IGdsb2JhbC0+bWNfdmNwdWlkOworICAgICAgICAgICAgICAgIGlm ICggYm9vdF9jcHVfZGF0YS54ODZfdmVuZG9yID09IFg4Nl9WRU5ET1JfSU5URUwgJiYKKyAgICAg ICAgICAgICAgICAgICAgICh2bWNlX3ZjcHVpZCA9PSAtMSB8fAorICAgICAgICAgICAgICAgICAg ICAgIGdsb2JhbC0+bWNfZG9taWQgIT0gYmFuay0+bWNfZG9taWQgfHwKKyAgICAgICAgICAgICAg ICAgICAgICAhKGdsb2JhbC0+bWNfZ3N0YXR1cyAmIE1DR19TVEFUVVNfTE1DRSkgfHwKKyAgICAg ICAgICAgICAgICAgICAgICAhZC0+dmNwdVt2bWNlX3ZjcHVpZF0tPmFyY2gudm1jZS5sbWNlX2Vu YWJsZWQpICkKICAgICAgICAgICAgICAgICAgICAgdm1jZV92Y3B1aWQgPSBWTUNFX0lOSkVDVF9C Uk9BRENBU1Q7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICB2bWNl X3ZjcHVpZCA9IGdsb2JhbC0+bWNfdmNwdWlkOwogCiAgICAgICAgICAgICAgICAgYmFuay0+bWNf YWRkciA9IGdmbiA8PCBQQUdFX1NISUZUIHwKICAgICAgICAgICAgICAgICAgIChiYW5rLT5tY19h ZGRyICYgKFBBR0VfU0laRSAtMSApKTsKLSAgICAgICAgICAgICAgICAvKiBUT0RPOiBzdXBwb3J0 IGluamVjdGluZyBMTUNFICovCiAgICAgICAgICAgICAgICAgaWYgKCBmaWxsX3Ztc3JfZGF0YShi YW5rLCBkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsLT5tY19n c3RhdHVzICYgfk1DR19TVEFUVVNfTE1DRSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHZtY2VfdmNwdWlkID09IFZNQ0VfSU5KRUNUX0JST0FEQ0FTVCkgPT0gLTEgKQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsLT5tY19nc3RhdHVzLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm1jZV92Y3B1aWQpID09IC0xICkKICAg ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgIG1jZV9wcmludGsoTUNFX1FVSUVU LCAiRmlsbCB2TUNFIyBkYXRhIGZvciBET00lZCAiCiAgICAgICAgICAgICAgICAgICAgICAgImZh aWxlZFxuIiwgYmFuay0+bWNfZG9taWQpOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdS9t Y2hlY2svdm1jZS5jIGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5jCmluZGV4IDEyNzg4 MzkuLjJhNGQzZjAgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuYwor KysgYi94ZW4vYXJjaC94ODYvY3B1L21jaGVjay92bWNlLmMKQEAgLTQ0NCwxNCArNDQ0LDIxIEBA IHN0YXRpYyBpbnQgdmNwdV9maWxsX21jX21zcnMoc3RydWN0IHZjcHUgKnYsIHVpbnQ2NF90IG1j Z19zdGF0dXMsCiB9CiAKIGludCBmaWxsX3Ztc3JfZGF0YShzdHJ1Y3QgbWNpbmZvX2JhbmsgKm1j X2JhbmssIHN0cnVjdCBkb21haW4gKmQsCi0gICAgICAgICAgICAgICAgICAgdWludDY0X3QgZ3N0 YXR1cywgYm9vbCBicm9hZGNhc3QpCisgICAgICAgICAgICAgICAgICAgdWludDY0X3QgZ3N0YXR1 cywgaW50IHZtY2VfdmNwdWlkKQogewogICAgIHN0cnVjdCB2Y3B1ICp2ID0gZC0+dmNwdVswXTsK KyAgICBib29sIGJyb2FkY2FzdCA9ICh2bWNlX3ZjcHVpZCA9PSBWTUNFX0lOSkVDVF9CUk9BRENB U1QpOwogICAgIGludCByZXQ7CiAKICAgICBpZiAoIG1jX2JhbmstPm1jX2RvbWlkID09ICh1aW50 MTZfdCl+MCApCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwogCisgICAgaWYgKCAoZ3N0YXR1cyAm IE1DR19TVEFUVVNfTE1DRSkgJiYgIWJyb2FkY2FzdCApCisgICAgICAgIHYgPSBkLT52Y3B1W3Zt Y2VfdmNwdWlkXTsKKworICAgIGlmICggYnJvYWRjYXN0ICkKKyAgICAgICAgZ3N0YXR1cyAmPSB+ TUNHX1NUQVRVU19MTUNFOworCiAgICAgcmV0ID0gdmNwdV9maWxsX21jX21zcnModiwgZ3N0YXR1 cywgbWNfYmFuay0+bWNfc3RhdHVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1jX2Jh bmstPm1jX2FkZHIsIG1jX2JhbmstPm1jX21pc2MpOwogICAgIGlmICggcmV0IHx8ICFicm9hZGNh c3QgKQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5oIGIveGVuL2Fy Y2gveDg2L2NwdS9tY2hlY2svdm1jZS5oCmluZGV4IDc0ZjYzODEuLjI3OTdlMDAgMTAwNjQ0Ci0t LSBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuaAorKysgYi94ZW4vYXJjaC94ODYvY3B1 L21jaGVjay92bWNlLmgKQEAgLTE3LDcgKzE3LDcgQEAgaW50IHZtY2VfYW1kX3JkbXNyKGNvbnN0 IHN0cnVjdCB2Y3B1ICosIHVpbnQzMl90IG1zciwgdWludDY0X3QgKnZhbCk7CiBpbnQgdm1jZV9h bWRfd3Jtc3Ioc3RydWN0IHZjcHUgKiwgdWludDMyX3QgbXNyLCB1aW50NjRfdCB2YWwpOwogCiBp bnQgZmlsbF92bXNyX2RhdGEoc3RydWN0IG1jaW5mb19iYW5rICptY19iYW5rLCBzdHJ1Y3QgZG9t YWluICpkLAotICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90IGdzdGF0dXMsIGJvb2wgYnJvYWRj YXN0KTsKKyAgICAgICAgICAgICAgICAgICB1aW50NjRfdCBnc3RhdHVzLCBpbnQgdm1jZV92Y3B1 aWQpOwogCiAjZGVmaW5lIFZNQ0VfSU5KRUNUX0JST0FEQ0FTVCAoLTEpCiBpbnQgaW5qZWN0X3Zt Y2Uoc3RydWN0IGRvbWFpbiAqZCwgaW50IHZjcHUpOwotLSAKMi4xMC4xCgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlz dApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVs Cg==