From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v11 16/23] x86: L2 CAT: implement CPU init flow. Date: Wed, 3 May 2017 16:44:16 +0800 Message-ID: <1493801063-38513-17-git-send-email-yi.y.sun@linux.intel.com> References: <1493801063-38513-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 1d5q3H-00011s-QI for xen-devel@lists.xenproject.org; Wed, 03 May 2017 08:54:27 +0000 In-Reply-To: <1493801063-38513-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 ZWQtb2ZmLWJ5OiBZaSBTdW4gPHlpLnkuc3VuQGxpbnV4LmludGVsLmNvbT4KLS0tCnYxMToKICAg IC0gbW92ZSBsMiBjYXQgJ3R5cGVbXScgYXNzaWduZW1lbnQgaW50byAncHNyX2NwdV9pbml0Jy4K ICAgIC0gcmVtb3ZlIENPUyBNU1IgcmVzdG9yZSBhY3Rpb24gaW4gJ2NwdV9pbml0X2ZlYXR1cmUn LgogICAgLSBzZXQgJ2ZlYXRfaW5pdCcgdG8gdHJ1ZSBhZnRlciBDUFUgaW5pdC4KICAgIC0gbW9k aWZ5IGNvbW1pdCBtZXNzYWdlLgp2MTA6CiAgICAtIGltcGxlbWVudCBMMiBDQVQgY2FzZSBpbiAn Y2F0X2luaXRfZmVhdHVyZScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAt IGNoYW5nZXMgYWJvdXQgJ3Byb3BzJy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkK ICAgIC0gaW50cm9kdWNlICdQU1JfQ0JNX1RZUEVfTDInLgp2OToKICAgIC0gbW9kaWZ5IGVycm9y IGhhbmRsaW5nIHByb2Nlc3MgaW4gJ3Bzcl9jcHVfcHJlcGFyZScgdG8gcmVkdWNlIHJlZHVuZGFu dAogICAgICBjb2Rlcy4KICAgIC0gcmV1c2UgJ2NhdF9pbml0X2ZlYXR1cmUnIGFuZCAnY2F0X2dl dF9jb3NfbWF4JyBmb3IgTDIgQ0FUIHRvIHJlZHVjZQogICAgICByZWR1bmRhbnQgY29kZXMuCiAg ICAgIChzdWdnZXN0ZWQgYnkgUm9nZXIgUGF1KQogICAgLSByZW1vdmUgdW5uZWNlc3NhcnkgY29t bWVudC4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gbW92ZSBMMiBDQVQg cmVsYXRlZCBjb2RlcyBmcm9tICdjcHVfaW5pdF93b3JrJyBpbnRvICdwc3JfY3B1X2luaXQnLgog ICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBkbyBub3QgZnJlZSByZXNvdXJj ZSB3aGVuIGFsbG9jYXRpb24gZmFpbHMgaW4gJ3Bzcl9jcHVfcHJlcGFyZScuCiAgICAgIChzdWdn ZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnY3OgogICAgLSBpbml0aWFsaXplICdsMl9jYXQnLgogICAg ICAoc3VnZ2VzdGVkIGJ5IEtvbnJhZCBSemVzenV0ZWsgV2lsaykKdjY6CiAgICAtIHVzZSAnc3Ry dWN0IGNwdWlkX2xlYWYnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEtvbnJhZCBSemVzenV0ZWsgV2ls ayBhbmQgSmFuIEJldWxpY2gpCnY1OgogICAgLSByZW1vdmUgJ2ZlYXRfbDJfY2F0JyBmcmVlIGlu ICdmcmVlX2ZlYXR1cmUnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBl bmNhcHN1bGF0ZSBjcHVpZCByZWdpc3RlcnMgaW50byAnc3RydWN0IGNwdWlkX2xlYWZfcmVncycu CiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIHByaW50IHNvY2tldCBpbmZv IHdoZW4gJ29wdF9jcHVfaW5mbycgaXMgdHJ1ZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCkKICAgIC0gcmVuYW1lICdsMl9jYXRfZ2V0X21heF9jb3NfbWF4JyB0byAnbDJfY2F0X2dl dF9jb3NfbWF4Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gcmVuYW1l ICdkYXRbXScgdG8gJ2RhdGFbXScKICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAg IC0gbW92ZSAnY3B1X3ByZXBhcmVfd29yaycgY29udGVudHMgaW50byAncHNyX2NwdV9wcmVwYXJl Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKdjQ6CiAgICAtIGNyZWF0ZSB0aGlz IHBhdGNoIGJlY2F1c2Ugb2YgY29kZXMgYXJjaGl0ZWN0dXJlIGNoYW5nZS4KICAgICAgKHN1Z2dl c3RlZCBieSBKYW4gQmV1bGljaCkKLS0tCiB4ZW4vYXJjaC94ODYvcHNyLmMgICAgICAgICAgICAg IHwgMjYgKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRlL2FzbS14ODYvbXNy LWluZGV4LmggfCAgMSArCiB4ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5oICAgICAgIHwgIDIgKysK IDMgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNo L3g4Ni9wc3IuYyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwppbmRleCBiZmRjMjBmLi43NWViYjM5IDEw MDY0NAotLS0gYS94ZW4vYXJjaC94ODYvcHNyLmMKKysrIGIveGVuL2FyY2gveDg2L3Bzci5jCkBA IC02Myw2ICs2Myw3IEBACiBlbnVtIHBzcl9mZWF0X3R5cGUgewogICAgIFBTUl9TT0NLRVRfTDNf Q0FULAogICAgIFBTUl9TT0NLRVRfTDNfQ0RQLAorICAgIFBTUl9TT0NLRVRfTDJfQ0FULAogICAg IFBTUl9TT0NLRVRfRkVBVF9OVU0sCiAgICAgUFNSX1NPQ0tFVF9GRUFUX1VOS05PV04sCiB9OwpA QCAtMTUyLDYgKzE1Myw3IEBAIHN0YXRpYyBERUZJTkVfUEVSX0NQVShzdHJ1Y3QgcHNyX2Fzc29j LCBwc3JfYXNzb2MpOwogICovCiBzdGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sM19jYXQ7 CiBzdGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sM19jZHA7CitzdGF0aWMgc3RydWN0IGZl YXRfbm9kZSAqZmVhdF9sMl9jYXQ7CiAKIC8qIENvbW1vbiBmdW5jdGlvbnMgKi8KICNkZWZpbmUg Y2F0X2RlZmF1bHRfdmFsKGxlbikgKDB4ZmZmZmZmZmYgPj4gKDMyIC0gKGxlbikpKQpAQCAtMjc1 LDYgKzI3Nyw3IEBAIHN0YXRpYyB2b2lkIGNhdF9pbml0X2ZlYXR1cmUoY29uc3Qgc3RydWN0IGNw dWlkX2xlYWYgKnJlZ3MsCiAgICAgc3dpdGNoICggdHlwZSApCiAgICAgewogICAgIGNhc2UgUFNS X1NPQ0tFVF9MM19DQVQ6CisgICAgY2FzZSBQU1JfU09DS0VUX0wyX0NBVDoKICAgICAgICAgLyog Y29zPTAgaXMgcmVzZXJ2ZWQgYXMgZGVmYXVsdCBjYm0oYWxsIGJpdHMgd2l0aGluIGNibV9sZW4g YXJlIDEpLiAqLwogICAgICAgICBmZWF0LT5jb3NfcmVnX3ZhbFswXSA9IGNhdF9kZWZhdWx0X3Zh bChmZWF0LT5jYm1fbGVuKTsKIApAQCAtMzY5LDYgKzM3MiwxMSBAQCBzdGF0aWMgc3RydWN0IGZl YXRfcHJvcHMgbDNfY2RwX3Byb3BzID0gewogICAgIC53cml0ZV9tc3IgPSBsM19jZHBfd3JpdGVf bXNyLAogfTsKIAorLyogTDIgQ0FUIHByb3BzICovCitzdGF0aWMgc3RydWN0IGZlYXRfcHJvcHMg bDJfY2F0X3Byb3BzID0geworICAgIC5jb3NfbnVtID0gMSwKK307CisKIHN0YXRpYyB2b2lkIF9f aW5pdCBwYXJzZV9wc3JfYm9vbChjaGFyICpzLCBjaGFyICp2YWx1ZSwgY2hhciAqZmVhdHVyZSwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbWFzaykKIHsK QEAgLTEyOTEsNiArMTI5OSwxMCBAQCBzdGF0aWMgaW50IHBzcl9jcHVfcHJlcGFyZSh2b2lkKQog ICAgICAgICAgKGZlYXRfbDNfY2RwID0geHphbGxvYyhzdHJ1Y3QgZmVhdF9ub2RlKSkgPT0gTlVM TCApCiAgICAgICAgIHJldHVybiAtRU5PTUVNOwogCisgICAgaWYgKCBmZWF0X2wyX2NhdCA9PSBO VUxMICYmCisgICAgICAgICAoZmVhdF9sMl9jYXQgPSB4emFsbG9jKHN0cnVjdCBmZWF0X25vZGUp KSA9PSBOVUxMICkKKyAgICAgICAgcmV0dXJuIC1FTk9NRU07CisKICAgICByZXR1cm4gMDsKIH0K IApAQCAtMTM0NSw2ICsxMzU3LDIwIEBAIHN0YXRpYyB2b2lkIHBzcl9jcHVfaW5pdCh2b2lkKQog ICAgICAgICBpbmZvLT5mZWF0X2luaXQgPSB0cnVlOwogICAgIH0KIAorICAgIGNwdWlkX2NvdW50 X2xlYWYoUFNSX0NQVUlEX0xFVkVMX0NBVCwgMCwgJnJlZ3MpOworICAgIGlmICggcmVncy5iICYg UFNSX1JFU09VUkNFX1RZUEVfTDIgKQorICAgIHsKKyAgICAgICAgY3B1aWRfY291bnRfbGVhZihQ U1JfQ1BVSURfTEVWRUxfQ0FULCAyLCAmcmVncyk7CisKKyAgICAgICAgZmVhdCA9IGZlYXRfbDJf Y2F0OworICAgICAgICBmZWF0X2wyX2NhdCA9IE5VTEw7CisgICAgICAgIGwyX2NhdF9wcm9wcy50 eXBlWzBdID0gUFNSX0NCTV9UWVBFX0wyOworICAgICAgICBmZWF0X3Byb3BzW1BTUl9TT0NLRVRf TDJfQ0FUXSA9ICZsMl9jYXRfcHJvcHM7CisgICAgICAgIGNhdF9pbml0X2ZlYXR1cmUoJnJlZ3Ms IGZlYXQsIGluZm8sIFBTUl9TT0NLRVRfTDJfQ0FUKTsKKworICAgICAgICBpbmZvLT5mZWF0X2lu aXQgPSB0cnVlOworICAgIH0KKwogIGFzc29jX2luaXQ6CiAgICAgcHNyX2Fzc29jX2luaXQoKTsK IH0KZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbXNyLWluZGV4LmggYi94ZW4vaW5j bHVkZS9hc20teDg2L21zci1pbmRleC5oCmluZGV4IDc3MWU3NTAuLjZjNDljNmQgMTAwNjQ0Ci0t LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbXNyLWluZGV4LmgKKysrIGIveGVuL2luY2x1ZGUvYXNt LXg4Ni9tc3ItaW5kZXguaApAQCAtMzQ1LDYgKzM0NSw3IEBACiAjZGVmaW5lIE1TUl9JQTMyX1BT Ul9MM19NQVNLKG4pCSgweDAwMDAwYzkwICsgKG4pKQogI2RlZmluZSBNU1JfSUEzMl9QU1JfTDNf TUFTS19DT0RFKG4pCSgweDAwMDAwYzkwICsgKG4pICogMiArIDEpCiAjZGVmaW5lIE1TUl9JQTMy X1BTUl9MM19NQVNLX0RBVEEobikJKDB4MDAwMDBjOTAgKyAobikgKiAyKQorI2RlZmluZSBNU1Jf SUEzMl9QU1JfTDJfTUFTSyhuKQkJKDB4MDAwMDBkMTAgKyAobikpCiAKIC8qIEludGVsIE1vZGVs IDYgKi8KICNkZWZpbmUgTVNSX1A2X1BFUkZDVFIobikJCSgweDAwMDAwMGMxICsgKG4pKQpkaWZm IC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wc3IuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYv cHNyLmgKaW5kZXggYWU1MmQ4NS4uNThiOTUyOCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNt LXg4Ni9wc3IuaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5oCkBAIC0yMyw2ICsyMyw3 IEBACiAKIC8qIFJlc291cmNlIFR5cGUgRW51bWVyYXRpb24gKi8KICNkZWZpbmUgUFNSX1JFU09V UkNFX1RZUEVfTDMgICAgICAgICAgICAweDIKKyNkZWZpbmUgUFNSX1JFU09VUkNFX1RZUEVfTDIg ICAgICAgICAgICAweDQKIAogLyogTDMgTW9uaXRvcmluZyBGZWF0dXJlcyAqLwogI2RlZmluZSBQ U1JfQ01UX0wzX09DQ1VQQU5DWSAgICAgICAgICAgIDB4MQpAQCAtNTYsNiArNTcsNyBAQCBlbnVt IGNibV90eXBlIHsKICAgICBQU1JfQ0JNX1RZUEVfTDMsCiAgICAgUFNSX0NCTV9UWVBFX0wzX0NP REUsCiAgICAgUFNSX0NCTV9UWVBFX0wzX0RBVEEsCisgICAgUFNSX0NCTV9UWVBFX0wyLAogfTsK IAogZXh0ZXJuIHN0cnVjdCBwc3JfY210ICpwc3JfY210OwotLSAKMS45LjEKCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBs aXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2 ZWwK