From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: Re: [PATCH] x86/vpmu: Add get/put_vpmu() and VPMU_ENABLED Date: Thu, 16 Feb 2017 12:31:05 -0500 Message-ID: References: <1487257151-3648-1-git-send-email-boris.ostrovsky@oracle.com> <58A5E882020000780013ADB8@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <58A5E882020000780013ADB8@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: andrew.cooper3@citrix.com, kevin.tian@intel.com, jun.nakajima@intel.com, suravee.suthikulpanit@amd.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org CgpPbiAwMi8xNi8yMDE3IDExOjU5IEFNLCBKYW4gQmV1bGljaCB3cm90ZToKPj4+PiBPbiAxNi4w Mi4xNyBhdCAxNTo1OSwgPGJvcmlzLm9zdHJvdnNreUBvcmFjbGUuY29tPiB3cm90ZToKPj4gdnBt dV9lbmFibGVkKCkgKHVzZWQgYnkgaHZtL3B2X2NwdWlkKCkgdG8gcHJvcGVybHkgcmVwb3J0IDB4 YSBsZWFmCj4+IGZvciBJbnRlbCBwcm9jZXNzb3JzKSBpcyBiYXNlZCBvbiB0aGUgdmFsdWUgb2Yg VlBNVV9DT05URVhUX0FMTE9DQVRFRAo+PiBiaXQuIFRoaXMgaXMgcHJvYmxlbWF0aWM6Cj4+ICog Rm9yIEhWTSBndWVzdHMgVlBNVSBjb250ZXh0IGlzIGFsbG9jYXRlZCBsYXppbHksIGR1cmluZyB0 aGUgZmlyc3QKPj4gICBhY2Nlc3MgdG8gVlBNVSBNU1JzLiBTaW5jZSB0aGUgbGVhZiBpcyB0eXBp Y2FsbHkgcXVlcmllZCBiZWZvcmUgZ3Vlc3QKPj4gICBhdHRlbXB0cyB0byByZWFkIG9yIHdyaXRl IHRoZSBNU1JzIGl0IGlzIGxpa2VseSB0aGF0IENQVUlEIHdpbGwgcmVwb3J0Cj4+ICAgbm8gUE1V IHN1cHBvcnQKPj4gKiBGb3IgUFYgZ3Vlc3RzIHRoZSBjb250ZXh0IGlzIGFsbG9jYXRlZCBlYWdl cmx5IGJ1dCBvbmx5IGluIHJlc3BvbmNlIHRvCj4+ICAgZ3Vlc3QncyBYRU5QTVVfaW5pdCBoeXBl cmNhbGwuIFRoZXJlIGlzIGEgY2hhbmNlIHRoYXQgdGhlIGd1ZXN0IHdpbGwKPj4gICB0cnkgdG8g cmVhZCBDUFVJRCBiZWZvcmUgbWFraW5nIHRoaXMgaHlwZXJjYWxsLgo+Pgo+PiBUaGlzIHBhdGNo IGludHJvZHVjZXMgVlBNVV9FTkFCTEVEIGZsYWcgd2hpY2ggaXMgc2V0IChzdWJqZWN0IHRvIHZw bXVfbW9kZQo+PiBjb25zdHJhaW50cykgZHVyaW5nIFZDUFUgaW5pdGlhbGl6YXRpb24gZm9yIGJv dGggUFYgYW5kIEhWTSBndWVzdHMuIFNpbmNlCj4+IHRoaXMgZmxhZyBpcyBleHBlY3RlZCB0byBi ZSBtYW5hZ2VkIHRvZ2V0aGVyIHdpdGggdnBtdV9jb3VudCwgZ2V0L3B1dF92cG11KCkKPj4gYXJl IGFkZGVkIHRvIHNpbXBsaWZ5IGNvZGUuCj4KPiBJIHRoaW5rIFZQTVVfRU5BQkxFRCBpcyBtaXNs ZWFkaW5nLCBhcyBpdCBtYXkgYXMgd2VsbCBtZWFuIHRoZSBzdGF0ZQo+IGFmdGVyIHRoZSBndWVz dCBkaWQgZW5hYmxlIGl0LiBIb3cgYWJvdXQgVlBNVV9BVkFJTEFCTEU/CgoKT0suIEFuZCB0aGVu IHZwbXVfZW5hYmxlZCgpIHNob3VsZCBiZSByZW5hbWVkIGFjY29yZGluZ2x5LgoKPgo+PiBAQCAt NTA5LDE1ICs0OTgsNjMgQEAgdm9pZCB2cG11X2luaXRpYWxpc2Uoc3RydWN0IHZjcHUgKnYpCj4+ ICAgICAgaWYgKCByZXQgKQo+PiAgICAgICAgICBwcmludGsoWEVOTE9HX0dfV0FSTklORyAiVlBN VTogSW5pdGlhbGl6YXRpb24gZmFpbGVkIGZvciAlcHZcbiIsIHYpOwo+Pgo+PiAtICAgIC8qIElu dGVsIG5lZWRzIHRvIGluaXRpYWxpemUgVlBNVSBvcHMgZXZlbiBpZiBWUE1VIGlzIG5vdCBpbiB1 c2UgKi8KPj4gLSAgICBpZiAoICFpc19wcml2X3ZwbXUgJiYKPj4gLSAgICAgICAgIChyZXQgfHwg KHZwbXVfbW9kZSA9PSBYRU5QTVVfTU9ERV9PRkYpIHx8Cj4+IC0gICAgICAgICAgKHZwbXVfbW9k ZSA9PSBYRU5QTVVfTU9ERV9BTEwpKSApCj4+ICsgICAgcmV0dXJuIHJldDsKPj4gK30KPj4gKwo+ PiArc3RhdGljIHZvaWQgZ2V0X3ZwbXUoc3RydWN0IHZjcHUgKnYpCj4+ICt7Cj4+ICsgICAgc3Bp bl9sb2NrKCZ2cG11X2xvY2spOwo+PiArCj4+ICsgICAgLyoKPj4gKyAgICAgKiBDb3VudCBhY3Rp dmUgVlBNVXMgc28gdGhhdCB3ZSB3b24ndCB0cnkgdG8gY2hhbmdlIHZwbXVfbW9kZSB3aGlsZQo+ PiArICAgICAqIHRoZXkgYXJlIGluIHVzZS4KPj4gKyAgICAgKiB2cG11X21vZGUgY2FuIGJlIHNh ZmVseSB1cGRhdGVkIHdoaWxlIGRvbTAncyBWUE1VcyBhcmUgYWN0aXZlIGFuZAo+PiArICAgICAq IHNvIHdlIGRvbid0IG5lZWQgdG8gaW5jbHVkZSBpdCBpbiB0aGUgY291bnQuCj4+ICsgICAgICov Cj4+ICsgICAgaWYgKCAhaXNfaGFyZHdhcmVfZG9tYWluKHYtPmRvbWFpbikgJiYKPj4gKyAgICAg ICAgKHZwbXVfbW9kZSAmIChYRU5QTVVfTU9ERV9TRUxGIHwgWEVOUE1VX01PREVfSFYpKSApCj4+ ICsgICAgewo+PiArICAgICAgICB2cG11X2NvdW50Kys7Cj4+ICsgICAgICAgIHZwbXVfc2V0KHZj cHVfdnBtdSh2KSwgVlBNVV9FTkFCTEVEKTsKPj4gKyAgICB9Cj4+ICsgICAgZWxzZSBpZiAoIGlz X2hhcmR3YXJlX2RvbWFpbih2LT5kb21haW4pICYmCj4+ICsgICAgICAgICAgICAgICh2cG11X21v ZGUgIT0gWEVOUE1VX01PREVfT0ZGKSApCj4+ICsgICAgICAgIHZwbXVfc2V0KHZjcHVfdnBtdSh2 KSwgVlBNVV9FTkFCTEVEKTsKPj4gKwo+PiArICAgIHNwaW5fdW5sb2NrKCZ2cG11X2xvY2spOwo+ PiArfQo+PiArCj4+ICtzdGF0aWMgdm9pZCBwdXRfdnBtdShzdHJ1Y3QgdmNwdSAqdikKPj4gK3sK Pj4gKyAgICBpZiAoICF2cG11X2lzX3NldCh2Y3B1X3ZwbXUodiksIFZQTVVfRU5BQkxFRCkgKQo+ PiArICAgICAgICByZXR1cm47Cj4+ICsKPj4gKyAgICBzcGluX2xvY2soJnZwbXVfbG9jayk7Cj4+ ICsKPj4gKyAgICBpZiAoICFpc19oYXJkd2FyZV9kb21haW4odi0+ZG9tYWluKSAmJgo+PiArICAg ICAgICAgKHZwbXVfbW9kZSAmIChYRU5QTVVfTU9ERV9TRUxGIHwgWEVOUE1VX01PREVfSFYpKSAp Cj4+ICAgICAgewo+PiAtICAgICAgICBzcGluX2xvY2soJnZwbXVfbG9jayk7Cj4+ICAgICAgICAg IHZwbXVfY291bnQtLTsKPj4gLSAgICAgICAgc3Bpbl91bmxvY2soJnZwbXVfbG9jayk7Cj4+ICsg ICAgICAgIHZwbXVfcmVzZXQodmNwdV92cG11KHYpLCBWUE1VX0VOQUJMRUQpOwo+Cj4gSSB0aGlu ayB5b3UgbmVlZCB0byByZS1jaGVjayBWUE1VX0VOQUJMRUQgYWZ0ZXIgYWNxdWlyaW5nIHRoZSBs b2NrLAo+IGluIG9yZGVyIHRvIGF2b2lkIGRlY3JlbWVudGluZyB2cG11X2NvdW50IHR3aWNlIGlu IGNhc2Ugb2YgYSByYWNlLgoKSSBjYW4ganVzdCBtb3ZlIHRoZSBjaGVjayB1bmRlciB0aGUgbG9j ay4gVGhpcyBpcyBuZXZlciBvbiBjcml0aWNhbCBwYXRoIAooYW5kIHJhcmVseSB3aWxsIHdlIGNv bWUgaGVyZSB3aXRoIHRoZSBiaXQgb2ZmKSBzbyB0YWtpbmcgdGhlIGxvY2sgCnVubmVjZXNzYXJp bHkgc2hvdWxkbid0IGJlIGEgcHJvYmxlbS4KCj4KPiBBbHNvIHRoaXMgbmV3IG1vZGVsIGJhc2lj YWxseSBsaW1pdHMgdGhlIG9wcG9ydHVuaXR5IHRvIGNoYW5nZSB0aGUKPiBtb2RlIHRvIHRoZSBj YXNlIHdoZXJlIG5vIGd1ZXN0IGF0IGFsbCBpcyBydW5uaW5nLCBpaXVjLiBQcmV2aW91c2x5Cj4g dGhpcyB3b3VsZCBoYXZlIGJlZW4gcG9zc2libGUgd2l0aCBhbnkgbnVtYmVyIG9mIGd1ZXN0cyBy dW5uaW5nLAo+IGFzIGxvbmcgYXMgbm9uZSBvZiB0aGVtIGFjdHVhbGx5IHVzZWQgdGhlIHZQTVUu CgpJIGRvbid0IHRoaW5rIG11Y2ggY2hhbmdlZC4gVGhlIG9ubHkgZGlmZmVyZW5jZSBpcyB0aGF0 IGZvciBQViBndWVzdHMgd2UgCmJ1bXAgdnBtdV9jb3VudCBhdCBWQ1BVIGNyZWF0aW9uIGFzIG9w cG9zZWQgdG8gZHVyaW5nIHRoZSBoeXBlcmNhbGwuCgpBbmQgSFZNIGd1ZXN0cyBhbHdheXMgaW5j cmVtZW50ZWQgdGhlIGNvdW50IGR1cmluZyB2Y3B1X2luaXRpYWxpc2UoKS4KCldpdGggdGhpcyBw YXRjaCB3ZSBzdGlsbCBjYW4gY2hhbmdlIGJldHdlZW4gU0VMRiBhbmQgSFYgYXQgYW55IHRpbWUs IAp3aGV0aGVyIG9yIG5vdCBhbnlvbmUgaXMgcnVubmluZy4KCi1ib3JpcwoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZl bAo=