From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Lutomirski Subject: Re: [PATCH v4 1/5] x86/paravirt: Add _safe to the read_msr and write_msr PV hooks Date: Mon, 14 Mar 2016 10:07:49 -0700 Message-ID: References: <7e72cd6ce08b946872a462fad13eca1810b8671d.1457805972.git.luto@kernel.org> <20160314115729.GC15800@pd.tnic> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160314115729.GC15800@pd.tnic> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Borislav Petkov Cc: KVM list , Peter Zijlstra , Linus Torvalds , X86 ML , "linux-kernel@vger.kernel.org" , xen-devel , Andy Lutomirski , Paolo Bonzini , Andrew Morton , Arjan van de Ven List-Id: xen-devel@lists.xenproject.org T24gTW9uLCBNYXIgMTQsIDIwMTYgYXQgNDo1NyBBTSwgQm9yaXNsYXYgUGV0a292IDxicEBhbGll bjguZGU+IHdyb3RlOgo+IE9uIFNhdCwgTWFyIDEyLCAyMDE2IGF0IDEwOjA4OjQ4QU0gLTA4MDAs IEFuZHkgTHV0b21pcnNraSB3cm90ZToKPj4gVGhlc2UgaG9va3MgbWF0Y2ggdGhlIF9zYWZlIHZh cmlhbnRzLCBzbyBuYW1lIHRoZW0gYWNjb3JkaW5nbHkuCj4+IFRoaXMgd2lsbCBtYWtlIHJvb20g Zm9yIHVuc2FmZSBQViBob29rcy4KPj4KPj4gU2lnbmVkLW9mZi1ieTogQW5keSBMdXRvbWlyc2tp IDxsdXRvQGtlcm5lbC5vcmc+Cj4+IC0tLQo+PiAgYXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZp cnQuaCAgICAgICB8IDMzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQo+PiAgYXJj aC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnRfdHlwZXMuaCB8ICA4ICsrKystLS0tCj4+ICBhcmNo L3g4Ni9rZXJuZWwvcGFyYXZpcnQuYyAgICAgICAgICAgIHwgIDQgKystLQo+PiAgYXJjaC94ODYv eGVuL2VubGlnaHRlbi5jICAgICAgICAgICAgICB8ICA0ICsrLS0KPj4gIDQgZmlsZXMgY2hhbmdl ZCwgMjUgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9h cmNoL3g4Ni9pbmNsdWRlL2FzbS9wYXJhdmlydC5oIGIvYXJjaC94ODYvaW5jbHVkZS9hc20vcGFy YXZpcnQuaAo+PiBpbmRleCBmNjE5MjUwMjE0OWUuLjJlNDkyMjhlZDlhMyAxMDA2NDQKPj4gLS0t IGEvYXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnQuaAo+PiArKysgYi9hcmNoL3g4Ni9pbmNs dWRlL2FzbS9wYXJhdmlydC5oCj4+IEBAIC0xMjksMzQgKzEyOSwzNSBAQCBzdGF0aWMgaW5saW5l IHZvaWQgd2JpbnZkKHZvaWQpCj4+Cj4+ICAjZGVmaW5lIGdldF9rZXJuZWxfcnBsKCkgIChwdl9p bmZvLmtlcm5lbF9ycGwpCj4+Cj4+IC1zdGF0aWMgaW5saW5lIHU2NCBwYXJhdmlydF9yZWFkX21z cih1bnNpZ25lZCBtc3IsIGludCAqZXJyKQo+PiArc3RhdGljIGlubGluZSB1NjQgcGFyYXZpcnRf cmVhZF9tc3Jfc2FmZSh1bnNpZ25lZCBtc3IsIGludCAqZXJyKQo+PiAgewo+PiAtICAgICByZXR1 cm4gUFZPUF9DQUxMMih1NjQsIHB2X2NwdV9vcHMucmVhZF9tc3IsIG1zciwgZXJyKTsKPj4gKyAg ICAgcmV0dXJuIFBWT1BfQ0FMTDIodTY0LCBwdl9jcHVfb3BzLnJlYWRfbXNyX3NhZmUsIG1zciwg ZXJyKTsKPj4gIH0KPj4KPj4gLXN0YXRpYyBpbmxpbmUgaW50IHBhcmF2aXJ0X3dyaXRlX21zcih1 bnNpZ25lZCBtc3IsIHVuc2lnbmVkIGxvdywgdW5zaWduZWQgaGlnaCkKPj4gK3N0YXRpYyBpbmxp bmUgaW50IHBhcmF2aXJ0X3dyaXRlX21zcl9zYWZlKHVuc2lnbmVkIG1zciwKPj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvdywgdW5zaWduZWQgaGln aCkKPj4gIHsKPj4gLSAgICAgcmV0dXJuIFBWT1BfQ0FMTDMoaW50LCBwdl9jcHVfb3BzLndyaXRl X21zciwgbXNyLCBsb3csIGhpZ2gpOwo+PiArICAgICByZXR1cm4gUFZPUF9DQUxMMyhpbnQsIHB2 X2NwdV9vcHMud3JpdGVfbXNyX3NhZmUsIG1zciwgbG93LCBoaWdoKTsKPj4gIH0KPj4KPj4gIC8q IFRoZXNlIHNob3VsZCBhbGwgZG8gQlVHX09OKF9lcnIpLCBidXQgb3VyIGhlYWRlcnMgYXJlIHRv byB0YW5nbGVkLiAqLwo+PiAgI2RlZmluZSByZG1zcihtc3IsIHZhbDEsIHZhbDIpICAgICAgICAg ICAgICAgICAgICAgICBcCj4+ICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCj4+ICAgICAgIGludCBfZXJyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCj4+IC0gICAgIHU2NCBfbCA9IHBhcmF2aXJ0X3JlYWRfbXNyKG1zciwgJl9lcnIpOyBcCj4+ ICsgICAgIHU2NCBfbCA9IHBhcmF2aXJ0X3JlYWRfbXNyX3NhZmUobXNyLCAmX2Vycik7ICAgIFwK Pj4gICAgICAgdmFsMSA9ICh1MzIpX2w7ICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4gICAg ICAgdmFsMiA9IF9sID4+IDMyOyAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4gIH0gd2hpbGUg KDApCj4+Cj4+ICAjZGVmaW5lIHdybXNyKG1zciwgdmFsMSwgdmFsMikgICAgICAgICAgICAgICAg ICAgICAgIFwKPj4gIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKPj4gLSAgICAgcGFyYXZpcnRfd3JpdGVfbXNyKG1zciwgdmFsMSwgdmFsMik7ICAgIFwKPj4g KyAgICAgcGFyYXZpcnRfd3JpdGVfbXNyX3NhZmUobXNyLCB2YWwxLCB2YWwyKTsgICAgICAgXAo+ PiAgfSB3aGlsZSAoMCkKPj4KPj4gICNkZWZpbmUgcmRtc3JsKG1zciwgdmFsKSAgICAgICAgICAg ICAgICAgICAgIFwKPj4gIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKPj4gICAgICAgaW50IF9lcnI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK Pj4gLSAgICAgdmFsID0gcGFyYXZpcnRfcmVhZF9tc3IobXNyLCAmX2Vycik7ICAgIFwKPj4gKyAg ICAgdmFsID0gcGFyYXZpcnRfcmVhZF9tc3Jfc2FmZShtc3IsICZfZXJyKTsgICAgICAgXAo+PiAg fSB3aGlsZSAoMCkKPj4KPj4gIHN0YXRpYyBpbmxpbmUgdm9pZCB3cm1zcmwodW5zaWduZWQgbXNy LCB1NjQgdmFsKQo+PiBAQCAtMTY0LDIzICsxNjUsMjMgQEAgc3RhdGljIGlubGluZSB2b2lkIHdy bXNybCh1bnNpZ25lZCBtc3IsIHU2NCB2YWwpCj4+ICAgICAgIHdybXNyKG1zciwgKHUzMil2YWws ICh1MzIpKHZhbD4+MzIpKTsKPj4gIH0KPj4KPj4gLSNkZWZpbmUgd3Jtc3Jfc2FmZShtc3IsIGEs IGIpICAgICAgICBwYXJhdmlydF93cml0ZV9tc3IobXNyLCBhLCBiKQo+PiArI2RlZmluZSB3cm1z cl9zYWZlKG1zciwgYSwgYikgICAgICAgIHBhcmF2aXJ0X3dyaXRlX21zcl9zYWZlKG1zciwgYSwg YikKPj4KPj4gIC8qIHJkbXNyIHdpdGggZXhjZXB0aW9uIGhhbmRsaW5nICovCj4+IC0jZGVmaW5l IHJkbXNyX3NhZmUobXNyLCBhLCBiKSAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4gLSh7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4gLSAgICAgaW50IF9l cnI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4gLSAgICAgdTY0IF9sID0gcGFy YXZpcnRfcmVhZF9tc3IobXNyLCAmX2Vycik7IFwKPj4gLSAgICAgKCphKSA9ICh1MzIpX2w7ICAg ICAgICAgICAgICAgICAgICAgICAgIFwKPj4gLSAgICAgKCpiKSA9IF9sID4+IDMyOyAgICAgICAg ICAgICAgICAgICAgICAgIFwKPj4gLSAgICAgX2VycjsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKPj4gKyNkZWZpbmUgcmRtc3Jfc2FmZShtc3IsIGEsIGIpICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCj4+ICsoeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKPj4gKyAgICAgaW50IF9lcnI7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAo+PiArICAgICB1NjQgX2wgPSBwYXJhdmlydF9yZWFk X21zcl9zYWZlKG1zciwgJl9lcnIpOyAgICBcCj4+ICsgICAgICgqYSkgPSAodTMyKV9sOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPj4gKyAgICAgKCpiKSA9IF9sID4+IDMyOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+PiArICAgICBfZXJyOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4+ICB9KQo+Pgo+PiAgc3RhdGljIGlu bGluZSBpbnQgcmRtc3JsX3NhZmUodW5zaWduZWQgbXNyLCB1bnNpZ25lZCBsb25nIGxvbmcgKnAp Cj4+ICB7Cj4+ICAgICAgIGludCBlcnI7Cj4+Cj4+IC0gICAgICpwID0gcGFyYXZpcnRfcmVhZF9t c3IobXNyLCAmZXJyKTsKPj4gKyAgICAgKnAgPSBwYXJhdmlydF9yZWFkX21zcl9zYWZlKG1zciwg JmVycik7Cj4+ICAgICAgIHJldHVybiBlcnI7Cj4+ICB9Cj4+Cj4+IGRpZmYgLS1naXQgYS9hcmNo L3g4Ni9pbmNsdWRlL2FzbS9wYXJhdmlydF90eXBlcy5oIGIvYXJjaC94ODYvaW5jbHVkZS9hc20v cGFyYXZpcnRfdHlwZXMuaAo+PiBpbmRleCA3N2RiNTYxNmE0NzMuLjVhMDZjY2NkMzZmMCAxMDA2 NDQKPj4gLS0tIGEvYXJjaC94ODYvaW5jbHVkZS9hc20vcGFyYXZpcnRfdHlwZXMuaAo+PiArKysg Yi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9wYXJhdmlydF90eXBlcy5oCj4+IEBAIC0xNTUsMTAgKzE1 NSwxMCBAQCBzdHJ1Y3QgcHZfY3B1X29wcyB7Cj4+ICAgICAgIHZvaWQgKCpjcHVpZCkodW5zaWdu ZWQgaW50ICplYXgsIHVuc2lnbmVkIGludCAqZWJ4LAo+PiAgICAgICAgICAgICAgICAgICAgIHVu c2lnbmVkIGludCAqZWN4LCB1bnNpZ25lZCBpbnQgKmVkeCk7Cj4+Cj4+IC0gICAgIC8qIE1TUiwg UE1DIGFuZCBUU1Igb3BlcmF0aW9ucy4KPj4gLSAgICAgICAgZXJyID0gMC8tRUZBVUxULiAgd3Jt c3IgcmV0dXJucyAwLy1FRkFVTFQuICovCj4+IC0gICAgIHU2NCAoKnJlYWRfbXNyKSh1bnNpZ25l ZCBpbnQgbXNyLCBpbnQgKmVycik7Cj4+IC0gICAgIGludCAoKndyaXRlX21zcikodW5zaWduZWQg aW50IG1zciwgdW5zaWduZWQgbG93LCB1bnNpZ25lZCBoaWdoKTsKPj4gKyAgICAgLyogTVNSIG9w ZXJhdGlvbnMuCj4+ICsgICAgICAgIGVyciA9IDAvLUVJTy4gIHdybXNyIHJldHVybnMgMC8tRUlP LiAqLwo+Cj4gUGxlYXNlIGZpeCB0aGUgY29tbWVudCBmb3JtYXQgd2hpbGUgeW91J3JlIHRvdWNo aW5nIHRoaXMgOgo+Cj4gICAgICAgICAvKgo+ICAgICAgICAgICogQSBzZW50ZW5jZS4KPiAgICAg ICAgICAqIEFub3RoZXIgc2VudGVuY2UuCj4gICAgICAgICAgKi8KPgo+IE90aGVyIHRoYW4gdGhh dDoKPgo+IEFja2VkLWJ5OiBCb3Jpc2xhdiBQZXRrb3YgPGJwQHN1c2UuZGU+CgpJIGZpeGVkIHRo aXMgaW4gIng4Ni9wYXJhdmlydDogQWRkIHBhcmF2aXJ0X3tyZWFkLHdyaXRlfV9tc3IiIGxhdGVy IGluCnRoZSBzZXJpZXMuICBJcyB0aGF0IGdvb2QgZW5vdWdoPwoKLS1BbmR5CgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBs aXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZl bAo=