From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: Re: [PATCH v12 08/23] x86: refactor psr: L3 CAT: set value: implement framework. Date: Wed, 28 Jun 2017 17:09:32 +0800 Message-ID: <20170628090932.GZ3420@yi.y.sun> References: <1497402776-22348-1-git-send-email-yi.y.sun@linux.intel.com> <1497402776-22348-9-git-send-email-yi.y.sun@linux.intel.com> <5953577302000078001015DE@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dQ8z5-00066I-ED for xen-devel@lists.xenproject.org; Wed, 28 Jun 2017 09:10:03 +0000 Content-Disposition: inline In-Reply-To: <5953577302000078001015DE@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: 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 T24gMTctMDYtMjggMDE6MTQ6NTksIEphbiBCZXVsaWNoIHdyb3RlOgo+ID4+PiBZaSBTdW4gPHlp Lnkuc3VuQGxpbnV4LmludGVsLmNvbT4gMDYvMTQvMTcgMzoyNSBBTSA+Pj4KPiA+IEBAIC0xNzks NiArMTgyLDEwIEBAIHN0YXRpYyB2b2lkIGZyZWVfc29ja2V0X3Jlc291cmNlcyh1bnNpZ25lZCBp bnQgc29ja2V0KQo+ID4gICAgICB9Cj4gPiAgCj4gPiAgICAgIGluZm8tPmZlYXRfaW5pdCA9IGZh bHNlOwo+ID4gKwo+ID4gKyAgICBtZW1zZXQoaW5mby0+Y29zX3JlZiwgMCwgTUFYX0NPU19SRUdf Q05UICogc2l6ZW9mKHVuc2lnbmVkIGludCkpOwo+ID4gKwo+ID4gKyAgICBiaXRtYXBfemVybyhp bmZvLT5kb21fc2V0LCBET01JRF9JRExFICsgMSk7Cj4gPiAgfQo+IAo+IEkgY2FuIHNlZSB0aGUg cG9pbnQgb2YgdGhlIGxhdHRlciAoYXMgeW91IGFkZCB0aGUgbmV3IHN0cnVjdHVyZSBtZW1iZXIp LCBidXQKPiBpZiB0aGUgZm9ybWVyIGlzIG5lY2Vzc2FyeSwgc2hvdWxkbid0IGl0IGhhdmUgYmVl biBkb25lIGluIGFuIGVhcmxpZXIgcGF0Y2g/Cj4gT3Igc2hvdWxkIGJlIGZpZWxkIG9ubHkgYmUg aW50cm9kdWNlZCBoZXJlPwo+IApZb3UgYXJlIHJpZ2h0LiBJIHdpbGwgbW92ZSB0aGUgY29zX3Jl ZiBjbGVhcmluZyBpbnRvIGVhcmxpZXIgcGF0Y2guCgo+ID4gQEAgLTUzNyw3ICs1NTYsMTYgQEAg aW50IHBzcl9nZXRfdmFsKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBzb2NrZXQsCj4g PiAgICAgICAgICByZXR1cm4gLUVOT0VOVDsKPiA+ICAgICAgfQo+ID4gIAo+ID4gKyAgICBkb21h aW5fbG9jayhkKTsKPiA+ICsgICAgaWYgKCAhdGVzdF9iaXQoZC0+ZG9tYWluX2lkLCBzb2NrZXRf aW5mb1tzb2NrZXRdLmRvbV9zZXQpICkKPiA+ICsgICAgewo+ID4gKyAgICAgICAgZC0+YXJjaC5w c3JfY29zX2lkc1tzb2NrZXRdID0gMDsKPiA+ICsgICAgICAgIHNldF9iaXQoZC0+ZG9tYWluX2lk LCBzb2NrZXRfaW5mb1tzb2NrZXRdLmRvbV9zZXQpOwo+ID4gKyAgICB9Cj4gCj4gQW55IHJlYXNv biBub3QgdG8gdXNlIHRlc3RfYW5kX3NldF9iaXQoKSBoZXJlPyBJLmUuIGlzIHRoaXMgb24gYW55 IGhvdCBwYXRoPwo+IE9yIHdhaXQgLSBJIHRoaW5rIGl0J3MgZXZlbiB3cm9uZyB0byBzcGxpdCB0 aGUgdGVzdCBmcm9tIHRoZSBzZXQsIGFzIHRoZSBsb2NrCj4gZG9lc24ndCBwcm90ZWN0IGRvbV9z ZXRbXS4KPiAKV2lsbCBjaGFuZ2UgaXQgdG8gdGVzdF9hbmRfc2V0X2JpdC4KCj4gPiAraW50IHBz cl9zZXRfdmFsKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBzb2NrZXQsCj4gPiArICAg ICAgICAgICAgICAgIHVpbnQ2NF90IG5ld192YWwsIGVudW0gY2JtX3R5cGUgdHlwZSkKPiA+ICt7 Cj4gPiArICAgIHVuc2lnbmVkIGludCBvbGRfY29zLCBhcnJheV9sZW47Cj4gPiArICAgIGludCBj b3MsIHJldDsKPiA+ICsgICAgdW5zaWduZWQgaW50ICpyZWY7Cj4gPiArICAgIHVpbnQzMl90ICp2 YWxfYXJyYXksIHZhbDsKPiA+ICsgICAgc3RydWN0IHBzcl9zb2NrZXRfaW5mbyAqaW5mbyA9IGdl dF9zb2NrZXRfaW5mbyhzb2NrZXQpOwo+ID4gKyAgICBlbnVtIHBzcl9mZWF0X3R5cGUgZmVhdF90 eXBlOwo+ID4gKwo+ID4gKyAgICBpZiAoIElTX0VSUihpbmZvKSApCj4gPiArICAgICAgICByZXR1 cm4gUFRSX0VSUihpbmZvKTsKPiA+ICsKPiA+ICsgICAgdmFsID0gbmV3X3ZhbDsKPiA+ICsgICAg aWYgKCBuZXdfdmFsICE9IHZhbCApCj4gPiArICAgICAgICByZXR1cm4gLUVJTlZBTDsKPiA+ICsK PiA+ICsgICAgZmVhdF90eXBlID0gcHNyX2NibV90eXBlX3RvX2ZlYXRfdHlwZSh0eXBlKTsKPiA+ ICsgICAgaWYgKCBmZWF0X3R5cGUgPj0gQVJSQVlfU0laRShpbmZvLT5mZWF0dXJlcykgfHwKPiA+ ICsgICAgICAgICAhaW5mby0+ZmVhdHVyZXNbZmVhdF90eXBlXSApCj4gPiArICAgICAgICByZXR1 cm4gLUVOT0VOVDsKPiA+ICsKPiA+ICsgICAgLyoKPiA+ICsgICAgICogU3RlcCAwOgo+ID4gKyAg ICAgKiBvbGRfY29zIG1lYW5zIHRoZSBDT1MgSUQgY3VycmVudCBkb21haW4gaXMgdXNpbmcuIEJ5 IGRlZmF1bHQsIGl0IGlzIDAuCj4gPiArICAgICAqCj4gPiArICAgICAqIEZvciBldmVyeSBDT1Mg SUQsIHRoZXJlIGlzIGEgcmVmZXJlbmNlIGNvdW50IHRvIHJlY29yZCBob3cgbWFueSBkb21haW5z Cj4gPiArICAgICAqIGFyZSB1c2luZyB0aGUgQ09TIHJlZ2lzdGVyIGNvcnJlc3BvbmRpbmcgdG8g dGhpcyBDT1MgSUQuCj4gPiArICAgICAqIC0gSWYgcmVmW29sZF9jb3NdIGlzIDAsIHRoYXQgbWVh bnMgdGhpcyBDT1MgaXMgbm90IHVzZWQgYnkgYW55IGRvbWFpbi4KPiA+ICsgICAgICogLSBJZiBy ZWZbb2xkX2Nvc10gaXMgMSwgdGhhdCBtZWFucyB0aGlzIENPUyBpcyBvbmx5IHVzZWQgYnkgY3Vy cmVudAo+ID4gKyAgICAgKiAgIGRvbWFpbi4KPiA+ICsgICAgICogLSBJZiByZWZbb2xkX2Nvc10g aXMgbW9yZSB0aGFuIDEsIHRoYXQgbWVhbiBtdWx0aXBsZSBkb21haW5zIGFyZSB1c2luZwo+ID4g KyAgICAgKiAgIHRoaXMgQ09TLgo+ID4gKyAgICAgKi8KPiA+ICsgICAgZG9tYWluX2xvY2soZCk7 Cj4gPiArICAgIGlmICggIXRlc3RfYml0KGQtPmRvbWFpbl9pZCwgaW5mby0+ZG9tX3NldCkgKQo+ ID4gKyAgICB7Cj4gPiArICAgICAgICBkLT5hcmNoLnBzcl9jb3NfaWRzW3NvY2tldF0gPSAwOwo+ ID4gKyAgICAgICAgc2V0X2JpdChkLT5kb21haW5faWQsIGluZm8tPmRvbV9zZXQpOwo+ID4gKyAg ICB9Cj4gCj4gU2FtZSBoZXJlLgo+IAo+ID4gKyAgICBvbGRfY29zID0gZC0+YXJjaC5wc3JfY29z X2lkc1tzb2NrZXRdOwo+ID4gKyAgICBkb21haW5fdW5sb2NrKGQpOwo+ID4gKwo+ID4gKyAgICBB U1NFUlQob2xkX2NvcyA8IE1BWF9DT1NfUkVHX0NOVCk7Cj4gPiArCj4gPiArICAgIHJlZiA9IGlu Zm8tPmNvc19yZWY7Cj4gPiArCj4gPiArICAgIC8qCj4gPiArICAgICAqIFN0ZXAgMToKPiA+ICsg ICAgICogR2F0aGVyIGEgdmFsdWUgYXJyYXkgdG8gc3RvcmUgYWxsIGZlYXR1cmVzIGNvc19yZWdf dmFsW29sZF9jb3NdLgo+ID4gKyAgICAgKiBBbmQsIHNldCB0aGUgaW5wdXQgbmV3IHZhbCBpbnRv IGFycmF5IGFjY29yZGluZyB0byB0aGUgZmVhdHVyZSdzCj4gPiArICAgICAqIHBvc2l0aW9uIGlu IGFycmF5Lgo+ID4gKyAgICAgKi8KPiA+ICsgICAgYXJyYXlfbGVuID0gZ2V0X2Nvc19udW0oaW5m byk7Cj4gPiArICAgIHZhbF9hcnJheSA9IHh6YWxsb2NfYXJyYXkodWludDMyX3QsIGFycmF5X2xl bik7Cj4gPiArICAgIGlmICggIXZhbF9hcnJheSApCj4gPiArICAgICAgICByZXR1cm4gLUVOT01F TTsKPiA+ICsKPiA+ICsgICAgaWYgKCAocmV0ID0gZ2F0aGVyX3ZhbF9hcnJheSh2YWxfYXJyYXks IGFycmF5X2xlbiwgaW5mbywgb2xkX2NvcykpICE9IDAgKQo+ID4gKyAgICAgICAgZ290byBmcmVl X2FycmF5Owo+ID4gKwo+ID4gKyAgICBpZiAoIChyZXQgPSBpbnNlcnRfdmFsX2ludG9fYXJyYXko dmFsX2FycmF5LCBhcnJheV9sZW4sIGluZm8sCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBmZWF0X3R5cGUsIHR5cGUsIHZhbCkpICE9IDAgKQo+ID4gKyAgICAgICAg Z290byBmcmVlX2FycmF5Owo+ID4gKwo+ID4gKyAgICBzcGluX2xvY2soJmluZm8tPnJlZl9sb2Nr KTsKPiA+ICsKPiA+ICsgICAgLyoKPiA+ICsgICAgICogU3RlcCAyOgo+ID4gKyAgICAgKiBUcnkg dG8gZmluZCBpZiB0aGVyZSBpcyBhbHJlYWR5IGEgQ09TIElEIG9uIHdoaWNoIGFsbCBmZWF0dXJl cycgdmFsdWVzCj4gPiArICAgICAqIGFyZSBzYW1lIGFzIHRoZSBhcnJheS4gVGhlbiwgd2UgY2Fu IHJldXNlIHRoaXMgQ09TIElELgo+ID4gKyAgICAgKi8KPiA+ICsgICAgY29zID0gZmluZF9jb3Mo dmFsX2FycmF5LCBhcnJheV9sZW4sIGZlYXRfdHlwZSwgaW5mbyk7Cj4gPiArICAgIGlmICggY29z ID09IG9sZF9jb3MgKQo+ID4gKyAgICB7Cj4gPiArICAgICAgICByZXQgPSAwOwo+ID4gKyAgICAg ICAgZ290byB1bmxvY2tfZnJlZV9hcnJheTsKPiA+ICsgICAgfQo+ID4gKwo+ID4gKyAgICAvKgo+ ID4gKyAgICAgKiBTdGVwIDM6Cj4gPiArICAgICAqIElmIGZhaWwgdG8gZmluZCwgd2UgbmVlZCBw aWNrIGFuIGF2YWlsYWJsZSBDT1MgSUQuCj4gPiArICAgICAqIEluIGZhY3QsIG9ubHkgQ09TIElE IHdoaWNoIHJlZiBpcyAxIG9yIDAgY2FuIGJlIHBpY2tlZCBmb3IgY3VycmVudAo+ID4gKyAgICAg KiBkb21haW4uIElmIG9sZF9jb3MgaXMgbm90IDAgYW5kIGl0cyByZWY9PTEsIHRoYXQgbWVhbnMg b25seSBjdXJyZW50Cj4gPiArICAgICAqIGRvbWFpbiBpcyB1c2luZyB0aGlzIG9sZF9jb3MgSUQu IFNvLCB0aGlzIG9sZF9jb3MgSUQgY2VydGFpbmx5IGNhbgo+ID4gKyAgICAgKiBiZSByZXVzZWQg YnkgY3VycmVudCBkb21haW4uIFJlZj09MCBtZWFucyB0aGVyZSBpcyBubyBhbnkgZG9tYWluCj4g PiArICAgICAqIHVzaW5nIHRoaXMgQ09TIElELiBTbyBpdCBjYW4gYmUgdXNlZCBmb3IgY3VycmVu dCBkb21haW4gdG9vLgo+ID4gKyAgICAgKi8KPiA+ICsgICAgaWYgKCBjb3MgPCAwICkKPiA+ICsg ICAgewo+ID4gKyAgICAgICAgY29zID0gcGlja19hdmFpbF9jb3MoaW5mbywgdmFsX2FycmF5LCBh cnJheV9sZW4sIG9sZF9jb3MsIGZlYXRfdHlwZSk7Cj4gPiArICAgICAgICBpZiAoIGNvcyA8IDAg KQo+ID4gKyAgICAgICAgewo+ID4gKyAgICAgICAgICAgIHJldCA9IGNvczsKPiA+ICsgICAgICAg ICAgICBnb3RvIHVubG9ja19mcmVlX2FycmF5Owo+ID4gKyAgICAgICAgfQo+ID4gKwo+ID4gKyAg ICAgICAgLyoKPiA+ICsgICAgICAgICAqIFN0ZXAgNDoKPiA+ICsgICAgICAgICAqIFdyaXRlIHRo ZSBmZWF0dXJlJ3MgTVNScyBhY2NvcmRpbmcgdG8gdGhlIENPUyBJRC4KPiA+ICsgICAgICAgICAq Lwo+ID4gKyAgICAgICAgcmV0ID0gd3JpdGVfcHNyX21zcnMoc29ja2V0LCBjb3MsIHZhbF9hcnJh eSwgYXJyYXlfbGVuLCBmZWF0X3R5cGUpOwo+ID4gKyAgICAgICAgaWYgKCByZXQgKQo+ID4gKyAg ICAgICAgICAgIGdvdG8gdW5sb2NrX2ZyZWVfYXJyYXk7Cj4gPiArICAgIH0KPiA+ICsKPiA+ICsg ICAgLyoKPiA+ICsgICAgICogU3RlcCA1Ogo+ID4gKyAgICAgKiBGaW5kIHRoZSBDT1MgSUQgKGZp bmRfY29zIHJlc3VsdCBpcyAnPj0gMCcgb3IgYW4gYXZhaWxhYmxlIENPUyBJRCBpcwo+ID4gKyAg ICAgKiBwaWNrZWQsIHRoZW4gdXBkYXRlIHJlZiBhY2NvcmRpbmcgdG8gQ09TIElELgo+ID4gKyAg ICAgKi8KPiA+ICsgICAgcmVmW2Nvc10rKzsKPiA+ICsgICAgQVNTRVJUKCFjb3MgfHwgcmVmW2Nv c10pOwo+ID4gKyAgICBBU1NFUlQoIW9sZF9jb3MgfHwgcmVmW29sZF9jb3NdKTsKPiA+ICsgICAg cmVmW29sZF9jb3NdLS07Cj4gPiArICAgIHNwaW5fdW5sb2NrKCZpbmZvLT5yZWZfbG9jayk7Cj4g PiArCj4gPiArICAgIC8qCj4gPiArICAgICAqIFN0ZXAgNjoKPiA+ICsgICAgICogU2F2ZSB0aGUg Q09TIElEIGludG8gY3VycmVudCBkb21haW4ncyBwc3JfY29zX2lkc1tdIHNvIHRoYXQgd2UgY2Fu IGtub3cKPiA+ICsgICAgICogd2hpY2ggQ09TIHRoZSBkb21haW4gaXMgdXNpbmcgb24gdGhlIHNv Y2tldC4gT25lIGRvbWFpbiBjYW4gb25seSB1c2UKPiA+ICsgICAgICogb25lIENPUyBJRCBhdCBz YW1lIHRpbWUgb24gZWFjaCBzb2NrZXQuCj4gPiArICAgICAqLwo+ID4gKyAgICBkb21haW5fbG9j ayhkKTsKPiA+ICsgICAgZC0+YXJjaC5wc3JfY29zX2lkc1tzb2NrZXRdID0gY29zOwo+ID4gKyAg ICBkb21haW5fdW5sb2NrKGQpOwo+ID4gKwo+ID4gKyAgICAvKgo+ID4gKyAgICAgKiBTdGVwIDc6 Cj4gPiArICAgICAqIFRoZW4sIHNldCB0aGUgZG9tX3NldCBiaXQgd2hpY2ggY29ycmVzcG9uZHMg dG8gZG9tYWluX2lkIHRvIG1hcmsgdGhpcwo+ID4gKyAgICAgKiBkb21haW4gaGFzIGJlZW4gc2V0 IGFuZCB0aGUgQ09TIElEIG9mIHRoZSBkb21haW4gaXMgdmFsaWQuCj4gPiArICAgICAqLwo+ID4g KyAgICBzZXRfYml0KGQtPmRvbWFpbl9pZCwgaW5mby0+ZG9tX3NldCk7Cj4gCj4gV2l0aCB0aGUg d2F5IHRoaW5ncyBhcmUgYmVpbmcgZG9uZSBhYm92ZSwgZG9lc24ndCB0aGlzIGJlbG9uZyBpbiB0 aGUKPiBkb21haW5fbG9jaygpLWVkIHJlZ2lvbj8KPiAKWWVzLCBzaG91bGQgYmUuIFRoYW5rcyEK Cj4gSmFuCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlz dHMueGVuLm9yZy94ZW4tZGV2ZWwK