From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH 3/3] x86/levelling: Provide architectural OSXSAVE handling to masked native CPUID Date: Wed, 31 Aug 2016 19:29:24 +0100 Message-ID: <34efc75b-58e2-d411-cbb4-a340230bee43@citrix.com> References: <1471973170-21158-1-git-send-email-andrew.cooper3@citrix.com> <1471973170-21158-3-git-send-email-andrew.cooper3@citrix.com> <57BD79F702000078001087F4@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <57BD79F702000078001087F4@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: Xen-devel List-Id: xen-devel@lists.xenproject.org T24gMjQvMDgvMTYgMDk6NDEsIEphbiBCZXVsaWNoIHdyb3RlOgo+Pj4+IE9uIDIzLjA4LjE2IGF0 IDE5OjI2LCA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4gd3JvdGU6Cj4+IENvbnRyYXJ5IHRv IGMvcyBiMjUwN2ZlNyAieDg2L2RvbWN0bDogVXBkYXRlIFBWIGRvbWFpbiBjcHVtYXNrcyB3aGVu IHNldHRpbmcKPj4gY3B1aWQgcG9saWN5IiwgSW50ZWwgQ1BVSUQgbWFza3MgYXJlIGFwcGxpZWQg YWZ0ZXIgZmFzdCBmb3J3YXJkaW5nIGhhcmR3YXJlCj4+IHN0YXRlLCByYXRoZXIgdGhhbiBiZWZv cmUuICAoQWxsIGJlaGF2aW91ciBpbiB0aGlzIHJlZ2FyZCBhcHBlYXJzIGNvbXBsZXRlbHkKPj4g dW5kb2N1bWVudGVkIGJ5IGJvdGggSW50ZWwgYW5kIEFNRCkuCj4+Cj4+IFRoZXJlZm9yZSwgYSBz ZXQgYml0IGluIHRoZSBNU1IgY2F1c2VzIGhhcmR3YXJlIHRvIGJlIGZhc3QtZm9yd2FyZGVkLCB3 aGlsZSBhCj4+IGNsZWFyIGJpdCBmb3JjZXMgdGhlIGd1ZXN0cyB2aWV3IHRvIDAsIGV2ZW4gaWYg Q1I0Lk9TWFNBVkUgaXMgYWN0dWFsbHkgc2V0Lgo+Pgo+PiBUaGlzIGFsbG93cyBYZW4gdG8gcHJv dmlkZSBhbiBhcmNoaXRlY3R1cmFsIHZpZXcgb2YgYSBndWVzdCBrZXJuZWxzCj4+IENSNC5PU1hT QVZFIHNldHRpbmcgdG8gYW55IENQVUlEIGluc3RydWN0aW9uIGlzc3VzZWQgYnkgZ3Vlc3Qga2Vy bmVsIG9yCj4+IHVzZXJzcGFjZS4KPiBQZXJoYXBzIHdvcnRoIHNheWluZyAibm9uLVBWIENQVUlE IGluc3RydWN0aW9uIGlzc3VlZCI/CgpJIGhhdmUgZ29uZSB3aXRoICJuYXRpdmUgQ1BVSUQiLCBh bmQgYSAiZXZlbiB3aGVuIG1hc2tpbmcgaXMgdXNlZC4iIHN1ZmZpeC4KCj4KPj4gVGhlIG1hc2tp bmcgdmFsdWUgZGVmYXVsdHMgdG8gMSAoaWYgdGhlIGd1ZXN0IGhhcyBYU0FWRSBhdmFpbGFibGUp IHRvIGNhdXNlCj4+IGZhc3QtZm9yd2FyZGluZyB0byBvY2N1ciBmb3IgdGhlIEhWTSBhbmQgaWRs ZSB2Y3B1cy4KPiBJcyB0aGUgbGF0dGVyIHBhcnQgYWN0dWFsbHkgdHJ1ZT8gSSBkb24ndCB0aGlu ayBpZGxlIHZDUFUtcyBnZXQgdGhyb3VnaAo+IHVwZGF0ZV9kb21haW5fY3B1aWRfaW5mbygpLCBh cyB0aGF0IGdldHMgY2FsbGVkIHNvbGVseSBmcm9tIGEgZG9tY3RsCj4gaGFuZGxlci4KClVyZ2gg LSB0aGlzIGdvdCBjb21wbGljYXRlZCB3aGVuIEkgZml4ZWQgZG9tMC4KCkkgd2FzIHByZXZpb3Vz bHkgdXNpbmcgdGhlc2VfbWFza3MgIT0gJmNwdWlkbWFza19kZWZhdWx0cywgYnV0IHRoaXMgdGVz dApmYWlscyBmb3IgZG9tMCwgYXMgbm90aGluZyBhbGxvY2F0ZXMgc3VpdGFibGUgcGVyLWRvbWFp biBtYXNrcy4KCkkgcHJvYmFibHkgZG8gbmVlZCBhbiBleHRyYSAiJiYgIWlzX2lkbGVfdmNwdSh2 KSIgaW4gdGhlIGNvbmRpdGlvbi4gClRoYXQgd2lsbCBjYXVzZSBJZGxlIGFuZCBIVk0gZ3Vlc3Rz IHRvIGFsd2F5cyBoYXZlIHRoZSBiaXRzIHNldCwgYXMgdGhleQphcmUgc2V0IGluIHRoZSBkZWZh dWx0IG1hc2tzLgoKPgo+PiBSZXBvcmVkLWJ5OiBKYW4gQmV1bGljaCA8SkJldWxpY2hAc3VzZS5j b20+Cj4gUmVwb3J0ZWQtLi4uCgpPb3BzIHllcy4KCj4KPj4gLS0tIGEveGVuL2FyY2gveDg2L2Nw dS9hbWQuYwo+PiArKysgYi94ZW4vYXJjaC94ODYvY3B1L2FtZC5jCj4+IEBAIC0yMTEsNiArMjEx LDI0IEBAIHN0YXRpYyB2b2lkIGFtZF9jdHh0X3N3aXRjaF9sZXZlbGxpbmcoY29uc3Qgc3RydWN0 IHZjcHUgKm5leHQpCj4+ICAJCShuZXh0ZCAmJiBpc19wdl9kb21haW4obmV4dGQpICYmIG5leHRk LT5hcmNoLnB2X2RvbWFpbi5jcHVpZG1hc2tzKQo+PiAgCQk/IG5leHRkLT5hcmNoLnB2X2RvbWFp bi5jcHVpZG1hc2tzIDogJmNwdWlkbWFza19kZWZhdWx0czsKPj4gIAo+PiArCWlmICgobGV2ZWxs aW5nX2NhcHMgJiBMQ0FQXzFjZCkgPT0gTENBUF8xY2QpIHsKPj4gKwkJdWludDY0X3QgdmFsID0g bWFza3MtPl8xY2Q7Cj4+ICsKPj4gKwkJLyoKPj4gKwkJICogT1NYU0FWRSBkZWZhdWx0cyB0byAx LCB3aGljaCBjYXVzZXMgZmFzdC1mb3J3YXJkaW5nIG9mCj4+ICsJCSAqIFhlbidzIHJlYWwgc2V0 dGluZy4JQ2xvYmJlciBpdCBpZiBkaXNhYmxlZCBieSB0aGUgZ3Vlc3QKPiBUYWIgaW5zaWRlIHRo ZSBjb21tZW50PwoKT2ggeWVzIC0gSSBrbm93IGhvdyB0aGF0IHdpbGwgaGF2ZSBoYXBwZW5lZC4g IFNvcnJ5IGZvciBub3Qgbm90aWNpbmcuCgo+Cj4+ICsJCSAqIGtlcm5lbC4KPj4gKwkJICovCj4+ ICsJCWlmIChuZXh0ICYmIGlzX3B2X3ZjcHUobmV4dCkgJiYKPj4gKwkJICAgICEobmV4dC0+YXJj aC5wdl92Y3B1LmN0cmxyZWdbNF0gJiBYODZfQ1I0X09TWFNBVkUpKQo+PiArCQkJdmFsICY9IH4o KHVpbnQ2NF90KWNwdWZlYXRfbWFzayhYODZfRkVBVFVSRV9PU1hTQVZFKSA8PCAzMik7Cj4gSSBk b24ndCB0aGluayBpZGxlIHZDUFUtcyB3b3VsZCBldmVyIGhhdmUgdGhlaXIgY3RybHJlZ1s0XSB1 cGRhdGVkLCBzbwo+IG90aGVyIHRoYW4gdGhlIGRlc2NyaXB0aW9uIHNheXMgeW91IGhpZGUgdGhl IGZsYWcgaGVyZSBmb3IgdGhlbS4KCkkgc2FpZCB0aGF0IEkgd291bGRuJ3QgY2xvYmJlciB0aGUg Yml0IGZvciBpZGxlIHZjcHVzLgoKQnV0IHllcywgdGhleSB3b24ndCBoYXZlIFg4Nl9DUjRfT1NY U0FWRSBzZXQsIGJlY2F1c2Ugb2YKcmVhbF9jcjRfdG9fcHZfZ3Vlc3RfY3I0KCkKCj4gIFNpbmNl Cj4gdGhhdCBzaG91bGRuJ3QgbWF0dGVyIG11Y2ggZXhjZXB0IGZvciB0aGUgbnVtYmVyIG9mIGNh c2VzIHRoZQo+IFdSTVNSIGJlbG93IGdldHMgZXhlY3V0ZWQgYmVjYXVzZSB0aGUgbWFza3MgZGlk bid0IG1hdGNoLCBJJ20KPiBub3Qgc3VyZSB3aGV0aGVyIGl0J3MgYmV0dGVyIHRvIGZpeCBpdCBo ZXJlIG9yIHRvIGFsdGVyIHRoZSBkZXNjcmlwdGlvbi4KPiBPbmUgbWlnaHQgZ3Vlc3MgdGhhdCBm aXhpbmcgaXQgd291bGQgYmUgYmV0dGVyLCBhcyBsaWtlbHkgZ29pbmcgZm9yd2FyZAo+IG1vc3Qg KGFsbD8pIGd1ZXN0cyB3aWxsIGVuYWJsZSB4c2F2ZSwgYW5kIGhlbmNlIHdlIG1pZ2h0IHNhdmUg dGhlCj4gV1JNU1IgaW4gbW9zdCBvZiB0aGUgY2FzZXMgaWYgbm90IG5lZWRlZCBmb3IgYW55IG90 aGVyIHJlYXNvbi4KCldlIHdhbnQgYWxsIGlkbGUgdmNwdXMgYW5kIGh2bSB2Y3B1cyBydW5uaW5n IGF0IHRoZSBkZWZhdWx0cywgdG8gcmVkdWNlCnRoZSBudW1iZXIgb2YgdGltZXMgd2UgbGF6aWx5 IHN3aXRjaCBjb250ZXh0LgoKPgo+PiBAQCAtMjE4LDYgKzIzNSwxMSBAQCBzdGF0aWMgdm9pZCBf X2luaXQgbm9pbmxpbmUgaW50ZWxfaW5pdF9sZXZlbGxpbmcodm9pZCkKPj4gIAkJZWN4ICY9IG9w dF9jcHVpZF9tYXNrX2VjeDsKPj4gIAkJZWR4ICY9IG9wdF9jcHVpZF9tYXNrX2VkeDsKPj4gIAo+ PiArCQkvKiBGYXN0LWZvcndhcmQgYml0cyAtIE11c3QgYmUgc2V0LiAqLwo+PiArCQlpZiAoZWN4 ICYgY3B1ZmVhdF9tYXNrKFg4Nl9GRUFUVVJFX1hTQVZFKSkKPj4gKwkJCWVjeCB8PSBjcHVmZWF0 X21hc2soWDg2X0ZFQVRVUkVfT1NYU0FWRSk7Cj4+ICsJCWVkeCB8PSBjcHVmZWF0X21hc2soWDg2 X0ZFQVRVUkVfQVBJQyk7Cj4+ICsKPj4gIAkJY3B1aWRtYXNrX2RlZmF1bHRzLl8xY2QgJj0gKCh1 NjQpZWR4IDw8IDMyKSB8IGVjeDsKPj4gIAl9Cj4gRG8gd2UgcmVhbGx5IHdhbnQgdG8gcmVseSBv biB0aGUgbWFzayBNU1JzIHRvIGhhdmUgYWxsIGludGVyZXN0aW5nCj4gYml0cyAoYW5kIG5hbWVs eSB0aGUgdHdvIG9uZXMgcmVsZXZhbnQgaGVyZSkgc2V0IGJ5IHRoZSBmaXJtd2FyZT8KPiBJLmUu IGRvbid0IHlvdSB3YW50IHRvIGluc3RlYWQgT1IgaW4gdGhlIHR3byBiaXRzIGFmdGVyIHRoZSAm PT8KCkkgdGhpbmsgc28sIHllcy4gIElmIHRoZSBCSU9TIGdvdCBpdCB3cm9uZyB0byBzdGFydCB3 aXRoLCBYZW4gd291bGQgZmFpbAp0byBzZXQgdGhlIGZlYXR1cmVzIHVwIGluIHRoZSBmaXJzdCBw bGFjZSwgYW5kIHRoaXMgbG9naWMgd291bGRuJ3QgYXBwbHkuCgpJZiB0aGUgYml0cyBhcmUgbm90 IHNldCwgSSBkb24ndCB3YW50IHRvIHRyeSBhbmQgc2Vjb25kLWd1ZXNzIHdoYXQgbWlnaHQKYmUg Z29pbmcgb24uICBJZiBhbnlvbmUgZW5jb3VudGVycyBzdWNoIGEgc2l0dWF0aW9uLCB0aGVuIHdl IGNhbiBzZWUKYWJvdXQgcmUtZXZhbHVhdGluZy4KCn5BbmRyZXcKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=