From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v12 16/23] x86: L2 CAT: implement CPU init flow. Date: Wed, 14 Jun 2017 09:12:49 +0800 Message-ID: <1497402776-22348-17-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 1dKx4N-0007oN-70 for xen-devel@lists.xenproject.org; Wed, 14 Jun 2017 01:26:03 +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 VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBDUFUgaW5pdCBmbG93IGZvciBMMiBDQVQuCgpTaWdu ZWQtb2ZmLWJ5OiBZaSBTdW4gPHlpLnkuc3VuQGxpbnV4LmludGVsLmNvbT4KLS0tCnYxMjoKICAg IC0gbW92ZSAndHlwZVtdJyBhc3NpZ25tZW50IGludG8gbDJfY2F0X3Byb3BzIGRlY2xhcmF0aW9u IHRvIG1ha2UgaXQgYmUKICAgICAgJ2NvbnN0Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCkKICAgIC0gYWRkICJMMiBDQVQiIGluZGljYXRvciBpbiBwcmludGsuCiAgICAgIChzdWdn ZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIHJlc3RvcmUgbWFzaygwKSBNU1IgdG8gZGVmYXVs dCB2YWx1ZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKdjExOgogICAgLSBtb3Zl IGwyIGNhdCAndHlwZVtdJyBhc3NpZ25lbWVudCBpbnRvICdwc3JfY3B1X2luaXQnLgogICAgLSBy ZW1vdmUgQ09TIE1TUiByZXN0b3JlIGFjdGlvbiBpbiAnY3B1X2luaXRfZmVhdHVyZScuCiAgICAt IHNldCAnZmVhdF9pbml0JyB0byB0cnVlIGFmdGVyIENQVSBpbml0LgogICAgLSBtb2RpZnkgY29t bWl0IG1lc3NhZ2UuCnYxMDoKICAgIC0gaW1wbGVtZW50IEwyIENBVCBjYXNlIGluICdjYXRfaW5p dF9mZWF0dXJlJy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gY2hhbmdl cyBhYm91dCAncHJvcHMnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBp bnRyb2R1Y2UgJ1BTUl9DQk1fVFlQRV9MMicuCnY5OgogICAgLSBtb2RpZnkgZXJyb3IgaGFuZGxp bmcgcHJvY2VzcyBpbiAncHNyX2NwdV9wcmVwYXJlJyB0byByZWR1Y2UgcmVkdW5kYW50CiAgICAg IGNvZGVzLgogICAgLSByZXVzZSAnY2F0X2luaXRfZmVhdHVyZScgYW5kICdjYXRfZ2V0X2Nvc19t YXgnIGZvciBMMiBDQVQgdG8gcmVkdWNlCiAgICAgIHJlZHVuZGFudCBjb2Rlcy4KICAgICAgKHN1 Z2dlc3RlZCBieSBSb2dlciBQYXUpCiAgICAtIHJlbW92ZSB1bm5lY2Vzc2FyeSBjb21tZW50Lgog ICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBtb3ZlIEwyIENBVCByZWxhdGVk IGNvZGVzIGZyb20gJ2NwdV9pbml0X3dvcmsnIGludG8gJ3Bzcl9jcHVfaW5pdCcuCiAgICAgIChz dWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIGRvIG5vdCBmcmVlIHJlc291cmNlIHdoZW4g YWxsb2NhdGlvbiBmYWlscyBpbiAncHNyX2NwdV9wcmVwYXJlJy4KICAgICAgKHN1Z2dlc3RlZCBi eSBKYW4gQmV1bGljaCkKdjc6CiAgICAtIGluaXRpYWxpemUgJ2wyX2NhdCcuCiAgICAgIChzdWdn ZXN0ZWQgYnkgS29ucmFkIFJ6ZXN6dXRlayBXaWxrKQp2NjoKICAgIC0gdXNlICdzdHJ1Y3QgY3B1 aWRfbGVhZicuCiAgICAgIChzdWdnZXN0ZWQgYnkgS29ucmFkIFJ6ZXN6dXRlayBXaWxrIGFuZCBK YW4gQmV1bGljaCkKdjU6CiAgICAtIHJlbW92ZSAnZmVhdF9sMl9jYXQnIGZyZWUgaW4gJ2ZyZWVf ZmVhdHVyZScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIGVuY2Fwc3Vs YXRlIGNwdWlkIHJlZ2lzdGVycyBpbnRvICdzdHJ1Y3QgY3B1aWRfbGVhZl9yZWdzJy4KICAgICAg KHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gcHJpbnQgc29ja2V0IGluZm8gd2hlbiAn b3B0X2NwdV9pbmZvJyBpcyB0cnVlLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQog ICAgLSByZW5hbWUgJ2wyX2NhdF9nZXRfbWF4X2Nvc19tYXgnIHRvICdsMl9jYXRfZ2V0X2Nvc19t YXgnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSByZW5hbWUgJ2RhdFtd JyB0byAnZGF0YVtdJwogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBtb3Zl ICdjcHVfcHJlcGFyZV93b3JrJyBjb250ZW50cyBpbnRvICdwc3JfY3B1X3ByZXBhcmUnLgogICAg ICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQp2NDoKICAgIC0gY3JlYXRlIHRoaXMgcGF0Y2gg YmVjYXVzZSBvZiBjb2RlcyBhcmNoaXRlY3R1cmUgY2hhbmdlLgogICAgICAoc3VnZ2VzdGVkIGJ5 IEphbiBCZXVsaWNoKQotLS0KLS0tCiB4ZW4vYXJjaC94ODYvcHNyLmMgICAgICAgICAgICAgIHwg MzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogeGVuL2luY2x1ZGUvYXNtLXg4 Ni9tc3ItaW5kZXguaCB8ICAxICsKIHhlbi9pbmNsdWRlL2FzbS14ODYvcHNyLmggICAgICAgfCAg MiArKwogMyBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9wc3IuYyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwppbmRl eCA5MWIyMTIyLi42MDIwMmIyIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvcHNyLmMKKysrIGIv eGVuL2FyY2gveDg2L3Bzci5jCkBAIC02Myw2ICs2Myw3IEBACiBlbnVtIHBzcl9mZWF0X3R5cGUg ewogICAgIFBTUl9TT0NLRVRfTDNfQ0FULAogICAgIFBTUl9TT0NLRVRfTDNfQ0RQLAorICAgIFBT Ul9TT0NLRVRfTDJfQ0FULAogICAgIFBTUl9TT0NLRVRfRkVBVF9OVU0sCiAgICAgUFNSX1NPQ0tF VF9GRUFUX1VOS05PV04sCiB9OwpAQCAtMTU0LDYgKzE1NSw3IEBAIHN0YXRpYyBERUZJTkVfUEVS X0NQVShzdHJ1Y3QgcHNyX2Fzc29jLCBwc3JfYXNzb2MpOwogICovCiBzdGF0aWMgc3RydWN0IGZl YXRfbm9kZSAqZmVhdF9sM19jYXQ7CiBzdGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sM19j ZHA7CitzdGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sMl9jYXQ7CiAKIC8qIENvbW1vbiBm dW5jdGlvbnMgKi8KICNkZWZpbmUgY2F0X2RlZmF1bHRfdmFsKGxlbikgKDB4ZmZmZmZmZmYgPj4g KDMyIC0gKGxlbikpKQpAQCAtMjc5LDEwICsyODEsMTQgQEAgc3RhdGljIHZvaWQgY2F0X2luaXRf ZmVhdHVyZShjb25zdCBzdHJ1Y3QgY3B1aWRfbGVhZiAqcmVncywKICAgICBzd2l0Y2ggKCB0eXBl ICkKICAgICB7CiAgICAgY2FzZSBQU1JfU09DS0VUX0wzX0NBVDoKKyAgICBjYXNlIFBTUl9TT0NL RVRfTDJfQ0FUOgogICAgICAgICAvKiBjb3M9MCBpcyByZXNlcnZlZCBhcyBkZWZhdWx0IGNibShh bGwgYml0cyB3aXRoaW4gY2JtX2xlbiBhcmUgMSkuICovCiAgICAgICAgIGZlYXQtPmNvc19yZWdf dmFsWzBdID0gY2F0X2RlZmF1bHRfdmFsKGZlYXQtPmNibV9sZW4pOwogCi0gICAgICAgIHdybXNy bChNU1JfSUEzMl9QU1JfTDNfTUFTSygwKSwgY2F0X2RlZmF1bHRfdmFsKGZlYXQtPmNibV9sZW4p KTsKKyAgICAgICAgaWYgKCB0eXBlID09IFBTUl9TT0NLRVRfTDNfQ0FUICkKKyAgICAgICAgICAg IHdybXNybChNU1JfSUEzMl9QU1JfTDNfTUFTSygwKSwgY2F0X2RlZmF1bHRfdmFsKGZlYXQtPmNi bV9sZW4pKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgd3Jtc3JsKE1TUl9JQTMyX1BTUl9M Ml9NQVNLKDApLCBjYXRfZGVmYXVsdF92YWwoZmVhdC0+Y2JtX2xlbikpOwogCiAgICAgICAgIGJy ZWFrOwogCkBAIC0zMTcsNyArMzIzLDggQEAgc3RhdGljIHZvaWQgY2F0X2luaXRfZmVhdHVyZShj b25zdCBzdHJ1Y3QgY3B1aWRfbGVhZiAqcmVncywKICAgICAgICAgcmV0dXJuOwogCiAgICAgcHJp bnRrKFhFTkxPR19JTkZPICIlczogZW5hYmxlZCBvbiBzb2NrZXQgJXUsIGNvc19tYXg6JXUsIGNi bV9sZW46JXVcbiIsCi0gICAgICAgICAgICgodHlwZSA9PSBQU1JfU09DS0VUX0wzX0NEUCkgPyAi Q0RQIiA6ICJMMyBDQVQiKSwKKyAgICAgICAgICAgKCh0eXBlID09IFBTUl9TT0NLRVRfTDNfQ0RQ KSA/ICJDRFAiIDoKKyAgICAgICAgICAgICgodHlwZSA9PSBQU1JfU09DS0VUX0wzX0NBVCkgPyAi TDMgQ0FUIjogIkwyIENBVCIpKSwKICAgICAgICAgICAgY3B1X3RvX3NvY2tldChzbXBfcHJvY2Vz c29yX2lkKCkpLCBmZWF0LT5jb3NfbWF4LCBmZWF0LT5jYm1fbGVuKTsKIH0KIApAQCAtMzc1LDYg KzM4MiwxMiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGZlYXRfcHJvcHMgbDNfY2RwX3Byb3BzID0g ewogICAgIC53cml0ZV9tc3IgPSBsM19jZHBfd3JpdGVfbXNyLAogfTsKIAorLyogTDIgQ0FUIHBy b3BzICovCitzdGF0aWMgY29uc3Qgc3RydWN0IGZlYXRfcHJvcHMgbDJfY2F0X3Byb3BzID0gewor ICAgIC5jb3NfbnVtID0gMSwKKyAgICAudHlwZVswXSA9IFBTUl9DQk1fVFlQRV9MMiwKK307CisK IHN0YXRpYyB2b2lkIF9faW5pdCBwYXJzZV9wc3JfYm9vbChjaGFyICpzLCBjaGFyICp2YWx1ZSwg Y2hhciAqZmVhdHVyZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l ZCBpbnQgbWFzaykKIHsKQEAgLTEzNTcsNiArMTM3MCwxMCBAQCBzdGF0aWMgaW50IHBzcl9jcHVf cHJlcGFyZSh2b2lkKQogICAgICAgICAgKGZlYXRfbDNfY2RwID0geHphbGxvYyhzdHJ1Y3QgZmVh dF9ub2RlKSkgPT0gTlVMTCApCiAgICAgICAgIHJldHVybiAtRU5PTUVNOwogCisgICAgaWYgKCBm ZWF0X2wyX2NhdCA9PSBOVUxMICYmCisgICAgICAgICAoZmVhdF9sMl9jYXQgPSB4emFsbG9jKHN0 cnVjdCBmZWF0X25vZGUpKSA9PSBOVUxMICkKKyAgICAgICAgcmV0dXJuIC1FTk9NRU07CisKICAg ICByZXR1cm4gMDsKIH0KIApAQCAtMTQwNyw2ICsxNDI0LDE5IEBAIHN0YXRpYyB2b2lkIHBzcl9j cHVfaW5pdCh2b2lkKQogICAgICAgICBpbmZvLT5mZWF0X2luaXQgPSB0cnVlOwogICAgIH0KIAor ICAgIGNwdWlkX2NvdW50X2xlYWYoUFNSX0NQVUlEX0xFVkVMX0NBVCwgMCwgJnJlZ3MpOworICAg IGlmICggcmVncy5iICYgUFNSX1JFU09VUkNFX1RZUEVfTDIgKQorICAgIHsKKyAgICAgICAgY3B1 aWRfY291bnRfbGVhZihQU1JfQ1BVSURfTEVWRUxfQ0FULCAyLCAmcmVncyk7CisKKyAgICAgICAg ZmVhdCA9IGZlYXRfbDJfY2F0OworICAgICAgICBmZWF0X2wyX2NhdCA9IE5VTEw7CisgICAgICAg IGZlYXRfcHJvcHNbUFNSX1NPQ0tFVF9MMl9DQVRdID0gJmwyX2NhdF9wcm9wczsKKyAgICAgICAg Y2F0X2luaXRfZmVhdHVyZSgmcmVncywgZmVhdCwgaW5mbywgUFNSX1NPQ0tFVF9MMl9DQVQpOwor CisgICAgICAgIGluZm8tPmZlYXRfaW5pdCA9IHRydWU7CisgICAgfQorCiAgYXNzb2NfaW5pdDoK ICAgICBwc3JfYXNzb2NfaW5pdCgpOwogfQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4 Ni9tc3ItaW5kZXguaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvbXNyLWluZGV4LmgKaW5kZXggNzcx ZTc1MC4uNmM0OWM2ZCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc3ItaW5kZXgu aAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L21zci1pbmRleC5oCkBAIC0zNDUsNiArMzQ1LDcg QEAKICNkZWZpbmUgTVNSX0lBMzJfUFNSX0wzX01BU0sobikJKDB4MDAwMDBjOTAgKyAobikpCiAj ZGVmaW5lIE1TUl9JQTMyX1BTUl9MM19NQVNLX0NPREUobikJKDB4MDAwMDBjOTAgKyAobikgKiAy ICsgMSkKICNkZWZpbmUgTVNSX0lBMzJfUFNSX0wzX01BU0tfREFUQShuKQkoMHgwMDAwMGM5MCAr IChuKSAqIDIpCisjZGVmaW5lIE1TUl9JQTMyX1BTUl9MMl9NQVNLKG4pCQkoMHgwMDAwMGQxMCAr IChuKSkKIAogLyogSW50ZWwgTW9kZWwgNiAqLwogI2RlZmluZSBNU1JfUDZfUEVSRkNUUihuKQkJ KDB4MDAwMDAwYzEgKyAobikpCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5o IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wc3IuaAppbmRleCAxNWI5YTI1Li4yNzZmZGQ2IDEwMDY0 NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14 ODYvcHNyLmgKQEAgLTIzLDYgKzIzLDcgQEAKIAogLyogUmVzb3VyY2UgVHlwZSBFbnVtZXJhdGlv biAqLwogI2RlZmluZSBQU1JfUkVTT1VSQ0VfVFlQRV9MMyAgICAgICAgICAgIDB4MgorI2RlZmlu ZSBQU1JfUkVTT1VSQ0VfVFlQRV9MMiAgICAgICAgICAgIDB4NAogCiAvKiBMMyBNb25pdG9yaW5n IEZlYXR1cmVzICovCiAjZGVmaW5lIFBTUl9DTVRfTDNfT0NDVVBBTkNZICAgICAgICAgICAgMHgx CkBAIC01Niw2ICs1Nyw3IEBAIGVudW0gY2JtX3R5cGUgewogICAgIFBTUl9DQk1fVFlQRV9MMywK ICAgICBQU1JfQ0JNX1RZUEVfTDNfQ09ERSwKICAgICBQU1JfQ0JNX1RZUEVfTDNfREFUQSwKKyAg ICBQU1JfQ0JNX1RZUEVfTDIsCiB9OwogCiBleHRlcm4gc3RydWN0IHBzcl9jbXQgKnBzcl9jbXQ7 Ci0tIAoxLjkuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6 Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=