From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [RFC XEN PATCH v4 25/41] xen/pmem: support PMEM_REGION_TYPE_DATA for XEN_SYSCTL_nvdimm_pmem_get_regions Date: Thu, 7 Dec 2017 18:10:14 +0800 Message-ID: <20171207101030.22364-26-haozhong.zhang@intel.com> References: <20171207101030.22364-1-haozhong.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171207101030.22364-1-haozhong.zhang@intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Haozhong Zhang , Stefano Stabellini , Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Jan Beulich , Chao Peng , Dan Williams List-Id: xen-devel@lists.xenproject.org QWxsb3cgWEVOX1NZU0NUTF9udmRpbW1fcG1lbV9nZXRfcmVnaW9ucyB0byByZXR1cm4gYSBsaXN0 IG9mIGRhdGEgUE1FTQpyZWdpb25zLgoKU2lnbmVkLW9mZi1ieTogSGFvemhvbmcgWmhhbmcgPGhh b3pob25nLnpoYW5nQGludGVsLmNvbT4KLS0tCkNjOiBJYW4gSmFja3NvbiA8aWFuLmphY2tzb25A ZXUuY2l0cml4LmNvbT4KQ2M6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+CkNjOiBBbmRy ZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgpDYzogR2VvcmdlIER1bmxhcCA8 R2VvcmdlLkR1bmxhcEBldS5jaXRyaXguY29tPgpDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1 c2UuY29tPgpDYzogS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29t PgpDYzogU3RlZmFubyBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgpDYzogVGlt IERlZWdhbiA8dGltQHhlbi5vcmc+Ci0tLQogdG9vbHMvbGlieGMveGNfbWlzYy5jICAgICAgIHwg IDggKysrKysrKysKIHhlbi9jb21tb24vcG1lbS5jICAgICAgICAgICB8IDQ2ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2luY2x1ZGUvcHVibGljL3N5 c2N0bC5oIHwgMTIgKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDY2IGluc2VydGlvbnMo KykKCmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy94Y19taXNjLmMgYi90b29scy9saWJ4Yy94Y19t aXNjLmMKaW5kZXggYjUzNWY4M2RmNi4uZjQyNWZiMDFlMCAxMDA2NDQKLS0tIGEvdG9vbHMvbGli eGMveGNfbWlzYy5jCisrKyBiL3Rvb2xzL2xpYnhjL3hjX21pc2MuYwpAQCAtOTQzLDYgKzk0Mywx MCBAQCBpbnQgeGNfbnZkaW1tX3BtZW1fZ2V0X3JlZ2lvbnMoeGNfaW50ZXJmYWNlICp4Y2gsIHVp bnQ4X3QgdHlwZSwKICAgICAgICAgc2l6ZSA9IHNpemVvZih4ZW5fc3lzY3RsX252ZGltbV9wbWVt X21nbXRfcmVnaW9uX3QpICogbWF4OwogICAgICAgICBicmVhazsKIAorICAgIGNhc2UgUE1FTV9S RUdJT05fVFlQRV9EQVRBOgorICAgICAgICBzaXplID0gc2l6ZW9mKHhlbl9zeXNjdGxfbnZkaW1t X3BtZW1fZGF0YV9yZWdpb25fdCkgKiBtYXg7CisgICAgICAgIGJyZWFrOworCiAgICAgZGVmYXVs dDoKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CiAgICAgfQpAQCAtOTY3LDYgKzk3MSwxMCBAQCBp bnQgeGNfbnZkaW1tX3BtZW1fZ2V0X3JlZ2lvbnMoeGNfaW50ZXJmYWNlICp4Y2gsIHVpbnQ4X3Qg dHlwZSwKICAgICAgICAgc2V0X3hlbl9ndWVzdF9oYW5kbGUocmVnaW9ucy0+dV9idWZmZXIubWdt dF9yZWdpb25zLCBidWZmZXIpOwogICAgICAgICBicmVhazsKIAorICAgIGNhc2UgUE1FTV9SRUdJ T05fVFlQRV9EQVRBOgorICAgICAgICBzZXRfeGVuX2d1ZXN0X2hhbmRsZShyZWdpb25zLT51X2J1 ZmZlci5kYXRhX3JlZ2lvbnMsIGJ1ZmZlcik7CisgICAgICAgIGJyZWFrOworCiAgICAgZGVmYXVs dDoKICAgICAgICAgcmMgPSAtRUlOVkFMOwogICAgICAgICBnb3RvIG91dDsKZGlmZiAtLWdpdCBh L3hlbi9jb21tb24vcG1lbS5jIGIveGVuL2NvbW1vbi9wbWVtLmMKaW5kZXggYjFjZWZjM2Q3MC4u Y2Q1NTdjNzg1MSAxMDA2NDQKLS0tIGEveGVuL2NvbW1vbi9wbWVtLmMKKysrIGIveGVuL2NvbW1v bi9wbWVtLmMKQEAgLTI0Myw2ICsyNDMsNDggQEAgc3RhdGljIGludCBwbWVtX2dldF9tZ210X3Jl Z2lvbnMoCiAgICAgcmV0dXJuIHJjOwogfQogCitzdGF0aWMgaW50IHBtZW1fZ2V0X2RhdGFfcmVn aW9ucygKKyAgICBYRU5fR1VFU1RfSEFORExFXzY0KHhlbl9zeXNjdGxfbnZkaW1tX3BtZW1fZGF0 YV9yZWdpb25fdCkgcmVnaW9ucywKKyAgICB1bnNpZ25lZCBpbnQgKm51bV9yZWdpb25zKQorewor ICAgIHN0cnVjdCBsaXN0X2hlYWQgKmN1cjsKKyAgICB1bnNpZ25lZCBpbnQgbnIgPSAwLCBtYXgg PSAqbnVtX3JlZ2lvbnM7CisgICAgeGVuX3N5c2N0bF9udmRpbW1fcG1lbV9kYXRhX3JlZ2lvbl90 IHJlZ2lvbjsKKyAgICBpbnQgcmMgPSAwOworCisgICAgaWYgKCAhZ3Vlc3RfaGFuZGxlX29rYXko cmVnaW9ucywgbWF4ICogc2l6ZW9mKHJlZ2lvbikpICkKKyAgICAgICAgcmV0dXJuIC1FSU5WQUw7 CisKKyAgICBzcGluX2xvY2soJnBtZW1fZGF0YV9sb2NrKTsKKworICAgIGxpc3RfZm9yX2VhY2go Y3VyLCAmcG1lbV9kYXRhX3JlZ2lvbnMpCisgICAgeworICAgICAgICBzdHJ1Y3QgcG1lbSAqcG1l bSA9IGxpc3RfZW50cnkoY3VyLCBzdHJ1Y3QgcG1lbSwgbGluayk7CisKKyAgICAgICAgaWYgKCBu ciA+PSBtYXggKQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgcmVnaW9uLnNtZm4gPSBw bWVtLT5zbWZuOworICAgICAgICByZWdpb24uZW1mbiA9IHBtZW0tPmVtZm47CisgICAgICAgIHJl Z2lvbi5tZ210X3NtZm4gPSBwbWVtLT51LmRhdGEubWdtdF9zbWZuOworICAgICAgICByZWdpb24u bWdtdF9lbWZuID0gcG1lbS0+dS5kYXRhLm1nbXRfZW1mbjsKKworICAgICAgICBpZiAoIGNvcHlf dG9fZ3Vlc3Rfb2Zmc2V0KHJlZ2lvbnMsIG5yLCAmcmVnaW9uLCAxKSApCisgICAgICAgIHsKKyAg ICAgICAgICAgIHJjID0gLUVGQVVMVDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisK KyAgICAgICAgbnIrKzsKKyAgICB9CisKKyAgICBzcGluX3VubG9jaygmcG1lbV9kYXRhX2xvY2sp OworCisgICAgKm51bV9yZWdpb25zID0gbnI7CisKKyAgICByZXR1cm4gcmM7Cit9CisKIHN0YXRp YyBpbnQgcG1lbV9nZXRfcmVnaW9ucyh4ZW5fc3lzY3RsX252ZGltbV9wbWVtX3JlZ2lvbnNfdCAq cmVnaW9ucykKIHsKICAgICB1bnNpZ25lZCBpbnQgdHlwZSA9IHJlZ2lvbnMtPnR5cGUsIG1heCA9 IHJlZ2lvbnMtPm51bV9yZWdpb25zOwpAQCAtMjYxLDYgKzMwMywxMCBAQCBzdGF0aWMgaW50IHBt ZW1fZ2V0X3JlZ2lvbnMoeGVuX3N5c2N0bF9udmRpbW1fcG1lbV9yZWdpb25zX3QgKnJlZ2lvbnMp CiAgICAgICAgIHJjID0gcG1lbV9nZXRfbWdtdF9yZWdpb25zKHJlZ2lvbnMtPnVfYnVmZmVyLm1n bXRfcmVnaW9ucywgJm1heCk7CiAgICAgICAgIGJyZWFrOwogCisgICAgY2FzZSBQTUVNX1JFR0lP Tl9UWVBFX0RBVEE6CisgICAgICAgIHJjID0gcG1lbV9nZXRfZGF0YV9yZWdpb25zKHJlZ2lvbnMt PnVfYnVmZmVyLmRhdGFfcmVnaW9ucywgJm1heCk7CisgICAgICAgIGJyZWFrOworCiAgICAgZGVm YXVsdDoKICAgICAgICAgcmMgPSAtRUlOVkFMOwogICAgIH0KZGlmZiAtLWdpdCBhL3hlbi9pbmNs dWRlL3B1YmxpYy9zeXNjdGwuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9zeXNjdGwuaAppbmRleCBk MWZiYjMwMjQ3Li5jMzU1NWNlZDVjIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMvc3lz Y3RsLmgKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL3N5c2N0bC5oCkBAIC0xMDcyLDYgKzEwNzIs MTYgQEAgc3RydWN0IHhlbl9zeXNjdGxfbnZkaW1tX3BtZW1fbWdtdF9yZWdpb24gewogdHlwZWRl ZiBzdHJ1Y3QgeGVuX3N5c2N0bF9udmRpbW1fcG1lbV9tZ210X3JlZ2lvbiB4ZW5fc3lzY3RsX252 ZGltbV9wbWVtX21nbXRfcmVnaW9uX3Q7CiBERUZJTkVfWEVOX0dVRVNUX0hBTkRMRSh4ZW5fc3lz Y3RsX252ZGltbV9wbWVtX21nbXRfcmVnaW9uX3QpOwogCisvKiBQTUVNX1JFR0lPTl9UWVBFX0RB VEEgKi8KK3N0cnVjdCB4ZW5fc3lzY3RsX252ZGltbV9wbWVtX2RhdGFfcmVnaW9uIHsKKyAgICB1 aW50NjRfdCBzbWZuOworICAgIHVpbnQ2NF90IGVtZm47CisgICAgdWludDY0X3QgbWdtdF9zbWZu OworICAgIHVpbnQ2NF90IG1nbXRfZW1mbjsKK307Cit0eXBlZGVmIHN0cnVjdCB4ZW5fc3lzY3Rs X252ZGltbV9wbWVtX2RhdGFfcmVnaW9uIHhlbl9zeXNjdGxfbnZkaW1tX3BtZW1fZGF0YV9yZWdp b25fdDsKK0RFRklORV9YRU5fR1VFU1RfSEFORExFKHhlbl9zeXNjdGxfbnZkaW1tX3BtZW1fZGF0 YV9yZWdpb25fdCk7CisKIC8qIFhFTl9TWVNDVExfbnZkaW1tX3BtZW1fZ2V0X3JlZ2lvbnNfbnIg Ki8KIHN0cnVjdCB4ZW5fc3lzY3RsX252ZGltbV9wbWVtX3JlZ2lvbnNfbnIgewogICAgIHVpbnQ4 X3QgdHlwZTsgICAgICAgICAvKiBJTjogb25lIG9mIFBNRU1fUkVHSU9OX1RZUEVfKiAqLwpAQCAt MTA5Miw2ICsxMTAyLDggQEAgc3RydWN0IHhlbl9zeXNjdGxfbnZkaW1tX3BtZW1fcmVnaW9ucyB7 CiAgICAgICAgIFhFTl9HVUVTVF9IQU5ETEVfNjQoeGVuX3N5c2N0bF9udmRpbW1fcG1lbV9yYXdf cmVnaW9uX3QpIHJhd19yZWdpb25zOwogICAgICAgICAvKiBpZiB0eXBlID09IFBNRU1fUkVHSU9O X1RZUEVfTUdNVCAqLwogICAgICAgICBYRU5fR1VFU1RfSEFORExFXzY0KHhlbl9zeXNjdGxfbnZk aW1tX3BtZW1fbWdtdF9yZWdpb25fdCkgbWdtdF9yZWdpb25zOworICAgICAgICAvKiBpZiB0eXBl ID09IFBNRU1fUkVHSU9OX1RZUEVfREFUQSAqLworICAgICAgICBYRU5fR1VFU1RfSEFORExFXzY0 KHhlbl9zeXNjdGxfbnZkaW1tX3BtZW1fZGF0YV9yZWdpb25fdCkgZGF0YV9yZWdpb25zOwogICAg IH0gdV9idWZmZXI7ICAgICAgICAgICAvKiBJTjogdGhlIGd1ZXN0IGhhbmRsZXIgd2hlcmUgdGhl IGVudHJpZXMgb2YgUE1FTQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVnaW9u cyBvZiB0aGUgdHlwZSBAdHlwZSBhcmUgcmV0dXJuZWQgKi8KIH07Ci0tIAoyLjE1LjEKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhl bnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs