From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergey Dyasli Subject: Re: [PATCH v3 3/3] x86: Clean up the Xen MSR infrastructure Date: Wed, 12 Sep 2018 08:29:59 +0000 Message-ID: References: <1536692177-15675-1-git-send-email-andrew.cooper3@citrix.com> <1536692177-15675-4-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1536692177-15675-4-git-send-email-andrew.cooper3@citrix.com> Content-Language: en-US Content-ID: <77B8B36E944D8B4A9A9D9E55F3E5000C@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Andrew Cooper , "xen-devel@lists.xen.org" Cc: Wei Liu , "JBeulich@suse.com" , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org T24gVHVlLCAyMDE4LTA5LTExIGF0IDE5OjU2ICswMTAwLCBBbmRyZXcgQ29vcGVyIHdyb3RlOg0K PiBSZW5hbWUgdGhlbSB0byBndWVzdF97cmQsd3J9bXNyX3hlbigpIGZvciBjb25zaXN0ZW5jeSwg YW5kIGJlY2F1c2UgdGhlIF9yZWdzDQo+IHN1ZmZpeCBpc24ndCB2ZXJ5IGFwcHJvcHJpYXRlLg0K PiANCj4gVXBkYXRlIHRoZW0gdG8gdGFrZSBhIHZjcHUgcG9pbnRlciByYXRoZXIgdGhhbiBwcmVz dW1pbmcgdGhhdCB0aGV5IGFjdCBvbg0KPiBjdXJyZW50LCBhbmQgc3dpdGNoIHRvIHVzaW5nIFg4 NkVNVUxfKiByZXR1cm4gdmFsdWVzLg0KPiANCj4gU2lnbmVkLW9mZi1ieTogQW5kcmV3IENvb3Bl ciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4NCj4gLS0tDQo+IENDOiBKYW4gQmV1bGljaCA8 SkJldWxpY2hAc3VzZS5jb20+DQo+IENDOiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPg0K PiBDQzogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQo+IENDOiBTZXJn ZXkgRHlhc2xpIDxzZXJnZXkuZHlhc2xpQGNpdHJpeC5jb20+DQo+IA0KPiB2MzoNCj4gICogQ2xl YW4gdXAgYWZ0ZXIgc3BsaXR0aW5nIHRoZSBzZXJpZXMuDQo+IC0tLQ0KPiAgeGVuL2FyY2gveDg2 L21zci5jICAgICAgICAgICAgICB8ICA2ICsrLS0tLQ0KPiAgeGVuL2FyY2gveDg2L3RyYXBzLmMg ICAgICAgICAgICB8IDI5ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tDQo+ICB4ZW4vaW5j bHVkZS9hc20teDg2L3Byb2Nlc3Nvci5oIHwgIDQgKystLQ0KPiAgMyBmaWxlcyBjaGFuZ2VkLCAx NyBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS94ZW4v YXJjaC94ODYvbXNyLmMgYi94ZW4vYXJjaC94ODYvbXNyLmMNCj4gaW5kZXggY2YwZGMyNy4uOGYw MmE4OSAxMDA2NDQNCj4gLS0tIGEveGVuL2FyY2gveDg2L21zci5jDQo+ICsrKyBiL3hlbi9hcmNo L3g4Ni9tc3IuYw0KPiBAQCAtMTU2LDggKzE1Niw3IEBAIGludCBndWVzdF9yZG1zcihjb25zdCBz dHJ1Y3QgdmNwdSAqdiwgdWludDMyX3QgbXNyLCB1aW50NjRfdCAqdmFsKQ0KPiAgDQo+ICAgICAg ICAgIC8qIEZhbGx0aHJvdWdoLiAqLw0KPiAgICAgIGNhc2UgMHg0MDAwMDIwMCAuLi4gMHg0MDAw MDJmZjoNCj4gLSAgICAgICAgcmV0ID0gKHJkbXNyX2h5cGVydmlzb3JfcmVncyhtc3IsIHZhbCkN Cj4gLSAgICAgICAgICAgICAgID8gWDg2RU1VTF9PS0FZIDogWDg2RU1VTF9FWENFUFRJT04pOw0K PiArICAgICAgICByZXQgPSBndWVzdF9yZG1zcl94ZW4odiwgbXNyLCB2YWwpOw0KPiAgICAgICAg ICBicmVhazsNCj4gIA0KPiAgICAgIGRlZmF1bHQ6DQo+IEBAIC0yNzcsOCArMjc2LDcgQEAgaW50 IGd1ZXN0X3dybXNyKHN0cnVjdCB2Y3B1ICp2LCB1aW50MzJfdCBtc3IsIHVpbnQ2NF90IHZhbCkN Cj4gIA0KPiAgICAgICAgICAvKiBGYWxsdGhyb3VnaC4gKi8NCj4gICAgICBjYXNlIDB4NDAwMDAy MDAgLi4uIDB4NDAwMDAyZmY6DQo+IC0gICAgICAgIHJldCA9ICh3cm1zcl9oeXBlcnZpc29yX3Jl Z3MobXNyLCB2YWwpID09IDENCj4gLSAgICAgICAgICAgICAgID8gWDg2RU1VTF9PS0FZIDogWDg2 RU1VTF9FWENFUFRJT04pOw0KPiArICAgICAgICByZXQgPSBndWVzdF93cm1zcl94ZW4odiwgbXNy LCB2YWwpOw0KPiAgICAgICAgICBicmVhazsNCj4gIA0KPiAgICAgIGRlZmF1bHQ6DQo+IGRpZmYg LS1naXQgYS94ZW4vYXJjaC94ODYvdHJhcHMuYyBiL3hlbi9hcmNoL3g4Ni90cmFwcy5jDQo+IGlu ZGV4IDdjMTc4MDYuLjM5ODg3NTMgMTAwNjQ0DQo+IC0tLSBhL3hlbi9hcmNoL3g4Ni90cmFwcy5j DQo+ICsrKyBiL3hlbi9hcmNoL3g4Ni90cmFwcy5jDQo+IEBAIC03NjgsMjkgKzc2OCwyNSBAQCBz dGF0aWMgdm9pZCBkb190cmFwKHN0cnVjdCBjcHVfdXNlcl9yZWdzICpyZWdzKQ0KPiAgICAgICAg ICAgIHRyYXBuciwgdHJhcHN0cih0cmFwbnIpLCByZWdzLT5lcnJvcl9jb2RlKTsNCj4gIH0NCj4g IA0KPiAtLyogUmV0dXJucyAwIGlmIG5vdCBoYW5kbGVkLCBhbmQgbm9uLTAgZm9yIHN1Y2Nlc3Mu ICovDQo+IC1pbnQgcmRtc3JfaHlwZXJ2aXNvcl9yZWdzKHVpbnQzMl90IGlkeCwgdWludDY0X3Qg KnZhbCkNCj4gK2ludCBndWVzdF9yZG1zcl94ZW4oY29uc3Qgc3RydWN0IHZjcHUgKnYsIHVpbnQz Ml90IGlkeCwgdWludDY0X3QgKnZhbCkNCj4gIHsNCj4gLSAgICBzdHJ1Y3QgZG9tYWluICpkID0g Y3VycmVudC0+ZG9tYWluOw0KPiArICAgIGNvbnN0IHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21h aW47DQo+ICAgICAgLyogT3B0aW9uYWxseSBzaGlmdCBvdXQgb2YgdGhlIHdheSBvZiBWaXJpZGlh biBhcmNoaXRlY3R1cmFsIE1TUnMuICovDQo+ICAgICAgdWludDMyX3QgYmFzZSA9IGlzX3Zpcmlk aWFuX2RvbWFpbihkKSA/IDB4NDAwMDAyMDAgOiAweDQwMDAwMDAwOw0KPiAgDQo+ICAgICAgc3dp dGNoICggaWR4IC0gYmFzZSApDQo+ICAgICAgew0KPiAgICAgIGNhc2UgMDogLyogV3JpdGUgaHlw ZXJjYWxsIHBhZ2UgTVNSLiAgUmVhZCBhcyB6ZXJvLiAqLw0KPiAtICAgIHsNCj4gICAgICAgICAg KnZhbCA9IDA7DQo+IC0gICAgICAgIHJldHVybiAxOw0KPiAtICAgIH0NCj4gKyAgICAgICAgcmV0 dXJuIFg4NkVNVUxfT0tBWTsNCj4gICAgICB9DQo+ICANCj4gLSAgICByZXR1cm4gMDsNCj4gKyAg ICByZXR1cm4gWDg2RU1VTF9FWENFUFRJT047DQo+ICB9DQo+ICANCj4gLS8qIFJldHVybnMgMSBp ZiBoYW5kbGVkLCAwIGlmIG5vdCBhbmQgLUV4eCBmb3IgZXJyb3IuICovDQo+IC1pbnQgd3Jtc3Jf aHlwZXJ2aXNvcl9yZWdzKHVpbnQzMl90IGlkeCwgdWludDY0X3QgdmFsKQ0KPiAraW50IGd1ZXN0 X3dybXNyX3hlbihzdHJ1Y3QgdmNwdSAqdiwgdWludDMyX3QgaWR4LCB1aW50NjRfdCB2YWwpDQo+ ICB7DQo+IC0gICAgc3RydWN0IGRvbWFpbiAqZCA9IGN1cnJlbnQtPmRvbWFpbjsNCj4gKyAgICBz dHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOw0KPiAgICAgIC8qIE9wdGlvbmFsbHkgc2hpZnQg b3V0IG9mIHRoZSB3YXkgb2YgVmlyaWRpYW4gYXJjaGl0ZWN0dXJhbCBNU1JzLiAqLw0KPiAgICAg IHVpbnQzMl90IGJhc2UgPSBpc192aXJpZGlhbl9kb21haW4oZCkgPyAweDQwMDAwMjAwIDogMHg0 MDAwMDAwMDsNCj4gIA0KPiBAQCAtODA5LDcgKzgwNSw3IEBAIGludCB3cm1zcl9oeXBlcnZpc29y X3JlZ3ModWludDMyX3QgaWR4LCB1aW50NjRfdCB2YWwpDQo+ICAgICAgICAgICAgICBnZHByaW50 ayhYRU5MT0dfV0FSTklORywNCj4gICAgICAgICAgICAgICAgICAgICAgICJ3cm1zciBoeXBlcmNh bGwgcGFnZSBpbmRleCAlI3ggdW5zdXBwb3J0ZWRcbiIsDQo+ICAgICAgICAgICAgICAgICAgICAg ICBwYWdlX2luZGV4KTsNCj4gLSAgICAgICAgICAgIHJldHVybiAwOw0KPiArICAgICAgICAgICAg cmV0dXJuIFg4NkVNVUxfRVhDRVBUSU9OOw0KPiAgICAgICAgICB9DQo+ICANCj4gICAgICAgICAg cGFnZSA9IGdldF9wYWdlX2Zyb21fZ2ZuKGQsIGdtZm4sICZ0LCBQMk1fQUxMT0MpOw0KPiBAQCAt ODIyLDEzICs4MTgsMTMgQEAgaW50IHdybXNyX2h5cGVydmlzb3JfcmVncyh1aW50MzJfdCBpZHgs IHVpbnQ2NF90IHZhbCkNCj4gICAgICAgICAgICAgIGlmICggcDJtX2lzX3BhZ2luZyh0KSApDQo+ ICAgICAgICAgICAgICB7DQo+ICAgICAgICAgICAgICAgICAgcDJtX21lbV9wYWdpbmdfcG9wdWxh dGUoZCwgZ21mbik7DQo+IC0gICAgICAgICAgICAgICAgcmV0dXJuIC1FUkVTVEFSVDsNCj4gKyAg ICAgICAgICAgICAgICByZXR1cm4gWDg2RU1VTF9SRVRSWTsNCg0KUHJldmlvdXNseSAtRVJFU1RB UlQgd291bGQndmUgYmVlbiBjb252ZXJ0ZWQgdG8gWDg2RU1VTF9FWENFUFRJT04uIEJ1dA0Kd2l0 aCB0aGlzIHBhdGNoLCBYODZFTVVMX1JFVFJZIHdpbGwgYWN0dWFsbHkgYmUgcmV0dXJuZWQuIEkg ZG9uJ3QgdGhpbmsNCnRoYXQgY2FsbGVycyBjYW4gaGFuZGxlIHRoaXMgc2l0dWF0aW9uLg0KDQpF LmcuIHRoZSBjb2RlIGZyb20gdm14X3ZtZXhpdF9oYW5kbGVyKCk6DQoNCiAgICBjYXNlIEVYSVRf UkVBU09OX01TUl9XUklURToNCiAgICAgICAgc3dpdGNoICggaHZtX21zcl93cml0ZV9pbnRlcmNl cHQocmVncy0+ZWN4LCBtc3JfZm9sZChyZWdzKSwgMSkgKQ0KICAgICAgICB7DQogICAgICAgIGNh c2UgWDg2RU1VTF9PS0FZOg0KICAgICAgICAgICAgdXBkYXRlX2d1ZXN0X2VpcCgpOyAvKiBTYWZl OiBXUk1TUiAqLw0KICAgICAgICAgICAgYnJlYWs7DQoNCiAgICAgICAgY2FzZSBYODZFTVVMX0VY Q0VQVElPTjoNCiAgICAgICAgICAgIGh2bV9pbmplY3RfaHdfZXhjZXB0aW9uKFRSQVBfZ3BfZmF1 bHQsIDApOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICAgICAgYnJlYWs7DQoN Cj4gICAgICAgICAgICAgIH0NCj4gIA0KPiAgICAgICAgICAgICAgZ2RwcmludGsoWEVOTE9HX1dB Uk5JTkcsDQo+ICAgICAgICAgICAgICAgICAgICAgICAiQmFkIEdNRk4gJWx4IChNRk4gJSMiUFJJ X21mbiIpIHRvIE1TUiAlMDh4XG4iLA0KPiAgICAgICAgICAgICAgICAgICAgICAgZ21mbiwgbWZu X3gocGFnZSA/IHBhZ2VfdG9fbWZuKHBhZ2UpIDogSU5WQUxJRF9NRk4pLCBiYXNlKTsNCj4gLSAg ICAgICAgICAgIHJldHVybiAwOw0KPiArICAgICAgICAgICAgcmV0dXJuIFg4NkVNVUxfRVhDRVBU SU9OOw0KPiAgICAgICAgICB9DQo+ICANCj4gICAgICAgICAgaHlwZXJjYWxsX3BhZ2UgPSBfX21h cF9kb21haW5fcGFnZShwYWdlKTsNCj4gQEAgLTgzNiwxMSArODMyLDEyIEBAIGludCB3cm1zcl9o eXBlcnZpc29yX3JlZ3ModWludDMyX3QgaWR4LCB1aW50NjRfdCB2YWwpDQo+ICAgICAgICAgIHVu bWFwX2RvbWFpbl9wYWdlKGh5cGVyY2FsbF9wYWdlKTsNCj4gIA0KPiAgICAgICAgICBwdXRfcGFn ZV9hbmRfdHlwZShwYWdlKTsNCj4gLSAgICAgICAgcmV0dXJuIDE7DQo+IC0gICAgfQ0KPiArICAg ICAgICByZXR1cm4gWDg2RU1VTF9PS0FZOw0KPiAgICAgIH0NCj4gIA0KPiAtICAgIHJldHVybiAw Ow0KPiArICAgIGRlZmF1bHQ6DQo+ICsgICAgICAgIHJldHVybiBYODZFTVVMX0VYQ0VQVElPTjsN Cj4gKyAgICB9DQo+ICB9DQo+ICANCj4gIHZvaWQgY3B1aWRfaHlwZXJ2aXNvcl9sZWF2ZXMoY29u c3Qgc3RydWN0IHZjcHUgKnYsIHVpbnQzMl90IGxlYWYsDQo+IGRpZmYgLS1naXQgYS94ZW4vaW5j bHVkZS9hc20teDg2L3Byb2Nlc3Nvci5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wcm9jZXNzb3Iu aA0KPiBpbmRleCBhMTY2ODAyLi4wMzU1NWUxIDEwMDY0NA0KPiAtLS0gYS94ZW4vaW5jbHVkZS9h c20teDg2L3Byb2Nlc3Nvci5oDQo+ICsrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcHJvY2Vzc29y LmgNCj4gQEAgLTU1NCw4ICs1NTQsOCBAQCB1bnNpZ25lZCBsb25nIGFsbG9jX3N0dWJfcGFnZSh1 bnNpZ25lZCBpbnQgY3B1LCB1bnNpZ25lZCBsb25nICptZm4pOw0KPiAgDQo+ICB2b2lkIGNwdWlk X2h5cGVydmlzb3JfbGVhdmVzKGNvbnN0IHN0cnVjdCB2Y3B1ICp2LCB1aW50MzJfdCBsZWFmLA0K PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzdWJsZWFmLCBzdHJ1Y3Qg Y3B1aWRfbGVhZiAqcmVzKTsNCj4gLWludCByZG1zcl9oeXBlcnZpc29yX3JlZ3ModWludDMyX3Qg aWR4LCB1aW50NjRfdCAqdmFsKTsNCj4gLWludCB3cm1zcl9oeXBlcnZpc29yX3JlZ3ModWludDMy X3QgaWR4LCB1aW50NjRfdCB2YWwpOw0KPiAraW50IGd1ZXN0X3JkbXNyX3hlbihjb25zdCBzdHJ1 Y3QgdmNwdSAqdiwgdWludDMyX3QgaWR4LCB1aW50NjRfdCAqdmFsKTsNCj4gK2ludCBndWVzdF93 cm1zcl94ZW4oc3RydWN0IHZjcHUgKnYsIHVpbnQzMl90IGlkeCwgdWludDY0X3QgdmFsKTsNCj4g IA0KPiAgdm9pZCBtaWNyb2NvZGVfc2V0X21vZHVsZSh1bnNpZ25lZCBpbnQpOw0KPiAgaW50IG1p Y3JvY29kZV91cGRhdGUoWEVOX0dVRVNUX0hBTkRMRV9QQVJBTShjb25zdF92b2lkKSwgdW5zaWdu ZWQgbG9uZyBsZW4pOw0KLS0gDQpUaGFua3MsDQpTZXJnZXkKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2 ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWls bWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==