From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v10 06/25] x86: refactor psr: L3 CAT: implement Domain init/free and schedule flows. Date: Sat, 1 Apr 2017 21:53:37 +0800 Message-ID: <1491054836-30488-7-git-send-email-yi.y.sun@linux.intel.com> References: <1491054836-30488-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 1cuJTT-0005YB-Qr for xen-devel@lists.xenproject.org; Sat, 01 Apr 2017 13:53:51 +0000 In-Reply-To: <1491054836-30488-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 VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBEb21haW4gaW5pdC9mcmVlIGFuZCBzY2hlZHVsZSBm bG93cy4KLSBXaGVuIGRvbWFpbiBpbml0LCBpdHMgcHNyIHJlc291cmNlIHNob3VsZCBiZSBhbGxv Y2F0ZWQuCi0gV2hlbiBkb21haW4gZnJlZSwgaXRzIHBzciByZXNvdXJjZSBzaG91bGQgYmUgZnJl ZWQgdG9vLgotIFdoZW4gZG9tYWluIGlzIHNjaGVkdWxlZCwgaXRzIENPUyBJRCBvbiB0aGUgc29j a2V0IHNob3VsZCBiZQogIHNldCBpbnRvIEFTU09DIHJlZ2lzdGVyIHRvIG1ha2UgY29ycmVzcG9u ZGluZyBDT1MgTVNSIHZhbHVlCiAgd29yay4KClNpZ25lZC1vZmYtYnk6IFlpIFN1biA8eWkueS5z dW5AbGludXguaW50ZWwuY29tPgotLS0KdjEwOgogICAgLSByZW1vdmUgJ2NhdF9nZXRfY29zX21h eCcgYXMgJ2Nvc19tYXgnIGlzIGEgZmVhdHVyZSBwcm9wZXJ0eSBub3cgd2hpY2gKICAgICAgY2Fu IGJlIGRpcmVjdGx5IHVzZWQuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAt IHJlcGxhY2UgJ2luZm8tPmZlYXRfbWFzaycgY2hlY2sgdG8gJ2ZlYXRfaW5pdF9kb25lJy4KICAg ICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKdjk6CiAgICAtIHJlbmFtZSAnbDNfY2F0X2dl dF9jb3NfbWF4JyB0byAnY2F0X2dldF9jb3NfbWF4JyB0byBjb3ZlciBhbGwgQ0FUL0NEUAogICAg ICBmZWF0dXJlcy4KICAgICAgKHN1Z2dlc3RlZCBieSBSb2dlciBQYXUpCiAgICAtIHJlcGxhY2Ug ZmVhdHVyZSBsaXN0IGhhbmRsaW5nIHRvIGZlYXR1cmUgYXJyYXkgaGFuZGxpbmcuCiAgICAgIChz dWdnZXN0ZWQgYnkgUm9nZXIgUGF1KQogICAgLSBpbXBsZW1lbnQgJ3Bzcl9hbGxvY19jb3MnIHRv IG1hdGNoICdwc3JfZnJlZV9jb3MnLgogICAgICAoc3VnZ2VzdGVkIGJ5IFdlaSBMaXUpCiAgICAt IHVzZSAncHNyX2FsbG9jX2ZlYXRfZW5hYmxlZCcuCiAgICAgIChzdWdnZXN0ZWQgYnkgV2VpIExp dSkKICAgIC0gZml4IGNvZGluZyBzdHlsZSBpc3N1ZS4KICAgICAgKHN1Z2dlc3RlZCBieSBXZWkg TGl1KQogICAgLSByZW1vdmUgJ2lubGluZScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxp Y2gpCiAgICAtIG1vZGlmeSBwYXRjaCB0aXRsZSB0byBpbmRpY2F0ZSAnTDMgQ0FUJy4KICAgICAg KHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gcmVtb3ZlICdwc3JfY29zX2lkcycgY2hl Y2sgaW4gJ3Bzcl9mcmVlX2NvcycuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnY2 OgogICAgLSBjaGFuZ2UgJ1BTUl9BU1NPQ19SRUdfUE9TJyB0byAnUFNSX0FTU09DX1JFR19TSElG VCcuCiAgICAgIChzdWdnZXN0ZWQgYnkgS29ucmFkIFJ6ZXN6dXRlayBXaWxrKQp2NToKICAgIC0g cmVuYW1lICdmZWF0X3RtcCcgdG8gJ2ZlYXQnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVs aWNoKQogICAgLSBkZWZpbmUgJ1BTUl9BU1NPQ19SRUdfUE9TJy4KICAgICAgKHN1Z2dlc3RlZCBi eSBKYW4gQmV1bGljaCkKdjQ6CiAgICAtIGNyZWF0ZSB0aGlzIHBhdGNoIHRvIG1ha2UgY29kZXMg ZWFzaWVyIHRvIHVuZGVyc3RhbmQuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCi0t LQogeGVuL2FyY2gveDg2L3Bzci5jIHwgNzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNjggaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvcHNyLmMgYi94ZW4v YXJjaC94ODYvcHNyLmMKaW5kZXggZTQyMmEyMy4uMzQyMTIxOSAxMDA2NDQKLS0tIGEveGVuL2Fy Y2gveDg2L3Bzci5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwpAQCAtNDksNiArNDksOCBAQAog ICovCiAjZGVmaW5lIE1BWF9DT1NfUkVHX0NOVCAgMTI4CiAKKyNkZWZpbmUgUFNSX0FTU09DX1JF R19TSElGVCAzMgorCiBlbnVtIHBzcl9mZWF0X3R5cGUgewogICAgIFBTUl9TT0NLRVRfTDNfQ0FU LAogICAgIFBTUl9TT0NLRVRfTDNfQ0RQLApAQCAtMzc2LDExICszNzgsMzkgQEAgdm9pZCBwc3Jf ZnJlZV9ybWlkKHN0cnVjdCBkb21haW4gKmQpCiAgICAgZC0+YXJjaC5wc3Jfcm1pZCA9IDA7CiB9 CiAKLXN0YXRpYyBpbmxpbmUgdm9pZCBwc3JfYXNzb2NfaW5pdCh2b2lkKQorc3RhdGljIHVuc2ln bmVkIGludCBnZXRfbWF4X2Nvc19tYXgoY29uc3Qgc3RydWN0IHBzcl9zb2NrZXRfaW5mbyAqaW5m bykKK3sKKyAgICBjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0OworICAgIHVuc2lnbmVkIGlu dCBjb3NfbWF4ID0gMCwgaTsKKworICAgIGZvciAoIGkgPSAwOyBpIDwgUFNSX1NPQ0tFVF9NQVhf RkVBVDsgaSsrICkKKyAgICB7CisgICAgICAgIGZlYXQgPSBpbmZvLT5mZWF0dXJlc1tpXTsKKyAg ICAgICAgaWYgKCAhZmVhdCApCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICBjb3Nf bWF4ID0gbWF4KGZlYXQtPnByb3BzLT5jb3NfbWF4LCBjb3NfbWF4KTsKKyAgICB9CisKKyAgICBy ZXR1cm4gY29zX21heDsKK30KKworc3RhdGljIHZvaWQgcHNyX2Fzc29jX2luaXQodm9pZCkKIHsK ICAgICBzdHJ1Y3QgcHNyX2Fzc29jICpwc3JhID0gJnRoaXNfY3B1KHBzcl9hc3NvYyk7CiAKLSAg ICBpZiAoIHBzcl9jbXRfZW5hYmxlZCgpICkKKyAgICBpZiAoIHBzcl9hbGxvY19mZWF0X2VuYWJs ZWQoKSApCisgICAgeworICAgICAgICB1bnNpZ25lZCBpbnQgc29ja2V0ID0gY3B1X3RvX3NvY2tl dChzbXBfcHJvY2Vzc29yX2lkKCkpOworICAgICAgICBjb25zdCBzdHJ1Y3QgcHNyX3NvY2tldF9p bmZvICppbmZvID0gc29ja2V0X2luZm8gKyBzb2NrZXQ7CisgICAgICAgIHVuc2lnbmVkIGludCBj b3NfbWF4ID0gZ2V0X21heF9jb3NfbWF4KGluZm8pOworCisgICAgICAgIGlmICggZmVhdF9pbml0 X2RvbmUoaW5mbykgKQorICAgICAgICAgICAgcHNyYS0+Y29zX21hc2sgPSAoKDF1bGwgPDwgZ2V0 X2NvdW50X29yZGVyKGNvc19tYXgpKSAtIDEpIDw8CisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFBTUl9BU1NPQ19SRUdfU0hJRlQ7CisgICAgfQorCisgICAgaWYgKCBwc3JfY210X2VuYWJs ZWQoKSB8fCBwc3JhLT5jb3NfbWFzayApCiAgICAgICAgIHJkbXNybChNU1JfSUEzMl9QU1JfQVNT T0MsIHBzcmEtPnZhbCk7CiB9CiAKQEAgLTM4OSw2ICs0MTksMTMgQEAgc3RhdGljIGlubGluZSB2 b2lkIHBzcl9hc3NvY19ybWlkKHVpbnQ2NF90ICpyZWcsIHVuc2lnbmVkIGludCBybWlkKQogICAg ICpyZWcgPSAoKnJlZyAmIH5ybWlkX21hc2spIHwgKHJtaWQgJiBybWlkX21hc2spOwogfQogCitz dGF0aWMgdm9pZCBwc3JfYXNzb2NfY29zKHVpbnQ2NF90ICpyZWcsIHVuc2lnbmVkIGludCBjb3Ms CisgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90IGNvc19tYXNrKQoreworICAgICpy ZWcgPSAoKnJlZyAmIH5jb3NfbWFzaykgfAorICAgICAgICAgICAgKCgodWludDY0X3QpY29zIDw8 IFBTUl9BU1NPQ19SRUdfU0hJRlQpICYgY29zX21hc2spOworfQorCiB2b2lkIHBzcl9jdHh0X3N3 aXRjaF90byhzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHN0cnVjdCBwc3JfYXNzb2MgKnBzcmEg PSAmdGhpc19jcHUocHNyX2Fzc29jKTsKQEAgLTM5Nyw2ICs0MzQsMTEgQEAgdm9pZCBwc3JfY3R4 dF9zd2l0Y2hfdG8oc3RydWN0IGRvbWFpbiAqZCkKICAgICBpZiAoIHBzcl9jbXRfZW5hYmxlZCgp ICkKICAgICAgICAgcHNyX2Fzc29jX3JtaWQoJnJlZywgZC0+YXJjaC5wc3Jfcm1pZCk7CiAKKyAg ICBpZiAoIHBzcmEtPmNvc19tYXNrICkKKyAgICAgICAgcHNyX2Fzc29jX2NvcygmcmVnLCBkLT5h cmNoLnBzcl9jb3NfaWRzID8KKyAgICAgICAgICAgICAgICAgICAgICBkLT5hcmNoLnBzcl9jb3Nf aWRzW2NwdV90b19zb2NrZXQoc21wX3Byb2Nlc3Nvcl9pZCgpKV0gOgorICAgICAgICAgICAgICAg ICAgICAgIDAsIHBzcmEtPmNvc19tYXNrKTsKKwogICAgIGlmICggcmVnICE9IHBzcmEtPnZhbCAp CiAgICAgewogICAgICAgICB3cm1zcmwoTVNSX0lBMzJfUFNSX0FTU09DLCByZWcpOwpAQCAtNDIy LDE0ICs0NjQsMzcgQEAgaW50IHBzcl9zZXRfbDNfY2JtKHN0cnVjdCBkb21haW4gKmQsIHVuc2ln bmVkIGludCBzb2NrZXQsCiAgICAgcmV0dXJuIDA7CiB9CiAKLWludCBwc3JfZG9tYWluX2luaXQo c3RydWN0IGRvbWFpbiAqZCkKKy8qIENhbGxlZCB3aXRoIGRvbWFpbiBsb2NrIGhlbGQsIG5vIGV4 dHJhIGxvY2sgbmVlZGVkIGZvciAncHNyX2Nvc19pZHMnICovCitzdGF0aWMgdm9pZCBwc3JfZnJl ZV9jb3Moc3RydWN0IGRvbWFpbiAqZCkKK3sKKyAgICB4ZnJlZShkLT5hcmNoLnBzcl9jb3NfaWRz KTsKKyAgICBkLT5hcmNoLnBzcl9jb3NfaWRzID0gTlVMTDsKK30KKworc3RhdGljIGludCBwc3Jf YWxsb2NfY29zKHN0cnVjdCBkb21haW4gKmQpCiB7CisgICAgZC0+YXJjaC5wc3JfY29zX2lkcyA9 IHh6YWxsb2NfYXJyYXkodW5zaWduZWQgaW50LCBucl9zb2NrZXRzKTsKKyAgICBpZiAoICFkLT5h cmNoLnBzcl9jb3NfaWRzICkKKyAgICAgICAgcmV0dXJuIC1FTk9NRU07CisKICAgICByZXR1cm4g MDsKIH0KIAoraW50IHBzcl9kb21haW5faW5pdChzdHJ1Y3QgZG9tYWluICpkKQoreworICAgIC8q IEluaXQgdG8gc3VjY2VzcyB2YWx1ZSAqLworICAgIGludCByZXQgPSAwOworCisgICAgaWYgKCBw c3JfYWxsb2NfZmVhdF9lbmFibGVkKCkgKQorICAgICAgICByZXQgPSBwc3JfYWxsb2NfY29zKGQp OworCisgICAgcmV0dXJuIHJldDsKK30KKwogdm9pZCBwc3JfZG9tYWluX2ZyZWUoc3RydWN0IGRv bWFpbiAqZCkKIHsKICAgICBwc3JfZnJlZV9ybWlkKGQpOworICAgIHBzcl9mcmVlX2NvcyhkKTsK IH0KIAogc3RhdGljIHZvaWQgX19pbml0IGluaXRfcHNyKHZvaWQpCi0tIAoxLjkuMQoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hl bi1kZXZlbAo=