From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v10 16/25] x86: refactor psr: CDP: implement get value flow. Date: Sat, 1 Apr 2017 21:53:47 +0800 Message-ID: <1491054836-30488-17-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 1cuJTy-00061k-Hn for xen-devel@lists.xenproject.org; Sat, 01 Apr 2017 13:54:22 +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 VGhpcyBwYXRjaCBpbXBsZW1lbnRzIEwzIENEUCBnZXQgdmFsdWUgY2FsbGJhY2sgZnVuY3Rpb24u CgpXaXRoIHRoaXMgcGF0Y2gsICdwc3ItY2F0LXNob3cnIGNhbiB3b3JrIGZvciBMMyBDRFAuCgpT aWduZWQtb2ZmLWJ5OiBZaSBTdW4gPHlpLnkuc3VuQGxpbnV4LmludGVsLmNvbT4KLS0tCnYxMDoK ICAgIC0gYWRkICdlbnVtIGNibV90eXBlIHR5cGUnIGludG8gJ2dldF92YWwnIHBhcmFtZXRlcnMg dG8gaGFuZGxlIENEUCBjYXNlLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQp2OToK ICAgIC0gbW9kaWZ5IHRoZSB0eXBlIG9mICdsM19jZHBfZ2V0X3ZhbCcgdG8gJ3ZvaWQnLgogICAg LSBjb3MgY2hlY2tpbmcgaGFzIGJlZW4gZG9uZSBpbiBjb21tb24gZnVuY3Rpb24gc28gcmVtb3Zl IHJlbGF0ZWQgY29kZXMKICAgICAgaW4gQ0RQIGNhbGxiYWNrIGZ1bmN0aW9uLgogICAgICAoc3Vn Z2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBjaGFuZ2VzIGFib3V0ICd1aW50NjRfdCcgdG8g J3VpbnQzMl90Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKdjU6CiAgICAtIHJl bW92ZSB0eXBlIGNoZWNrIGluIGNhbGxiYWNrIGZ1bmN0aW9uLgogICAgICAoc3VnZ2VzdGVkIGJ5 IEphbiBCZXVsaWNoKQp2NDoKICAgIC0gY3JlYXRlIHRoaXMgcGF0Y2ggdG8gbWFrZSBjb2RlcyBl YXNpZXIgdG8gdW5kZXJzdGFuZC4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKLS0t CiB4ZW4vYXJjaC94ODYvcHNyLmMgfCAyMiArKysrKysrKysrKysrKysrLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94 ZW4vYXJjaC94ODYvcHNyLmMgYi94ZW4vYXJjaC94ODYvcHNyLmMKaW5kZXggZjA2MTFhZC4uYWNl ZDAxMiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3Bzci5jCisrKyBiL3hlbi9hcmNoL3g4Ni9w c3IuYwpAQCAtMTAwLDcgKzEwMCw3IEBAIHN0cnVjdCBmZWF0X25vZGUgewogCiAgICAgICAgIC8q IGdldF92YWwgaXMgdXNlZCB0byBnZXQgZmVhdHVyZSBDT1MgcmVnaXN0ZXIgdmFsdWUuICovCiAg ICAgICAgIHZvaWQgKCpnZXRfdmFsKShjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0LCB1bnNp Z25lZCBpbnQgY29zLAotICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKnZhbCk7Cisg ICAgICAgICAgICAgICAgICAgICAgICBlbnVtIGNibV90eXBlIHR5cGUsIHVpbnQzMl90ICp2YWwp OwogCiAgICAgICAgIC8qIHdyaXRlX21zciBpcyB1c2VkIHRvIHdyaXRlIG91dCBmZWF0dXJlIE1T UiByZWdpc3Rlci4gKi8KICAgICAgICAgdm9pZCAoKndyaXRlX21zcikodW5zaWduZWQgaW50IGNv cywgdWludDMyX3QgdmFsLApAQCAtMzY2LDcgKzM2Niw3IEBAIHN0YXRpYyBib29sIGNhdF9nZXRf ZmVhdF9pbmZvKGNvbnN0IHN0cnVjdCBmZWF0X25vZGUgKmZlYXQsCiB9CiAKIHN0YXRpYyB2b2lk IGNhdF9nZXRfdmFsKGNvbnN0IHN0cnVjdCBmZWF0X25vZGUgKmZlYXQsIHVuc2lnbmVkIGludCBj b3MsCi0gICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqdmFsKQorICAgICAgICAgICAg ICAgICAgICAgICAgZW51bSBjYm1fdHlwZSB0eXBlLCB1aW50MzJfdCAqdmFsKQogewogICAgICp2 YWwgPSBmZWF0LT5jb3NfcmVnX3ZhbFtjb3NdOwogfQpAQCAtNDAxLDkgKzQwMSwxOSBAQCBzdGF0 aWMgYm9vbCBsM19jZHBfZ2V0X2ZlYXRfaW5mbyhjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0 LAogICAgIHJldHVybiB0cnVlOwogfQogCitzdGF0aWMgdm9pZCBsM19jZHBfZ2V0X3ZhbChjb25z dCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0LCB1bnNpZ25lZCBpbnQgY29zLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgZW51bSBjYm1fdHlwZSB0eXBlLCB1aW50MzJfdCAqdmFsKQoreworICAg IGlmICggdHlwZSA9PSBQU1JfQ0JNX1RZUEVfTDNfREFUQSApCisgICAgICAgICp2YWwgPSBnZXRf Y2RwX2RhdGEoZmVhdCwgY29zKTsKKyAgICBlbHNlCisgICAgICAgICp2YWwgPSBnZXRfY2RwX2Nv ZGUoZmVhdCwgY29zKTsKK30KKwogc3RhdGljIHN0cnVjdCBmZWF0X3Byb3BzIGwzX2NkcF9wcm9w cyA9IHsKICAgICAuY29zX251bSA9IDIsCiAgICAgLmdldF9mZWF0X2luZm8gPSBsM19jZHBfZ2V0 X2ZlYXRfaW5mbywKKyAgICAuZ2V0X3ZhbCA9IGwzX2NkcF9nZXRfdmFsLAogfTsKIAogc3RhdGlj IHZvaWQgX19pbml0IHBhcnNlX3Bzcl9ib29sKGNoYXIgKnMsIGNoYXIgKnZhbHVlLCBjaGFyICpm ZWF0dXJlLApAQCAtNzAxLDcgKzcxMSw3IEBAIGludCBwc3JfZ2V0X3ZhbChzdHJ1Y3QgZG9tYWlu ICpkLCB1bnNpZ25lZCBpbnQgc29ja2V0LAogICAgIGlmICggY29zID4gZmVhdC0+cHJvcHMtPmNv c19tYXggKQogICAgICAgICBjb3MgPSAwOwogCi0gICAgZmVhdC0+cHJvcHMtPmdldF92YWwoZmVh dCwgY29zLCB2YWwpOworICAgIGZlYXQtPnByb3BzLT5nZXRfdmFsKGZlYXQsIGNvcywgdHlwZSwg dmFsKTsKIAogICAgIHJldHVybiAwOwogfQpAQCAtNzU1LDcgKzc2NSw3IEBAIHN0YXRpYyBpbnQg Z2F0aGVyX3ZhbF9hcnJheSh1aW50MzJfdCB2YWxbXSwKICAgICAgICAgICAgIGNvcyA9IDA7CiAK ICAgICAgICAgLyogVmFsdWUgZ2V0dGluZyBvcmRlciBpcyBzYW1lIGFzIGZlYXR1cmUgYXJyYXku ICovCi0gICAgICAgIGZlYXQtPnByb3BzLT5nZXRfdmFsKGZlYXQsIGNvcywgJnZhbFswXSk7Cisg ICAgICAgIGZlYXQtPnByb3BzLT5nZXRfdmFsKGZlYXQsIGNvcywgMCwgJnZhbFswXSk7CiAKICAg ICAgICAgYXJyYXlfbGVuIC09IGZlYXQtPnByb3BzLT5jb3NfbnVtOwogCkBAIC04NTEsNyArODYx LDcgQEAgc3RhdGljIGludCBmaW5kX2Nvcyhjb25zdCB1aW50MzJfdCB2YWxbXSwgdW5zaWduZWQg aW50IGFycmF5X2xlbiwKICAgICAgICAgICAgICAqIENPUyBJRCAwIGFsd2F5cyBzdG9yZXMgdGhl IGRlZmF1bHQgdmFsdWUgc28gaW5wdXQgMCB0byBnZXQKICAgICAgICAgICAgICAqIGRlZmF1bHQg dmFsdWUuCiAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIGZlYXQtPnByb3BzLT5nZXRfdmFs KGZlYXQsIDAsICZkZWZhdWx0X3ZhbCk7CisgICAgICAgICAgICBmZWF0LT5wcm9wcy0+Z2V0X3Zh bChmZWF0LCAwLCAwLCAmZGVmYXVsdF92YWwpOwogCiAgICAgICAgICAgICAvKgogICAgICAgICAg ICAgICogQ29tcGFyZSB2YWx1ZSBhY2NvcmRpbmcgdG8gZmVhdHVyZSBhcnJheSBvcmRlci4KQEAg LTkxMiw3ICs5MjIsNyBAQCBzdGF0aWMgYm9vbCBmaXRzX2Nvc19tYXgoY29uc3QgdWludDMyX3Qg dmFsW10sCiAKICAgICAgICAgaWYgKCBjb3MgPiBmZWF0LT5wcm9wcy0+Y29zX21heCApCiAgICAg ICAgIHsKLSAgICAgICAgICAgIGZlYXQtPnByb3BzLT5nZXRfdmFsKGZlYXQsIDAsICZkZWZhdWx0 X3ZhbCk7CisgICAgICAgICAgICBmZWF0LT5wcm9wcy0+Z2V0X3ZhbChmZWF0LCAwLCAwLCAmZGVm YXVsdF92YWwpOwogICAgICAgICAgICAgaWYgKCB2YWxbMF0gIT0gZGVmYXVsdF92YWwgKQogICAg ICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQotLSAKMS45LjEKCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGlu ZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4t ZGV2ZWwK