From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v9 11/25] x86: refactor psr: L3 CAT: set value: implement cos finding flow. Date: Thu, 16 Mar 2017 19:08:01 +0800 Message-ID: <1489662495-5375-12-git-send-email-yi.y.sun@linux.intel.com> References: <1489662495-5375-1-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.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1coTM6-0004Pf-ST for xen-devel@lists.xenproject.org; Thu, 16 Mar 2017 11:14:06 +0000 In-Reply-To: <1489662495-5375-1-git-send-email-yi.y.sun@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: kevin.tian@intel.com, wei.liu2@citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, he.chen@linux.intel.com, ian.jackson@eu.citrix.com, Yi Sun , mengxu@cis.upenn.edu, jbeulich@suse.com, chao.p.peng@linux.intel.com, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org Q29udGludWUgZnJvbSBwYXRjaDoKJ3g4NjogcmVmYWN0b3IgcHNyOiBMMyBDQVQ6IHNldCB2YWx1 ZTogYXNzZW1ibGUgZmVhdHVyZXMgdmFsdWUgYXJyYXknCgpXZSBjYW4gdHJ5IHRvIGZpbmQgaWYg dGhlcmUgaXMgYSBDT1MgSUQgb24gd2hpY2ggYWxsIGZlYXR1cmVzJyBDT1MgcmVnaXN0ZXJzCnZh bHVlcyBhcmUgc2FtZSBhcyB0aGUgYXJyYXkgYXNzZW1ibGVkIGJlZm9yZS4KClNpZ25lZC1vZmYt Ynk6IFlpIFN1biA8eWkueS5zdW5AbGludXguaW50ZWwuY29tPgotLS0Kdjk6CiAgICAtIG1vZGlm eSBjb21tZW50cyBvZiAnY29tcGFyZV92YWwnIHRvIGJlIHNhbWUgYXMgY3VycmVudCBpbXBsZW1l bnRhdGlvbi4KICAgICAgKHN1Z2dlc3RlZCBieSBXZWkgTGl1KQogICAgLSBmaXggaW5kZW50YXRp b24gaXNzdWUuCiAgICAgIChzdWdnZXN0ZWQgYnkgV2VpIExpdSkKICAgIC0gcmVuYW1lICdsM19j YXRfY29tcGFyZV92YWwnIHRvICdjYXRfY29tcGFyZV92YWwnIHRvIGNvdmVyIGFsbCBMMy9MMiBD QVQKICAgICAgZmVhdHVyZXMuCiAgICAgIChzdWdnZXN0ZWQgYnkgUm9nZXIgUGF1KQogICAgLSBy ZW1vdmUgcGFyYW1ldGVyICdmb3VuZCcgZnJvbSAnY2F0X2NvbXBhcmVfdmFsJyBhbmQgbW9kaWZ5 IHRoZSByZXR1cm4KICAgICAgdmFsdWVzIHRvIGxldCBjYWxsZXIga25vdyBpZiB0aGUgaWQgaXMg Zm91bmQgb3Igbm90LgogICAgICAoc3VnZ2VzdGVkIGJ5IFJvZ2VyIFBhdSkKICAgIC0gcmVwbGFj ZSBmZWF0dXJlIGxpc3QgaGFuZGxpbmcgdG8gZmVhdHVyZSBhcnJheSBoYW5kbGluZy4KICAgICAg KHN1Z2dlc3RlZCBieSBSb2dlciBQYXUpCiAgICAtIHJlcGxhY2UgJ2dldF9jb3NfbnVtJyB0byAn ZmVhdC0+Y29zX251bScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIGRp cmVjdGx5IHVzZSAnY29zX3JlZ192YWxbMF0nIGFzIGRlZmF1bHQgdmFsdWUuCiAgICAgIChzdWdn ZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIG1vZGlmeSBwYXRjaCB0aXRsZSB0byBpbmRpY2F0 ZSAnTDMgQ0FUJy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gY2hhbmdl cyBhYm91dCAndWludDY0X3QnIHRvICd1aW50MzJfdCcuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFu IEJldWxpY2gpCnY1OgogICAgLSBtb2RpZnkgY29tbWl0IG1lc3NhZ2UgdG8gcHJvdmlkZSBleGFj dCBwYXRjaCBuYW1lIHRvIGNvbnRpbnVlIGZyb20uCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJl dWxpY2gpCiAgICAtIHJlbW92ZSAnZ2V0X2Nvc19tYXhfZnJvbV90eXBlJyBiZWNhdXNlIGl0IGNh biBiZSByZXBsYWNlZCBieQogICAgICAnZ2V0X2Nvc19tYXgnLgogICAgLSBtb3ZlIHR5cGUgY2hl Y2sgb3V0IGZyb20gY2FsbGJhY2sgZnVuY3Rpb25zIHRvIGNhbGxlci4KICAgICAgKHN1Z2dlc3Rl ZCBieSBKYW4gQmV1bGljaCkKICAgIC0gbW9kaWZ5IHZhcmlhYmxlcyBuYW1lcyB0byBtYWtlIHRo ZW0gYmV0dGVyLCBlLmcuICdmZWF0X3RtcCcgdG8gJ2ZlYXQnLgogICAgICAoc3VnZ2VzdGVkIGJ5 IEphbiBCZXVsaWNoKQogICAgLSBtb2RpZnkgY29tbWVudHMgYWNjb3JkaW5nIHRvIGNoYW5nZXMg b2YgY29kZXMuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnY0OgogICAgLSBjcmVh dGUgdGhpcyBwYXRjaCB0byBtYWtlIGNvZGVzIGVhc2llciB0byB1bmRlcnN0YW5kLgogICAgICAo c3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQotLS0KIHhlbi9hcmNoL3g4Ni9wc3IuYyB8IDk1ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBm aWxlIGNoYW5nZWQsIDk1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYv cHNyLmMgYi94ZW4vYXJjaC94ODYvcHNyLmMKaW5kZXggMThhYWQ4ZS4uZjJjMjYxNCAxMDA2NDQK LS0tIGEveGVuL2FyY2gveDg2L3Bzci5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwpAQCAtMTIz LDYgKzEyMywxOSBAQCBzdHJ1Y3QgZmVhdF9ub2RlIHsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHN0cnVjdCBmZWF0X25vZGUgKmZlYXQsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBlbnVtIGNibV90eXBlIHR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50 MzJfdCBuZXdfdmFsKTsKKworICAgICAgICAvKgorICAgICAgICAgKiBjb21wYXJlX3ZhbCBpcyB1 c2VkIGluIHNldCB2YWx1ZSBwcm9jZXNzIHRvIGNvbXBhcmUgaWYgdGhlCisgICAgICAgICAqIGlu cHV0IHZhbHVlIGFycmF5IGNhbiBtYXRjaCBhbGwgdGhlIGZlYXR1cmVzJyBDT1MgcmVnaXN0ZXJz IHZhbHVlcworICAgICAgICAgKiBhY2NvcmRpbmcgdG8gaW5wdXQgY29zIGlkLgorICAgICAgICAg KgorICAgICAgICAgKiBUaGUgcmV0dXJuIHZhbHVlIGlzOgorICAgICAgICAgKiAxIC0gZmluZCB0 aGUgZW50cnkgaW4gdmFsdWUgYXJyYXkuCisgICAgICAgICAqIDAgLSBub3QgZmluZCB0aGUgZW50 cnkgaW4gdmFsdWUgYXJyYXkuCisgICAgICAgICAqIG5lZ2F0aXZlIC0gZXJyb3IuCisgICAgICAg ICAqLworICAgICAgICBpbnQgKCpjb21wYXJlX3ZhbCkoY29uc3QgdWludDMyX3QgdmFsW10sIGNv bnN0IHN0cnVjdCBmZWF0X25vZGUgKmZlYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBpbnQgY29zKTsKICAgICB9IG9wczsKIAogICAgIC8qIEVuY2Fwc3VsYXRlIGZlYXR1 cmUgc3BlY2lmaWMgSFcgaW5mbyBoZXJlLiAqLwpAQCAtMzUyLDYgKzM2NSwzMyBAQCBzdGF0aWMg aW50IGNhdF9zZXRfbmV3X3ZhbCh1aW50MzJfdCB2YWxbXSwKICAgICByZXR1cm4gMDsKIH0KIAor c3RhdGljIGludCBjYXRfY29tcGFyZV92YWwoY29uc3QgdWludDMyX3QgdmFsW10sCisgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0LAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGNvcykKK3sKKyAgICAvKgorICAgICAq IERpZmZlcmVudCBmZWF0dXJlcycgY29zX21heCBhcmUgZGlmZmVyZW50LiBJZiBjb3MgaWQgb2Yg dGhlIGZlYXR1cmUKKyAgICAgKiBiZWluZyBzZXQgZXhjZWVkcyBvdGhlciBmZWF0dXJlJ3MgY29z X21heCwgdGhlIHZhbCBvZiBvdGhlciBmZWF0dXJlCisgICAgICogbXVzdCBiZSBkZWZhdWx0IHZh bHVlLiBIVyBzdXBwb3J0cyBzdWNoIGNhc2UuCisgICAgICovCisgICAgaWYgKCBjb3MgPiBmZWF0 LT5pbmZvLmNhdF9pbmZvLmNvc19tYXggKQorICAgIHsKKyAgICAgICAgLyogY29zX3JlZ192YWxb MF0gaXMgdGhlIGRlZmF1bHQgdmFsdWUuICovCisgICAgICAgIGlmICggdmFsWzBdICE9IGZlYXQt PmNvc19yZWdfdmFsWzBdICkKKyAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOworCisgICAgICAg IC8qIEZpbmQgKi8KKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorCisgICAgaWYgKCB2YWxbMF0g PT0gZmVhdC0+Y29zX3JlZ192YWxbY29zXSApCisgICAgICAgIC8qIEZpbmQgKi8KKyAgICAgICAg cmV0dXJuIDE7CisKKyAgICAvKiBOb3QgZmluZCAqLworICAgIHJldHVybiAwOworfQorCiAvKiBM MyBDQVQgb3BzICovCiBzdGF0aWMgY29uc3Qgc3RydWN0IGZlYXRfb3BzIGwzX2NhdF9vcHMgPSB7 CiAgICAgLmdldF9jb3NfbWF4ID0gY2F0X2dldF9jb3NfbWF4LApAQCAtMzU5LDYgKzM5OSw3IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmVhdF9vcHMgbDNfY2F0X29wcyA9IHsKICAgICAuZ2V0X3Zh bCA9IGNhdF9nZXRfdmFsLAogICAgIC5nZXRfb2xkX3ZhbCA9IGNhdF9nZXRfb2xkX3ZhbCwKICAg ICAuc2V0X25ld192YWwgPSBjYXRfc2V0X25ld192YWwsCisgICAgLmNvbXBhcmVfdmFsID0gY2F0 X2NvbXBhcmVfdmFsLAogfTsKIAogc3RhdGljIHZvaWQgX19pbml0IHBhcnNlX3Bzcl9ib29sKGNo YXIgKnMsIGNoYXIgKnZhbHVlLCBjaGFyICpmZWF0dXJlLApAQCAtNzUyLDcgKzc5Myw2MSBAQCBz dGF0aWMgaW50IGZpbmRfY29zKGNvbnN0IHVpbnQzMl90IHZhbFtdLCB1aW50MzJfdCBhcnJheV9s ZW4sCiAgICAgICAgICAgICAgICAgICAgIGVudW0gcHNyX2ZlYXRfdHlwZSBmZWF0X3R5cGUsCiAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwc3Jfc29ja2V0X2luZm8gKmluZm8pCiB7 CisgICAgdW5zaWduZWQgaW50IGNvcywgaTsKKyAgICBjb25zdCB1bnNpZ25lZCBpbnQgKnJlZiA9 IGluZm8tPmNvc19yZWY7CisgICAgY29uc3Qgc3RydWN0IGZlYXRfbm9kZSAqZmVhdDsKKyAgICBj b25zdCB1aW50MzJfdCAqdmFsX2FycmF5ID0gdmFsOworICAgIGludCBmaW5kID0gMDsKKyAgICB1 bnNpZ25lZCBpbnQgY29zX21heDsKKwogICAgIEFTU0VSVChzcGluX2lzX2xvY2tlZCgoc3Bpbmxv Y2tfdCAqKSgmaW5mby0+cmVmX2xvY2spKSk7CisKKyAgICAvKiBjb3NfbWF4IGlzIHRoZSBvbmUg b2YgdGhlIGZlYXR1cmUgd2hpY2ggaXMgYmVpbmcgc2V0LiAqLworICAgIGZlYXQgPSBpbmZvLT5m ZWF0dXJlc1tmZWF0X3R5cGVdOworICAgIGlmICggIWZlYXQgKQorICAgICAgICByZXR1cm4gLUVO T0VOVDsKKworICAgIGNvc19tYXggPSBmZWF0LT5vcHMuZ2V0X2Nvc19tYXgoZmVhdCk7CisKKyAg ICBmb3IgKCBjb3MgPSAwOyBjb3MgPD0gY29zX21heDsgY29zKysgKQorICAgIHsKKyAgICAgICAg aWYgKCBjb3MgJiYgIXJlZltjb3NdICkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAg IC8qCisgICAgICAgICAqIElmIGZhaWwgdG8gZmluZCBjb3MgaW4gYmVsb3cgbG9vcCwgbmVlZCBm aW5kIHdob2xlIGZlYXR1cmUgYXJyYXkKKyAgICAgICAgICogYWdhaW4gZnJvbSBiZWdpbm5pbmcu CisgICAgICAgICAqLworICAgICAgICB2YWxfYXJyYXkgPSB2YWw7CisgICAgICAgIGZvciAoIGkg PSAwOyBpIDwgUFNSX1NPQ0tFVF9NQVhfRkVBVDsgaSsrICkKKyAgICAgICAgeworICAgICAgICAg ICAgaWYgKCAhaW5mby0+ZmVhdHVyZXNbaV0gKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOwor CisgICAgICAgICAgICBmZWF0ID0gaW5mby0+ZmVhdHVyZXNbaV07CisgICAgICAgICAgICAvKgor ICAgICAgICAgICAgICogQ29tcGFyZSB2YWx1ZSBhY2NvcmRpbmcgdG8gZmVhdHVyZSBhcnJheSBv cmRlci4KKyAgICAgICAgICAgICAqIFdlIG11c3QgZm9sbG93IHRoaXMgb3JkZXIgYmVjYXVzZSB2 YWx1ZSBhcnJheSBpcyBhc3NlbWJsZWQKKyAgICAgICAgICAgICAqIGFzIHRoaXMgb3JkZXIuCisg ICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGZpbmQgPSBmZWF0LT5vcHMuY29tcGFyZV92YWwo dmFsX2FycmF5LCBmZWF0LCBjb3MpOworICAgICAgICAgICAgaWYgKCBmaW5kIDwgMCApCisgICAg ICAgICAgICAgICAgcmV0dXJuIGZpbmQ7CisKKyAgICAgICAgICAgIC8qIElmIGZhaWwgdG8gbWF0 Y2gsIGdvIHRvIG5leHQgY29zIHRvIGNvbXBhcmUuICovCisgICAgICAgICAgICBpZiAoICFmaW5k ICkKKyAgICAgICAgICAgICAgICBicmVhazsKKworICAgICAgICAgICAgdmFsX2FycmF5ICs9IGZl YXQtPmNvc19udW07CisgICAgICAgICAgICBpZiAoIHZhbF9hcnJheSAtIHZhbCA+IGFycmF5X2xl biApCisgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9TUEM7CisgICAgICAgIH0KKworICAgICAg ICAvKiBGb3IgdGhpcyBDT1MgSUQgYWxsIGVudHJpZXMgaW4gdGhlIHZhbHVlcyBhcnJheSBkaWQg bWF0Y2guIFVzZSBpdC4gKi8KKyAgICAgICAgaWYgKCBmaW5kICkKKyAgICAgICAgICAgIHJldHVy biBjb3M7CisgICAgfQorCiAgICAgcmV0dXJuIC1FTk9FTlQ7CiB9CiAKLS0gCjEuOS4xCgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1h aWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==