From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [PATCH v7 1/7] x86/domctl: generalize the restore of vMCE parameters Date: Fri, 7 Jul 2017 11:53:08 +0800 Message-ID: <20170707035314.15659-2-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 dk1DRSBwYXJhbWV0ZXJzIGluIHN0cnVjdCB4ZW5fZG9tY3RsX2V4dF92Y3B1Y29udGV4dCB3ZXJl IGV4dGVuZGVkIGluCnRoZSBwYXN0LCBhbmQgaXMgbGlrZWx5IHRvIGJlIGV4dGVuZGVkIGluIHRo ZSBmdXR1cmUuIFdoZW4gbWlncmF0aW5nIGEKUFYgZG9tYWluIGZyb20gb2xkIFhlbiwgWEVOX0RP TUNUTF9zZXRfZXh0X3ZjcHVjb250ZXh0IHNob3VsZCBoYW5kbGUKdGhlIGRpZmZlcmVuY2VzLgoK SW5zdGVhZCBvZiBhZGRpbmcgYWQtaG9jIGhhbmRsaW5nIGNvZGUgYXQgZWFjaCBleHRlbnNpb24s IHdlIGludHJvZHVjZQphbiBhcnJheSB0byByZWNvcmQgc2l6ZXMgb2YgdGhlIGN1cnJlbnQgYW5k IGFsbCBwYXN0IHZlcnNpb25zIG9mIHZNQ0UKcGFyYW1ldGVycywgYW5kIHNlYXJjaCBmb3IgdGhl IGxhcmdlc3Qgb25lIHRoYXQgZG9lcyBub3QgZXhwaXJlIHRoZQpzaXplIG9mIHBhc3NlZC1pbiBw YXJhbWV0ZXJzIHRvIGRldGVybWluZSB2TUNFIHBhcmFtZXRlcnMgdGhhdCB3aWxsIGJlCnJlc3Rv cmVkLiBJZiB2TUNFIHBhcmFtZXRlcnMgYXJlIGV4dGVuZGVkIGluIHRoZSBmdXR1cmUsIHdlIG9u bHkgbmVlZAp0byBhZGFwdCB0aGUgYXJyYXkgdG8gcmVmbGVjdCB0aGUgZXh0ZW5zaW9uLgoKU2ln bmVkLW9mZi1ieTogSGFvemhvbmcgWmhhbmcgPGhhb3pob25nLnpoYW5nQGludGVsLmNvbT4KLS0t CkNjOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+CkNjOiBBbmRyZXcgQ29vcGVyIDxh bmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0KIHhlbi9hcmNoL3g4Ni9kb21jdGwuYyB8IDUx ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQogMSBm aWxlIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3hlbi9hcmNoL3g4Ni9kb21jdGwuYyBiL3hlbi9hcmNoL3g4Ni9kb21jdGwuYwppbmRleCA3 ZmE1OGI0OWFmLi41Y2QyYWY3NmJiIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvZG9tY3RsLmMK KysrIGIveGVuL2FyY2gveDg2L2RvbWN0bC5jCkBAIC0zMDIsNiArMzAyLDM5IEBAIHN0YXRpYyBp bnQgdXBkYXRlX2RvbWFpbl9jcHVpZF9pbmZvKHN0cnVjdCBkb21haW4gKmQsCiAgICAgcmV0dXJu IDA7CiB9CiAKK3N0YXRpYyBpbnQgdmNwdV9zZXRfdm1jZShzdHJ1Y3QgdmNwdSAqdiwKKyAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeGVuX2RvbWN0bF9leHRfdmNwdWNvbnRl eHQgKmV2YykKK3sKKyAgICAvKgorICAgICAqIFNpemVzIG9mIHZNQ0UgcGFyYW1ldGVycyB1c2Vk IGJ5IHRoZSBjdXJyZW50IGFuZCBwYXN0IHZlcnNpb25zCisgICAgICogb2YgWGVuIGluIGRlc2Nl bmRpbmcgb3JkZXIuIElmIHZNQ0UgcGFyYW1ldGVycyBhcmUgZXh0ZW5kZWQsCisgICAgICogcmVt ZW1iZXIgdG8gYWRkIHRoZSBvbGQgc2l6ZSBpbiB0aGlzIGFycmF5LgorICAgICAqLworICAgIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgdmFsaWRfdm1jZV9zaXplW10gPSB7CisgICAgICAgIHNp emVvZihldmMtPnZtY2UpLAorICAgICAgICBzaXplb2YoZXZjLT5tY2dfY2FwKSwKKyAgICAgICAg MCwKKyAgICB9OworICAgIHN0cnVjdCBodm1fdm1jZV92Y3B1IHZtY2UgPSB7IH07CisgICAgdW5z aWduZWQgaW50IHZtY2Vfc2l6ZSA9IGV2Yy0+c2l6ZSAtIG9mZnNldG9mKHR5cGVvZigqZXZjKSwg bWNnX2NhcCk7CisgICAgaW50IGkgPSAwOworCisgICAgQlVJTERfQlVHX09OKG9mZnNldG9mKHN0 cnVjdCB4ZW5fZG9tY3RsX2V4dF92Y3B1Y29udGV4dCwgbWNnX2NhcCkgIT0KKyAgICAgICAgICAg ICAgICAgb2Zmc2V0b2Yoc3RydWN0IHhlbl9kb21jdGxfZXh0X3ZjcHVjb250ZXh0LCB2bWNlLmNh cHMpKTsKKyAgICBCVUlMRF9CVUdfT04oc2l6ZW9mKGV2Yy0+bWNnX2NhcCkgIT0gc2l6ZW9mKGV2 Yy0+dm1jZS5jYXBzKSk7CisKKyAgICB3aGlsZSAoIGkgPCBBUlJBWV9TSVpFKHZhbGlkX3ZtY2Vf c2l6ZSkgLSAxICYmCisgICAgICAgICAgICB2bWNlX3NpemUgPCB2YWxpZF92bWNlX3NpemVbaV0g KQorICAgICAgICArK2k7CisgICAgdm1jZV9zaXplID0gdmFsaWRfdm1jZV9zaXplW2ldOworCisg ICAgaWYgKCAhdm1jZV9zaXplICkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBtZW1jcHkoJnZt Y2UsICZldmMtPnZtY2UsIHZtY2Vfc2l6ZSk7CisgICAgcmV0dXJuIHZtY2VfcmVzdG9yZV92Y3B1 KHYsICZ2bWNlKTsKK30KKwogdm9pZCBhcmNoX2dldF9kb21haW5faW5mbyhjb25zdCBzdHJ1Y3Qg ZG9tYWluICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9n ZXRkb21haW5pbmZvICppbmZvKQogewpAQCAtOTEyLDIzICs5NDUsNyBAQCBsb25nIGFyY2hfZG9f ZG9tY3RsKAogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGRvbWFpbl9wYXVzZShk KTsKIAotICAgICAgICAgICAgQlVJTERfQlVHX09OKG9mZnNldG9mKHN0cnVjdCB4ZW5fZG9tY3Rs X2V4dF92Y3B1Y29udGV4dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtY2df Y2FwKSAhPQotICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldG9mKHN0cnVjdCB4ZW5fZG9t Y3RsX2V4dF92Y3B1Y29udGV4dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 bWNlLmNhcHMpKTsKLSAgICAgICAgICAgIEJVSUxEX0JVR19PTihzaXplb2YoZXZjLT5tY2dfY2Fw KSAhPSBzaXplb2YoZXZjLT52bWNlLmNhcHMpKTsKLSAgICAgICAgICAgIGlmICggZXZjLT5zaXpl ID49IG9mZnNldG9mKHR5cGVvZigqZXZjKSwgdm1jZSkgKwotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc2l6ZW9mKGV2Yy0+dm1jZSkgKQotICAgICAgICAgICAgICAgIHJldCA9IHZtY2Vf cmVzdG9yZV92Y3B1KHYsICZldmMtPnZtY2UpOwotICAgICAgICAgICAgZWxzZSBpZiAoIGV2Yy0+ c2l6ZSA+PSBvZmZzZXRvZih0eXBlb2YoKmV2YyksIG1jZ19jYXApICsKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGV2Yy0+bWNnX2NhcCkgKQotICAgICAgICAgICAg ewotICAgICAgICAgICAgICAgIHN0cnVjdCBodm1fdm1jZV92Y3B1IHZtY2UgPSB7IC5jYXBzID0g ZXZjLT5tY2dfY2FwIH07Ci0KLSAgICAgICAgICAgICAgICByZXQgPSB2bWNlX3Jlc3RvcmVfdmNw dSh2LCAmdm1jZSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAg ICAgICAgcmV0ID0gMDsKKyAgICAgICAgICAgIHJldCA9IHZjcHVfc2V0X3ZtY2UodiwgZXZjKTsK IAogICAgICAgICAgICAgZG9tYWluX3VucGF1c2UoZCk7CiAgICAgICAgIH0KLS0gCjIuMTEuMAoK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZl bCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4u b3JnL3hlbi1kZXZlbAo=