From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH v11 08/23] x86: refactor psr: L3 CAT: set value: implement framework. Date: Tue, 30 May 2017 08:32:59 -0600 Message-ID: <592D9EBB020000780015DB32@prv-mh.provo.novell.com> References: <1493801063-38513-1-git-send-email-yi.y.sun@linux.intel.com> <1493801063-38513-9-git-send-email-yi.y.sun@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dFiCr-0003qr-17 for xen-devel@lists.xenproject.org; Tue, 30 May 2017 14:33:09 +0000 In-Reply-To: <1493801063-38513-9-git-send-email-yi.y.sun@linux.intel.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Yi Sun Cc: kevin.tian@intel.com, wei.liu2@citrix.com, he.chen@linux.intel.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, mengxu@cis.upenn.edu, xen-devel@lists.xenproject.org, chao.p.peng@linux.intel.com, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDAzLjA1LjE3IGF0IDEwOjQ0LCA8eWkueS5zdW5AbGludXguaW50ZWwuY29tPiB3cm90 ZToKPiAtLS0gYS94ZW4vYXJjaC94ODYvcHNyLmMKPiArKysgYi94ZW4vYXJjaC94ODYvcHNyLmMK PiBAQCAtMTE4LDExICsxMTgsMTMgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBmZWF0X3Byb3BzIHsK PiAgICogICAgICAgICAgICAgQ09TIElELiBFdmVyeSBlbnRyeSBvZiBjb3NfcmVmIGNvcnJlc3Bv bmRzIHRvIG9uZSBDT1MgSUQuCj4gICAqLwo+ICBzdHJ1Y3QgcHNyX3NvY2tldF9pbmZvIHsKPiAt ICAgIGJvb2wgZmVhdF9pbml0Owo+IC0gICAgc3BpbmxvY2tfdCByZWZfbG9jazsKPiAgICAgIC8q IEZlYXR1cmUgYXJyYXkncyBpbmRleCBpcyAnZW51bSBwc3JfZmVhdF90eXBlJyB3aGljaCBpcyBz YW1lIGFzICdwcm9wcycgKi8KPiAgICAgIHN0cnVjdCBmZWF0X25vZGUgKmZlYXR1cmVzW1BTUl9T T0NLRVRfRkVBVF9OVU1dOwo+ICsgICAgYm9vbCBmZWF0X2luaXQ7Cj4gICAgICB1bnNpZ25lZCBp bnQgY29zX3JlZltNQVhfQ09TX1JFR19DTlRdOwo+ICsgICAgc3BpbmxvY2tfdCByZWZfbG9jazsK ClRoaXMgc2h1ZmZsaW5nIG9mIGZpZWxkcyBzZWVtcyB1bm1vdGl2YXRlZCBhbmQgaXMgbm90IGJl aW5nIGV4cGxhaW5lZAppbiB0aGUgZGVzY3JpcHRpb24uCgo+IEBAIC0xNzgsNiArMTgwLDEwIEBA IHN0YXRpYyB2b2lkIGZyZWVfc29ja2V0X3Jlc291cmNlcyh1bnNpZ25lZCBpbnQgc29ja2V0KQo+ ICAgICAgfQo+ICAKPiAgICAgIGluZm8tPmZlYXRfaW5pdCA9IGZhbHNlOwo+ICsKPiArICAgIG1l bXNldChpbmZvLT5jb3NfcmVmLCAwLCBNQVhfQ09TX1JFR19DTlQgKiBzaXplb2YodW5zaWduZWQg aW50KSk7Cj4gKwo+ICsgICAgbWVtc2V0KGluZm8tPmRvbV9pZHMsIDAsICgoRE9NSURfSURMRSAr IDEpICsgNykgLyA4KTsKCmJpdG1hcF9jbGVhcigpCgo+IEBAIC00NDksMTEgKzQ1NSwxOSBAQCB2 b2lkIHBzcl9jdHh0X3N3aXRjaF90byhzdHJ1Y3QgZG9tYWluICpkKQo+ICAKPiAgICAgIC8qIElE TEUgZG9tYWluJ3MgJ3Bzcl9jb3NfaWRzJyBpcyBOVUxMIHNvIHdlIHNldCBkZWZhdWx0IHZhbHVl IGZvciBpdC4gKi8KPiAgICAgIGlmICggcHNyYS0+Y29zX21hc2sgKQo+IC0gICAgICAgIHBzcl9h c3NvY19jb3MoJnJlZywKPiAtICAgICAgICAgICAgICAgICAgICAgIGQtPmFyY2gucHNyX2Nvc19p ZHMgPwo+IC0gICAgICAgICAgICAgICAgICAgICAgZC0+YXJjaC5wc3JfY29zX2lkc1tjcHVfdG9f c29ja2V0KHNtcF9wcm9jZXNzb3JfaWQoKSldIDoKPiAtICAgICAgICAgICAgICAgICAgICAgIDAs Cj4gLSAgICAgICAgICAgICAgICAgICAgICBwc3JhLT5jb3NfbWFzayk7Cj4gKyAgICB7Cj4gKyAg ICAgICAgdW5zaWduZWQgaW50IHNvY2tldCA9IGNwdV90b19zb2NrZXQoc21wX3Byb2Nlc3Nvcl9p ZCgpKTsKPiArICAgICAgICBzdHJ1Y3QgcHNyX3NvY2tldF9pbmZvICppbmZvID0gc29ja2V0X2lu Zm8gKyBzb2NrZXQ7Cj4gKyAgICAgICAgdW5zaWduZWQgaW50IGNvcyA9IDA7Cj4gKwo+ICsgICAg ICAgIGlmICggZC0+YXJjaC5wc3JfY29zX2lkcyApCj4gKyAgICAgICAgICAgIGNvcyA9IGQtPmFy Y2gucHNyX2Nvc19pZHNbc29ja2V0XTsKPiArCj4gKyAgICAgICAgaWYgKCB1bmxpa2VseSghdGVz dF9iaXQoZC0+ZG9tYWluX2lkLCBpbmZvLT5kb21faWRzKSkgKQo+ICsgICAgICAgICAgICBjb3Mg PSAwOwoKSSB0aGluayBhIGJyaWVmIGNvbW1lbnQgaGVyZSB3b3VsZCBiZSBoZWxwZnVsLiBJIGFs c28gdGhpbmsgdGhlIHR3bwppZigpLXMgd291bGQgYmV0dGVyIGJlIGNvbWJpbmVkIChhZnRlciBh bGwgdG8gaW5pdGlhbGl6ZSBjb3MgdG8gemVybwphYm92ZSwgc28geW91IHNpbXBseSBuZWVkIHRv IGF2b2lkIG92ZXJ3cml0aW5nIGl0IGluIHRoZSBmaXJzdCBpZigpLgoKPiBAQCAtNTI5LDYgKzU0 MywxMCBAQCBpbnQgcHNyX2dldF92YWwoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHNv Y2tldCwKPiAgICAgIGlmICggIWZlYXQgfHwgIWZlYXRfcHJvcHNbZmVhdF90eXBlXSApCj4gICAg ICAgICAgcmV0dXJuIC1FTk9FTlQ7Cj4gIAo+ICsgICAgaWYgKCAhdGVzdF9iaXQoZC0+ZG9tYWlu X2lkLCBzb2NrZXRfaW5mb1tzb2NrZXRdLmRvbV9pZHMpICYmCj4gKyAgICAgICAgIGQtPmFyY2gu cHNyX2Nvc19pZHNbc29ja2V0XSApCj4gKyAgICAgICAgZC0+YXJjaC5wc3JfY29zX2lkc1tzb2Nr ZXRdID0gMDsKCldoYXQgaXMgdGhlIHJpZ2h0IHNpZGUgb2YgdGhlICYmIGdvb2QgZm9yPwoKQWxz byB0aGUgbGF0ZXN0IGhlcmUgaXQgaXMgY2xlYXIgdGhhdCAiZG9tX2lkcyIgaXNuJ3QgdGhlIGJl c3QgY2hvaWNlCmZvciBhIG5hbWUuIFdoYXQgYWJvdXQgImRvbV9zZXQiIG9yICJkb21haW5fc2V0 Ij8KCj4gKy8qIFRoZSB3aG9sZSBzZXQgcHJvY2VzcyBpcyBwcm90ZWN0ZWQgYnkgZG9tY3RsX2xv Y2suICovCgpUaGlzIG5lZWRzIHRvIGJlIHJlLWNvbnNpZGVyZWQ6IFdlIGludGVuZCB0byBpbmNy ZW1lbnRhbGx5CnJlZHVjZSBjb2RlIHJhbmdlcyBndWFyZGVkIGJ5IHRoZSBkb21jdGwgbG9jaywg YW5kIGEgZ29vZApmaXJzdCBzdGVwIG1pZ2h0IGJlIHRvIHN0b3AgaW50cm9kdWNpbmcgZnVydGhl ciBkZXBlbmRlbmNpZXMgb24KaXQgaW4gaW5kaXZpZHVhbCBoYW5kbGVycy4gU28gdGhlIG1haW4g cXVlc3Rpb24gaXM6IERvIHlvdSBuZWVkIGEKZ2xvYmFsIGxvY2sgaGVyZSBhdCBhbGwsIG9yIHdv dWxkIGEgcGVyLWRvbWFpbiBvbmUgc3VmZmljZT8gSW4KdGhlIGZvcm1lciBjYXNlIEkgdGhpbmsg eW91IHNob3VsZCAocmU/KWludHJvZHVjZSB5b3VyIG93biwKd2hpbGUgaW4gdGhlIGxhdHRlciBj YXNlIHlvdSBjb3VsZCBwcm9iYWJseSB1c2UgZG9tYWluX2xvY2soKSwKYnV0IHNpbmNlIHlvdSBk b24ndCByZXF1aXJlIG90aGVyIHBlci1kb21haW4gYWN0aXZpdGllcyB0byBiZQpzeW5jaHJvbml6 ZWQsIGhhdmluZyB5b3VyIG93biBwcml2YXRlIHdvdWxkIHBlcmhhcHMgYmUKZXZlbiBiZXR0ZXIu Cgo+ICtpbnQgcHNyX3NldF92YWwoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHNvY2tl dCwKPiArICAgICAgICAgICAgICAgIHVpbnQ2NF90IG5ld192YWwsIGVudW0gY2JtX3R5cGUgdHlw ZSkKPiArewo+ICsgICAgdW5zaWduZWQgaW50IG9sZF9jb3M7Cj4gKyAgICBpbnQgY29zLCByZXQ7 Cj4gKyAgICB1bnNpZ25lZCBpbnQgKnJlZjsKPiArICAgIHVpbnQzMl90ICp2YWxfYXJyYXksIHZh bDsKPiArICAgIHN0cnVjdCBwc3Jfc29ja2V0X2luZm8gKmluZm8gPSBnZXRfc29ja2V0X2luZm8o c29ja2V0KTsKPiArICAgIHVuc2lnbmVkIGludCBhcnJheV9sZW47Cj4gKyAgICBlbnVtIHBzcl9m ZWF0X3R5cGUgZmVhdF90eXBlOwo+ICsKPiArICAgIGlmICggSVNfRVJSKGluZm8pICkKPiArICAg ICAgICByZXR1cm4gUFRSX0VSUihpbmZvKTsKPiArCj4gKyAgICBpZiAoIG5ld192YWwgIT0gKHVp bnQzMl90KW5ld192YWwgKQo+ICsgICAgICAgIHJldHVybiAtRUlOVkFMOwo+ICsKPiArICAgIHZh bCA9IG5ld192YWw7CgpQbGVhc2Ugc3dpdGNoIHRoaXMgYW5kIHRoZSBwcmlvciBpZigpLCB1c2lu ZyB2YWwgaW5zdGVhZCBvZiB0aGUgY2FzdApleHByZXNzaW9uIHRoZXJlLgoKPiArICAgIGZlYXRf dHlwZSA9IHBzcl9jYm1fdHlwZV90b19mZWF0X3R5cGUodHlwZSk7Cj4gKyAgICBpZiAoIGZlYXRf dHlwZSA+PSBBUlJBWV9TSVpFKGluZm8tPmZlYXR1cmVzKSB8fAo+ICsgICAgICAgICAhaW5mby0+ ZmVhdHVyZXNbZmVhdF90eXBlXSApCj4gKyAgICAgICAgcmV0dXJuIC1FTk9FTlQ7CgpXaXRob3V0 IHNlZWluZyB0aGUgY29kZSBpbnNpZGUgdGhlIGZ1bmN0aW9ucyB5b3UgcGFzcyBmZWF0X3R5cGUK dG8gYmVsb3cgaXQncyBub3QgcmVhbGx5IGNsZWFyIHdoZXRoZXIgeW91IHdvdWxkbid0IGJldHRl ciB1c2UKd2hhdCBpcyBjdXJyZW50bHkgbmFtZWQgcHNyX2dldF9mZWF0X2FuZF90eXBlKCkgaGVy ZS4KCj4gKyBmcmVlX2FycmF5Ogo+ICsgICAgeGZyZWUodmFsX2FycmF5KTsKPiArICAgIHJldHVy biByZXQ7Cj4gKwo+ICsgdW5sb2NrX2ZyZWVfYXJyYXk6Cj4gKyAgICBzcGluX3VubG9jaygmaW5m by0+cmVmX2xvY2spOwo+ICsgICAgeGZyZWUodmFsX2FycmF5KTsKPiArICAgIHJldHVybiByZXQ7 Cj4gK30KCkknbSBzdXJlIEkndmUgc2FpZCBzbyBiZWZvcmUgLSBwbGVhc2UgZG9uJ3QgZHVwbGlj YXRlIGVycm9yIHBhdGhzIGxpa2UKdGhpcy4gSGVyZSBpdCdzIHN0aWxsIGVhc3kgdG8gc2VlIGFs bCBpcyBmaW5lLCBidXQgd2hhdCBpZiBlYWNoIHBhdGggZ2V0cwp0d28gb3IgdGhyZWUgbW9yZSB0 aGluZyBhZGRlZC4gUGxlYXNlIGNoYWluIHRoZW0gdG9nZXRoZXIgdmlhIGdvdG8uCgo+ICAvKiBD YWxsZWQgd2l0aCBkb21haW4gbG9jayBoZWxkLCBubyBleHRyYSBsb2NrIG5lZWRlZCBmb3IgJ3Bz cl9jb3NfaWRzJyAqLwo+ICBzdGF0aWMgdm9pZCBwc3JfZnJlZV9jb3Moc3RydWN0IGRvbWFpbiAq ZCkKPiAgewo+ICsgICAgdW5zaWduZWQgaW50IHNvY2tldCwgY29zOwo+ICsKPiArICAgIEFTU0VS VChzb2NrZXRfaW5mbyk7Cj4gKwo+ICsgICAgaWYgKCAhZC0+YXJjaC5wc3JfY29zX2lkcyApCj4g KyAgICAgICAgcmV0dXJuOwo+ICsKPiArICAgIC8qIERvbWFpbiBpcyBkZXN0cm9pZWQgc28gaXRz IGNvc19yZWYgc2hvdWxkIGJlIGRlY3JlYXNlZC4gKi8KCmRlc3Ryb3llZAoKPiArICAgIGZvciAo IHNvY2tldCA9IDA7IHNvY2tldCA8IG5yX3NvY2tldHM7IHNvY2tldCsrICkKPiArICAgIHsKPiAr ICAgICAgICBzdHJ1Y3QgcHNyX3NvY2tldF9pbmZvICppbmZvOwo+ICsKPiArICAgICAgICAvKiBj b3MgMCBpcyBkZWZhdWx0IG9uZSB3aGljaCBkb2VzIG5vdCBuZWVkIGJlIGhhbmRsZWQuICovCj4g KyAgICAgICAgY29zID0gZC0+YXJjaC5wc3JfY29zX2lkc1tzb2NrZXRdOwo+ICsgICAgICAgIGlm ICggY29zID09IDAgKQo+ICsgICAgICAgICAgICBjb250aW51ZTsKCkRvZXMgdGhpcyAiZG9lc24n dCBuZWVkIHRvIGJlIGhhbmRsZWQiIGV2ZW4gZXh0ZW5kIHRvIC4uLgoKPiArICAgICAgICBpbmZv ID0gc29ja2V0X2luZm8gKyBzb2NrZXQ7Cj4gKyAgICAgICAgc3Bpbl9sb2NrKCZpbmZvLT5yZWZf bG9jayk7Cj4gKyAgICAgICAgQVNTRVJUKGluZm8tPmNvc19yZWZbY29zXSk7Cj4gKyAgICAgICAg aW5mby0+Y29zX3JlZltjb3NdLS07Cj4gKyAgICAgICAgc3Bpbl91bmxvY2soJmluZm8tPnJlZl9s b2NrKTsKPiArCj4gKyAgICAgICAgY2xlYXJfYml0KGQtPmRvbWFpbl9pZCwgaW5mby0+ZG9tX2lk cyk7CgouLi4gdGhpcyBsYXN0IHBhcnQ/CgpKYW4KCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxp c3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=