From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v4 17/24] x86: L2 CAT: implement CPU init and free flow. Date: Wed, 14 Dec 2016 12:07:57 +0800 Message-ID: <1481688484-5093-18-git-send-email-yi.y.sun@linux.intel.com> References: <1481688484-5093-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.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cH7S8-0005tv-Ip for xen-devel@lists.xenproject.org; Wed, 14 Dec 2016 11:10:28 +0000 In-Reply-To: <1481688484-5093-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: 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 List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBDUFUgaW5pdCBhbmQgZnJlZSBmbG93IGZvciBMMiBD QVQgaW5jbHVkaW5nCkwyIENBVCBpbml0aWFsaXphdGlvbiBjYWxsYmFjayBmdW5jdGlvbi4KClNp Z25lZC1vZmYtYnk6IFlpIFN1biA8eWkueS5zdW5AbGludXguaW50ZWwuY29tPgotLS0KIHhlbi9h cmNoL3g4Ni9wc3IuYyAgICAgICAgfCA3NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9wc3IuaCB8ICAxICsKIDIgZmls ZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9w c3IuYyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwppbmRleCBlZWUxZjI0Li5iODkwYjY0IDEwMDY0NAot LS0gYS94ZW4vYXJjaC94ODYvcHNyLmMKKysrIGIveGVuL2FyY2gveDg2L3Bzci5jCkBAIC05Miw2 ICs5Miw3IEBAIHN0cnVjdCBmZWF0X2h3X2luZm8gewogICAgIHVuaW9uIHsKICAgICAgICAgc3Ry dWN0IHBzcl9jYXRfaHdfaW5mbyBsM19jYXRfaW5mbzsKICAgICAgICAgc3RydWN0IHBzcl9jYXRf aHdfaW5mbyBsM19jZHBfaW5mbzsKKyAgICAgICAgc3RydWN0IHBzcl9jYXRfaHdfaW5mbyBsMl9j YXRfaW5mbzsKICAgICB9OwogfTsKIApAQCAtMjQ4LDYgKzI0OSw3IEBAIHN0YXRpYyBERUZJTkVf UEVSX0NQVShzdHJ1Y3QgcHNyX2Fzc29jLCBwc3JfYXNzb2MpOwogLyogRGVjbGFyZSBmZWF0dXJl IGxpc3QgZW50cnkuICovCiBzdGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sM19jYXQ7CiBz dGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sM19jZHA7CitzdGF0aWMgc3RydWN0IGZlYXRf bm9kZSAqZmVhdF9sMl9jYXQ7CiAKIC8qIENvbW1vbiBmdW5jdGlvbnMuICovCiBzdGF0aWMgdm9p ZCBmcmVlX2ZlYXR1cmUoc3RydWN0IHBzcl9zb2NrZXRfaW5mbyAqaW5mbykKQEAgLTI3Niw2ICsy NzgsMTIgQEAgc3RhdGljIHZvaWQgZnJlZV9mZWF0dXJlKHN0cnVjdCBwc3Jfc29ja2V0X2luZm8g KmluZm8pCiAgICAgICAgIHhmcmVlKGZlYXRfbDNfY2RwKTsKICAgICAgICAgZmVhdF9sM19jZHAg PSBOVUxMOwogICAgIH0KKworICAgIGlmICggZmVhdF9sMl9jYXQgKQorICAgIHsKKyAgICAgICAg eGZyZWUoZmVhdF9sMl9jYXQpOworICAgICAgICBmZWF0X2wyX2NhdCA9IE5VTEw7CisgICAgfQog fQogCiBzdGF0aWMgYm9vbF90IHBzcl9jaGVja19jYm0odW5zaWduZWQgaW50IGNibV9sZW4sIHVp bnQ2NF90IGNibSkKQEAgLTcyNiw2ICs3MzQsNTEgQEAgc3RydWN0IGZlYXRfb3BzIGwzX2NkcF9v cHMgPSB7CiAgICAgLndyaXRlX21zciA9IGwzX2NkcF93cml0ZV9tc3IsCiB9OwogCisvKiBMMiBD QVQgY2FsbGJhY2sgZnVuY3Rpb25zIGltcGxlbWVudGF0aW9uLiAqLworc3RhdGljIHZvaWQgbDJf Y2F0X2luaXRfZmVhdHVyZSh1bnNpZ25lZCBpbnQgZWF4LCB1bnNpZ25lZCBpbnQgZWJ4LAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZWN4LCB1bnNpZ25lZCBp bnQgZWR4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmVhdF9ub2Rl ICpmZWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcHNyX3NvY2tl dF9pbmZvICppbmZvKQoreworICAgIHN0cnVjdCBwc3JfY2F0X2h3X2luZm8gbDJfY2F0OworICAg IHVuc2lnbmVkIGludCBzb2NrZXQ7CisKKyAgICAvKiBObyB2YWxpZCB2YWx1ZXMgc28gZG8gbm90 IGVuYWJsZSB0aGUgZmVhdHVyZS4gKi8KKyAgICBpZiAoICFlYXggfHwgIWVkeCApCisgICAgICAg IHJldHVybjsKKworICAgIGwyX2NhdC5jYm1fbGVuID0gKGVheCAmIENBVF9DQk1fTEVOX01BU0sp ICsgMTsKKyAgICBsMl9jYXQuY29zX21heCA9IG1pbihvcHRfY29zX21heCwgZWR4ICYgQ0FUX0NP U19NQVhfTUFTSyk7CisKKyAgICAvKiBjb3M9MCBpcyByZXNlcnZlZCBhcyBkZWZhdWx0IGNibShh bGwgb25lcykuICovCisgICAgZmVhdC0+Y29zX3JlZ192YWxbMF0gPSAoMXVsbCA8PCBsMl9jYXQu Y2JtX2xlbikgLSAxOworCisgICAgZmVhdC0+ZmVhdHVyZSA9IFBTUl9TT0NLRVRfTDJfQ0FUOwor ICAgIF9fc2V0X2JpdChQU1JfU09DS0VUX0wyX0NBVCwgJmluZm8tPmZlYXRfbWFzayk7CisKKyAg ICBmZWF0LT5pbmZvLmwyX2NhdF9pbmZvID0gbDJfY2F0OworCisgICAgaW5mby0+bnJfZmVhdCsr OworCisgICAgLyogQWRkIHRoaXMgZmVhdHVyZSBpbnRvIGxpc3QuICovCisgICAgbGlzdF9hZGRf dGFpbCgmZmVhdC0+bGlzdCwgJmluZm8tPmZlYXRfbGlzdCk7CisKKyAgICBzb2NrZXQgPSBjcHVf dG9fc29ja2V0KHNtcF9wcm9jZXNzb3JfaWQoKSk7CisgICAgcHJpbnRrKFhFTkxPR19JTkZPICJM MiBDQVQ6IGVuYWJsZWQgb24gc29ja2V0ICV1LCBjb3NfbWF4OiV1LCBjYm1fbGVuOiV1LlxuIiwK KyAgICAgICAgICAgc29ja2V0LCBmZWF0LT5pbmZvLmwyX2NhdF9pbmZvLmNvc19tYXgsCisgICAg ICAgICAgIGZlYXQtPmluZm8ubDJfY2F0X2luZm8uY2JtX2xlbik7Cit9CisKK3N0YXRpYyB1bnNp Z25lZCBpbnQgbDJfY2F0X2dldF9tYXhfY29zX21heChjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpm ZWF0KQoreworICAgIHJldHVybiBmZWF0LT5pbmZvLmwyX2NhdF9pbmZvLmNvc19tYXg7Cit9CisK K3N0cnVjdCBmZWF0X29wcyBsMl9jYXRfb3BzID0geworICAgIC5pbml0X2ZlYXR1cmUgPSBsMl9j YXRfaW5pdF9mZWF0dXJlLAorICAgIC5nZXRfbWF4X2Nvc19tYXggPSBsMl9jYXRfZ2V0X21heF9j b3NfbWF4LAorfTsKKwogc3RhdGljIHZvaWQgX19pbml0IHBhcnNlX3Bzcl9ib29sKGNoYXIgKnMs IGNoYXIgKnZhbHVlLCBjaGFyICpmZWF0dXJlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGludCBtYXNrKQogewpAQCAtMTQxOSw2ICsxNDcyLDE3IEBAIHN0YXRp YyBpbnQgY3B1X3ByZXBhcmVfd29yayh1bnNpZ25lZCBpbnQgY3B1KQogICAgICAgICByZXR1cm4g LUVOT01FTTsKICAgICB9CiAKKyAgICBpZiAoIGZlYXRfbDJfY2F0ID09IE5VTEwgJiYKKyAgICAg ICAgIChmZWF0X2wyX2NhdCA9IHh6YWxsb2Moc3RydWN0IGZlYXRfbm9kZSkpID09IE5VTEwgKQor ICAgIHsKKyAgICAgICAgeGZyZWUoZmVhdF9sM19jYXQpOworICAgICAgICBmZWF0X2wzX2NhdCA9 IE5VTEw7CisKKyAgICAgICAgeGZyZWUoZmVhdF9sM19jZHApOworICAgICAgICBmZWF0X2wzX2Nk cCA9IE5VTEw7CisgICAgICAgIHJldHVybiAtRU5PTUVNOworICAgIH0KKwogICAgIHJldHVybiAw OwogfQogCkBAIC0xNDYwLDYgKzE1MjQsMTggQEAgc3RhdGljIHZvaWQgY3B1X2luaXRfd29yayh2 b2lkKQogCiAgICAgICAgIGZlYXRfdG1wLT5vcHMuaW5pdF9mZWF0dXJlKGVheCwgZWJ4LCBlY3gs IGVkeCwgZmVhdF90bXAsIGluZm8pOwogICAgIH0KKworICAgIGNwdWlkX2NvdW50KFBTUl9DUFVJ RF9MRVZFTF9DQVQsIDAsICZlYXgsICZlYngsICZlY3gsICZlZHgpOworICAgIGlmICggZWJ4ICYg UFNSX1JFU09VUkNFX1RZUEVfTDIgKQorICAgIHsKKyAgICAgICAgZmVhdF90bXAgPSBmZWF0X2wy X2NhdDsKKyAgICAgICAgZmVhdF9sMl9jYXQgPSBOVUxMOworCisgICAgICAgIC8qIEluaXRpYWxp emUgTDIgQ0FUIGFjY29yZGluZyB0byBDUFVJRC4gKi8KKyAgICAgICAgY3B1aWRfY291bnQoUFNS X0NQVUlEX0xFVkVMX0NBVCwgMiwgJmVheCwgJmVieCwgJmVjeCwgJmVkeCk7CisgICAgICAgIGZl YXRfdG1wLT5vcHMgPSBsMl9jYXRfb3BzOworICAgICAgICBmZWF0X3RtcC0+b3BzLmluaXRfZmVh dHVyZShlYXgsIGVieCwgZWN4LCBlZHgsIGZlYXRfdG1wLCBpbmZvKTsKKyAgICB9CiB9CiAKIHN0 YXRpYyB2b2lkIGNwdV9maW5pX3dvcmsodW5zaWduZWQgaW50IGNwdSkKZGlmZiAtLWdpdCBhL3hl bi9pbmNsdWRlL2FzbS14ODYvcHNyLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5oCmluZGV4 IGQyNDVkZTMuLmE3ZmMxM2QgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcHNyLmgK KysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wc3IuaApAQCAtMjMsNiArMjMsNyBAQAogCiAvKiBS ZXNvdXJjZSBUeXBlIEVudW1lcmF0aW9uICovCiAjZGVmaW5lIFBTUl9SRVNPVVJDRV9UWVBFX0wz ICAgICAgICAgICAgMHgyCisjZGVmaW5lIFBTUl9SRVNPVVJDRV9UWVBFX0wyICAgICAgICAgICAg MHg0CiAKIC8qIEwzIE1vbml0b3JpbmcgRmVhdHVyZXMgKi8KICNkZWZpbmUgUFNSX0NNVF9MM19P Q0NVUEFOQ1kgICAgICAgICAgIDB4MQotLSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK