From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v12 11/23] x86: refactor psr: L3 CAT: set value: implement cos id picking flow. Date: Wed, 14 Jun 2017 09:12:44 +0800 Message-ID: <1497402776-22348-12-git-send-email-yi.y.sun@linux.intel.com> References: <1497402776-22348-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.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dKx4A-0007Zv-6O for xen-devel@lists.xenproject.org; Wed, 14 Jun 2017 01:25:50 +0000 In-Reply-To: <1497402776-22348-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 Q29udGludWUgZnJvbSBwcmV2aW91cyBwYXRjaDoKJ3g4NjogcmVmYWN0b3IgcHNyOiBMMyBDQVQ6 IHNldCB2YWx1ZTogaW1wbGVtZW50IGNvcyBmaW5kaW5nIGZsb3cuJwoKSWYgZmFpbCB0byBmaW5k IGEgQ09TIElELCB3ZSBuZWVkIHBpY2sgYSBuZXcgQ09TIElEIGZvciBkb21haW4uIE9ubHkgQ09T IElECnRoYXQgcmVmW0NPU19JRF0gaXMgMSBvciAwIGNhbiBiZSBwaWNrZWQgdG8gaW5wdXQgYSBu ZXcgc2V0IGZlYXR1cmUgdmFsdWVzLgoKU2lnbmVkLW9mZi1ieTogWWkgU3VuIDx5aS55LnN1bkBs aW51eC5pbnRlbC5jb20+Ci0tLQp2MTI6CiAgICAtIHVzZSAnQVNTRVJUX1VOUkVBQ0hBQkxFKCkn IHRvIHJlY29yZCBidWcgYW5kIHJldHVybiBlcnJvciBjb2RlIGlmIGZlYXQKICAgICAgZXhpc3Rz IGJ1dCBwcm9wcyBkb2VzIG5vdCBleGlzdC4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGlj aCkKICAgIC0gZGVjbGFyZSBzYW1lIHR5cGUgdmFpcmFibGVzIGluIG9uZSBsaW5lLgogICAgICAo c3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSB1c2UgJ0FSUkFZX1NJWkUnIHRvIGNhbGN1 bGF0ZSBhcnJheSBib3VuZGFyeS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKdjEx OgogICAgLSByZW1vdmUgdW5uZWNlc3NhcnkgdmFyaWFibGUgaW5pdGlhbGl6YXRpb24uCiAgICAg IChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIGNoYW5nZXMgYWJvdXQgJ2ZlYXRfcHJv cHMnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSByZXBsYWNlICdnZXRf dmFsJyBjYWxsaW5nIHRvIGdlbmVyaWMgY29kZXMuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJl dWxpY2gpCnYxMDoKICAgIC0gcmVtb3ZlICdmaXRzX2Nvc19tYXgnIGhvb2sgYW5kIENBVCBpbXBs ZW1lbnRhdGlvbi4gTW92ZSB0aGUgcHJvY2VzcyBpbnRvCiAgICAgIGdlbmVyaWMgZmxvdy4KICAg ICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gY2hhbmdlcyBhYm91dCAncHJvcHMn LgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBhZGp1c3QgY29kZXMgcG9z aXRpb25zLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQp2OToKICAgIC0gbW9kaWZ5 IHJldHVybiB2YWx1ZSBvZiAncGlja19hdmFpbF9jb3MnIHRvIG1ha2UgaXQgbW9yZSBhY2N1cmF0 ZS4KICAgIC0gcmVuYW1lICdsM19jYXRfZml0c19jb3NfbWF4JyB0byAnY2F0X2ZpdHNfY29zX21h eCcgdG8gY292ZXIgTDMvTDIgQ0FUCiAgICAgIGZlYXR1cmVzLgogICAgICAoc3VnZ2VzdGVkIGJ5 IFJvZ2VyIFBhdSkKICAgIC0gcmVwbGFjZSBmZWF0dXJlIGxpc3QgaGFuZGxpbmcgdG8gZmVhdHVy ZSBhcnJheSBoYW5kbGluZy4KICAgICAgKHN1Z2dlc3RlZCBieSBSb2dlciBQYXUpCiAgICAtIGZp eCBjb21tZW50LgogICAgICAoc3VnZ2VzdGVkIGJ5IFdlaSBMaXUpCiAgICAtIGRpcmVjdGx5IHVz ZSAnY29zX3JlZ192YWxbMF0nIGFzIGRlZmF1bHQgdmFsdWUuCiAgICAgIChzdWdnZXN0ZWQgYnkg SmFuIEJldWxpY2gpCiAgICAtIHJlcGxhY2UgJ2dldF9jb3NfbnVtJyB0byAnZmVhdC0+Y29zX251 bScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIG1vZGlmeSBwYXRjaCB0 aXRsZSB0byBpbmRpY2F0ZSAnTDMgQ0FUJy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGlj aCkKICAgIC0gY2hhbmdlcyBhYm91dCAndWludDY0X3QnIHRvICd1aW50MzJfdCcuCiAgICAgIChz dWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnY1OgogICAgLSBtb2RpZnkgY29tbWl0IG1lc3NhZ2Ug dG8gcHJvdmlkZSBleGFjdCBwYXRjaCBuYW1lIHRvIGNvbnRpbnVlIGZyb20uCiAgICAgIChzdWdn ZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIGNoYW5nZSAnZXhjZWVkc19jb3NfbWF4JyB0byAn Zml0c19jb3NfbWF4JyB0byBiZSBhY2N1cmF0ZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCkKICAgIC0gbW9kaWZ5IGNvbW1lbnRzIGFjY29yZGluZyB0byBjaGFuZ2VzIG9mIGNvZGVz LgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBtb2RpZnkgcmV0dXJuIHZh bHVlIG9mIGNhbGxiYWNrIGZ1bmN0aW9ucyBiZWNhdXNlIHdlIGRvIG5vdCBuZWVkIHRoZW0KICAg ICAgdG8gcmV0dXJuIG51bWJlciBvZiBlbnRyaWVzIHRoZSBmZWF0dXJlIHVzZXMuIEluIGNhbGxl ciwgd2UgY2FsbAogICAgICAnZ2V0X2Nvc19udW0nIHRvIGdldCB0aGUgbnVtYmVyIG9mIGVudHJp ZXMgdGhlIGZlYXR1cmUgdXNlcy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAg IC0gbW92ZSB0eXBlIGNoZWNrIG91dCBmcm9tIGNhbGxiYWNrIGZ1bmN0aW9ucyB0byBjYWxsZXIu CiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIG1vZGlmeSB2YXJpYWJsZXMg bmFtZXMgdG8gbWFrZSB0aGVtIGJldHRlciwgZS5nLiAnZmVhdF90bXAnIHRvICdmZWF0Jy4KICAg ICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gbW9kaWZ5IGNvZGUgZm9ybWF0Lgog ICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQp2NDoKICAgIC0gY3JlYXRlIHRoaXMgcGF0 Y2ggdG8gbWFrZSBjb2RlcyBlYXNpZXIgdG8gdW5kZXJzdGFuZC4KICAgICAgKHN1Z2dlc3RlZCBi eSBKYW4gQmV1bGljaCkKLS0tCi0tLQogeGVuL2FyY2gveDg2L3Bzci5jIHwgODcgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAxIGZpbGUgY2hh bmdlZCwgODYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3hlbi9h cmNoL3g4Ni9wc3IuYyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwppbmRleCA5NDJhZTYzLi41Y2JjMzg5 IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvcHNyLmMKKysrIGIveGVuL2FyY2gveDg2L3Bzci5j CkBAIC04NDUsMTIgKzg0NSw5NyBAQCBzdGF0aWMgaW50IGZpbmRfY29zKGNvbnN0IHVpbnQzMl90 IHZhbFtdLCB1bnNpZ25lZCBpbnQgYXJyYXlfbGVuLAogICAgIHJldHVybiAtRU5PRU5UOwogfQog CitzdGF0aWMgYm9vbCBmaXRzX2Nvc19tYXgoY29uc3QgdWludDMyX3QgdmFsW10sCisgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3QgYXJyYXlfbGVuLAorICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHN0cnVjdCBwc3Jfc29ja2V0X2luZm8gKmluZm8sCisgICAgICAgICAgICAg ICAgICAgICAgICAgdW5zaWduZWQgaW50IGNvcykKK3sKKyAgICB1bnNpZ25lZCBpbnQgaTsKKwor ICAgIGZvciAoIGkgPSAwOyBpIDwgQVJSQVlfU0laRShpbmZvLT5mZWF0dXJlcyk7IGkrKyApCisg ICAgeworICAgICAgICBjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0ID0gaW5mby0+ZmVhdHVy ZXNbaV07CisgICAgICAgIGNvbnN0IHN0cnVjdCBmZWF0X3Byb3BzICpwcm9wcyA9IGZlYXRfcHJv cHNbaV07CisKKyAgICAgICAgaWYgKCAhZmVhdCApCisgICAgICAgICAgICBjb250aW51ZTsKKwor ICAgICAgICBpZiAoICFwcm9wcyApCisgICAgICAgIHsKKyAgICAgICAgICAgIEFTU0VSVF9VTlJF QUNIQUJMRSgpOworICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisKKyAgICAg ICAgaWYgKCBhcnJheV9sZW4gPCBwcm9wcy0+Y29zX251bSApCisgICAgICAgICAgICByZXR1cm4g ZmFsc2U7CisKKyAgICAgICAgaWYgKCBjb3MgPiBmZWF0LT5jb3NfbWF4ICkKKyAgICAgICAgewor ICAgICAgICAgICAgdW5zaWduZWQgaW50IGo7CisKKyAgICAgICAgICAgIGZvciAoIGogPSAwOyBq IDwgcHJvcHMtPmNvc19udW07IGorKyApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg LyoKKyAgICAgICAgICAgICAgICAgKiBHZXQgZGVmYXVsdCB2YWx1ZSB3aGljaCBjb3MgaWQgaXMg MC4KKyAgICAgICAgICAgICAgICAgKiBGb3IgQ0RQOgorICAgICAgICAgICAgICAgICAqIC0gREFU QSBkZWZhdWx0IHZhbHVlIHN0b3JlZCBpbiBjb3NfcmVnX3ZhbFswXTsKKyAgICAgICAgICAgICAg ICAgKiAtIENPREUgZGVmYXVsdCB2YWx1ZSBzdG9yZWQgaW4gY29zX3JlZ192YWxbMV0uCisgICAg ICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgdWludDMyX3QgZGVmYXVsdF92YWwgPSBm ZWF0LT5jb3NfcmVnX3ZhbFtqXTsKKworICAgICAgICAgICAgICAgIGlmICggdmFsW2pdICE9IGRl ZmF1bHRfdmFsICkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAg ICAgfQorICAgICAgICB9CisKKyAgICAgICAgYXJyYXlfbGVuIC09IHByb3BzLT5jb3NfbnVtOwor CisgICAgICAgIHZhbCArPSBwcm9wcy0+Y29zX251bTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1 ZTsKK30KKwogc3RhdGljIGludCBwaWNrX2F2YWlsX2Nvcyhjb25zdCBzdHJ1Y3QgcHNyX3NvY2tl dF9pbmZvICppbmZvLAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50MzJfdCB2 YWxbXSwgdW5zaWduZWQgaW50IGFycmF5X2xlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgaW50IG9sZF9jb3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gcHNy X2ZlYXRfdHlwZSBmZWF0X3R5cGUpCiB7Ci0gICAgcmV0dXJuIC1FTk9FTlQ7CisgICAgdW5zaWdu ZWQgaW50IGNvcywgY29zX21heCA9IDA7CisgICAgY29uc3Qgc3RydWN0IGZlYXRfbm9kZSAqZmVh dDsKKyAgICBjb25zdCB1bnNpZ25lZCBpbnQgKnJlZiA9IGluZm8tPmNvc19yZWY7CisKKyAgICAv KiBjb3NfbWF4IGlzIHRoZSBvbmUgb2YgdGhlIGZlYXR1cmUgd2hpY2ggaXMgYmVpbmcgc2V0LiAq LworICAgIGZlYXQgPSBpbmZvLT5mZWF0dXJlc1tmZWF0X3R5cGVdOworICAgIGlmICggIWZlYXQg KQorICAgICAgICByZXR1cm4gLUVOT0VOVDsKKworICAgIGNvc19tYXggPSBmZWF0LT5jb3NfbWF4 OworICAgIGlmICggIWNvc19tYXggKQorICAgICAgICByZXR1cm4gLUVOT0VOVDsKKworICAgIC8q IFdlIGNhbm5vdCB1c2UgaWQgMCBiZWNhdXNlIGl0IHN0b3JlcyB0aGUgZGVmYXVsdCB2YWx1ZXMu ICovCisgICAgaWYgKCBvbGRfY29zICYmIHJlZltvbGRfY29zXSA9PSAxICYmCisgICAgICAgICBm aXRzX2Nvc19tYXgodmFsLCBhcnJheV9sZW4sIGluZm8sIG9sZF9jb3MpICkKKyAgICAgICAgICAg IHJldHVybiBvbGRfY29zOworCisgICAgLyogRmluZCBhbiB1bnVzZWQgb25lIG90aGVyIHRoYW4g Y29zMC4gKi8KKyAgICBmb3IgKCBjb3MgPSAxOyBjb3MgPD0gY29zX21heDsgY29zKysgKQorICAg IHsKKyAgICAgICAgLyoKKyAgICAgICAgICogcmVmIGlzIDAgbWVhbnMgdGhpcyBDT1MgaXMgbm90 IHVzZWQgYnkgb3RoZXIgZG9tYWluIGFuZAorICAgICAgICAgKiBjYW4gYmUgdXNlZCBmb3IgY3Vy cmVudCBzZXR0aW5nLgorICAgICAgICAgKi8KKyAgICAgICAgaWYgKCAhcmVmW2Nvc10gKQorICAg ICAgICB7CisgICAgICAgICAgICBpZiAoICFmaXRzX2Nvc19tYXgodmFsLCBhcnJheV9sZW4sIGlu Zm8sIGNvcykgKQorICAgICAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgICAgICByZXR1cm4g Y29zOworICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIC1FT1ZFUkZMT1c7CiB9CiAKIHN0 YXRpYyBpbnQgd3JpdGVfcHNyX21zcnModW5zaWduZWQgaW50IHNvY2tldCwgdW5zaWduZWQgaW50 IGNvcywKLS0gCjEuOS4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpo dHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==