From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Grytsov Subject: [PATCH 4/6] libxl: vkb add list and info functions Date: Thu, 5 Oct 2017 12:07:09 +0300 Message-ID: <1507194431-17588-5-git-send-email-al1img@gmail.com> References: <1507194431-17588-1-git-send-email-al1img@gmail.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 1e027r-00024R-VE for xen-devel@lists.xenproject.org; Thu, 05 Oct 2017 09:07:28 +0000 Received: by mail-lf0-f68.google.com with SMTP id j73so5444844lfg.0 for ; Thu, 05 Oct 2017 02:07:23 -0700 (PDT) In-Reply-To: <1507194431-17588-1-git-send-email-al1img@gmail.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: ian.jackson@eu.citrix.com, wei.liu2@citrix.com, Oleksandr Grytsov List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIEdyeXRzb3YgPG9sZWtzYW5kcl9ncnl0c292QGVwYW0uY29tPgoKU2ln bmVkLW9mZi1ieTogT2xla3NhbmRyIEdyeXRzb3YgPG9sZWtzYW5kcl9ncnl0c292QGVwYW0uY29t PgotLS0KIHRvb2xzL2xpYnhsL2xpYnhsLmggICAgICAgICB8ICAxMCArKysrKwogdG9vbHMvbGli eGwvbGlieGxfdHlwZXMuaWRsIHwgIDExICsrKysrCiB0b29scy9saWJ4bC9saWJ4bF91dGlscy5o ICAgfCAgIDMgKysKIHRvb2xzL2xpYnhsL2xpYnhsX3ZrYi5jICAgICB8IDEwNiArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogNCBmaWxlcyBjaGFuZ2VkLCAxMjcg aW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9s aWJ4bC5oIGIvdG9vbHMvbGlieGwvbGlieGwuaAppbmRleCBhY2I3M2NlLi5mMmY4NDQyIDEwMDY0 NAotLS0gYS90b29scy9saWJ4bC9saWJ4bC5oCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsLmgKQEAg LTE5NTAsNiArMTk1MCwxNiBAQCBpbnQgbGlieGxfZGV2aWNlX3ZrYl9kZXN0cm95KGxpYnhsX2N0 eCAqY3R4LCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgbGlieGxfYXN5bmNvcF9ob3cgKmFvX2hvdykKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMSUJYTF9FWFRFUk5BTF9DQUxMRVJTX09OTFk7CiAKK2xpYnhsX2RldmljZV92a2IgKmxpYnhs X2RldmljZV92a2JfbGlzdChsaWJ4bF9jdHggKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCBkb21pZCwgaW50ICpudW0pCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCWExfRVhURVJOQUxfQ0FMTEVSU19PTkxZOwor dm9pZCBsaWJ4bF9kZXZpY2VfdmtiX2xpc3RfZnJlZShsaWJ4bF9kZXZpY2VfdmtiKiBsaXN0LCBp bnQgbnVtKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJYTF9FWFRFUk5BTF9D QUxMRVJTX09OTFk7CitpbnQgbGlieGxfZGV2aWNlX3ZrYl9nZXRpbmZvKGxpYnhsX2N0eCAqY3R4 LCB1aW50MzJfdCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZGV2 aWNlX3ZrYiAqdmtiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF92a2JpbmZv ICp2a2JpbmZvKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJYTF9FWFRFUk5BTF9D QUxMRVJTX09OTFk7CisKIC8qIEZyYW1lYnVmZmVyICovCiBpbnQgbGlieGxfZGV2aWNlX3ZmYl9h ZGQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfdmZiICp2ZmIs CiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfYXN5bmNvcF9ob3cgKmFvX2hv dykKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlkbCBiL3Rvb2xzL2xpYnhs L2xpYnhsX3R5cGVzLmlkbAppbmRleCA2NWNkODFhLi5hNjQ3YmZjIDEwMDY0NAotLS0gYS90b29s cy9saWJ4bC9saWJ4bF90eXBlcy5pZGwKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfdHlwZXMuaWRs CkBAIC0xMDE0LDYgKzEwMTQsMTcgQEAgbGlieGxfdnNuZGluZm8gPSBTdHJ1Y3QoInZzbmRpbmZv IiwgWwogICAgICgicGNtcyIsIEFycmF5KGxpYnhsX3BjbWluZm8sICJudW1fdnNuZF9wY21zIikp CiAgICAgXSkKIAorbGlieGxfdmtiaW5mbyA9IFN0cnVjdCgidmtiaW5mbyIsIFsKKyAgICAoImJh Y2tlbmQiLCBzdHJpbmcpLAorICAgICgiYmFja2VuZF9pZCIsIHVpbnQzMiksCisgICAgKCJmcm9u dGVuZCIsIHN0cmluZyksCisgICAgKCJmcm9udGVuZF9pZCIsIHVpbnQzMiksCisgICAgKCJkZXZp ZCIsIGxpYnhsX2RldmlkKSwKKyAgICAoInN0YXRlIiwgaW50ZWdlciksCisgICAgKCJldnRjaCIs IGludGVnZXIpLAorICAgICgicnJlZiIsIGludGVnZXIpCisgICAgXSwgZGlyPURJUl9PVVQpCisK ICMgTlVNQSBub2RlIGNoYXJhY3RlcmlzdGljczogc2l6ZSBhbmQgZnJlZSBhcmUgaG93IG11Y2gg bWVtb3J5IGl0IGhhcywgYW5kIGhvdwogIyBtdWNoIG9mIGl0IGlzIGZyZWUsIHJlc3BlY3RpdmVs eS4gZGlzdHMgaXMgYW4gYXJyYXkgb2YgZGlzdGFuY2VzIGZyb20gdGhpcwogIyBub2RlIHRvIGVh Y2ggb3RoZXIgbm9kZS4KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3V0aWxzLmggYi90 b29scy9saWJ4bC9saWJ4bF91dGlscy5oCmluZGV4IDU0NTU3NTIuLjQ0NDA5YWYgMTAwNjQ0Ci0t LSBhL3Rvb2xzL2xpYnhsL2xpYnhsX3V0aWxzLmgKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfdXRp bHMuaApAQCAtNzksNiArNzksOSBAQCBpbnQgbGlieGxfZGV2aWRfdG9fZGV2aWNlX3Z0cG0obGli eGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLAogaW50IGxpYnhsX2RldmlkX3RvX2RldmljZV91 c2JjdHJsKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpbnQgZGV2aWQsIGxpYnhsX2RldmljZV91c2JjdHJsICp1c2JjdHJs KTsKIAoraW50IGxpYnhsX2RldmlkX3RvX2RldmljZV92a2IobGlieGxfY3R4ICpjdHgsIHVpbnQz Ml90IGRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGRldmlkLCBsaWJ4 bF9kZXZpY2VfdmtiICp2a2IpOworCiBpbnQgbGlieGxfZGV2aWRfdG9fZGV2aWNlX3ZkaXNwbChs aWJ4bF9jdHggKmN0eCwgdWludDMyX3QgZG9taWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpbnQgZGV2aWQsIGxpYnhsX2RldmljZV92ZGlzcGwgKnZkaXNwbCk7CiAKZGlmZiAt LWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3ZrYi5jIGIvdG9vbHMvbGlieGwvbGlieGxfdmtiLmMK aW5kZXggMDdiNTQyOC4uMjc2Y2M4YSAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfdmti LmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfdmtiLmMKQEAgLTEzLDYgKzEzLDcgQEAKICAqLwog CiAjaW5jbHVkZSAibGlieGxfaW50ZXJuYWwuaCIKKyNpbmNsdWRlICJ4ZW4vaW8va2JkaWYuaCIK IAogc3RhdGljIGludCBsaWJ4bF9fZGV2aWNlX3ZrYl9zZXRkZWZhdWx0KGxpYnhsX19nYyAqZ2Ms IHVpbnQzMl90IGRvbWlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGxpYnhsX2RldmljZV92a2IgKnZrYiwgYm9vbCBob3RwbHVnKQpAQCAtNDEsNiArNDIsMjIgQEAg c3RhdGljIGludCBsaWJ4bF9fZGV2aWNlX3ZrYl9kbV9uZWVkZWQobGlieGxfZGV2aWNlX3ZrYiAq dmtiLCB1aW50MzJfdCBkb21pZCkKICAgICByZXR1cm4gMDsKIH0KIAorc3RhdGljIGludCBsaWJ4 bF9fdmtiX2Zyb21feGVuc3RvcmUobGlieGxfX2djICpnYywgY29uc3QgY2hhciAqbGlieGxfcGF0 aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2RldmlkIGRldmlk LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZGV2aWNlX3ZrYiAq dmtiKQoreworICAgIGNvbnN0IGNoYXIgKmJlX3BhdGg7CisgICAgaW50IHJjOworCisgICAgdmti LT5kZXZpZCA9IGRldmlkOworICAgIHJjID0gbGlieGxfX3hzX3JlYWRfbWFuZGF0b3J5KGdjLCBY QlRfTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ1NQUklOVEYoIiVz L2JhY2tlbmQiLCBsaWJ4bF9wYXRoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmYmVfcGF0aCk7CisgICAgaWYgKHJjKSByZXR1cm4gcmM7CisKKyAgICByZXR1cm4gbGlieGxf X2JhY2tlbmRwYXRoX3BhcnNlX2RvbWlkKGdjLCBiZV9wYXRoLCAmdmtiLT5iYWNrZW5kX2RvbWlk KTsKK30KKwogaW50IGxpYnhsX2RldmljZV92a2JfYWRkKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJf dCBkb21pZCwgbGlieGxfZGV2aWNlX3ZrYiAqdmtiLAogICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGxpYnhsX2FzeW5jb3BfaG93ICphb19ob3cpCiB7CkBAIC01OCwxNyArNzUsMTAwIEBA IG91dDoKICAgICByZXR1cm4gQU9fSU5QUk9HUkVTUzsKIH0KIAoraW50IGxpYnhsX2RldmlkX3Rv X2RldmljZV92a2IobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IGRldmlkLCBsaWJ4bF9kZXZpY2VfdmtiICp2a2IpCit7Cisg ICAgR0NfSU5JVChjdHgpOworCisgICAgbGlieGxfZGV2aWNlX3ZrYiAqdmticyA9IE5VTEw7Cisg ICAgaW50IG4sIGk7CisgICAgaW50IHJjOworCisgICAgbGlieGxfZGV2aWNlX3ZrYl9pbml0KHZr Yik7CisKKyAgICB2a2JzID0gbGlieGxfX2RldmljZV9saXN0KGdjLCAmbGlieGxfX3ZrYl9kZXZ0 eXBlLCBkb21pZCwgJm4pOworCisgICAgaWYgKCF2a2JzKSB7IHJjID0gRVJST1JfTk9URk9VTkQ7 IGdvdG8gb3V0OyB9CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbjsgKytpKSB7CisgICAgICAgIGlm IChkZXZpZCA9PSB2a2JzW2ldLmRldmlkKSB7CisgICAgICAgICAgICBsaWJ4bF9kZXZpY2Vfdmti X2NvcHkoY3R4LCB2a2IsICZ2a2JzW2ldKTsKKyAgICAgICAgICAgIHJjID0gMDsKKyAgICAgICAg ICAgIGdvdG8gb3V0OworICAgICAgICB9CisgICAgfQorCisgICAgcmMgPSBFUlJPUl9OT1RGT1VO RDsKKworb3V0OgorCisgICAgaWYgKHZrYnMpCisgICAgICAgIGxpYnhsX19kZXZpY2VfbGlzdF9m cmVlKCZsaWJ4bF9fdmtiX2RldnR5cGUsIHZrYnMsIG4pOworCisgICAgR0NfRlJFRTsKKyAgICBy ZXR1cm4gcmM7Cit9CisKK2ludCBsaWJ4bF9kZXZpY2VfdmtiX2dldGluZm8obGlieGxfY3R4ICpj dHgsIHVpbnQzMl90IGRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9k ZXZpY2VfdmtiICp2a2IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX3ZrYmlu Zm8gKmluZm8pCit7CisgICAgR0NfSU5JVChjdHgpOworICAgIGNoYXIgKmxpYnhsX3BhdGgsICpk b21wYXRoLCAqZGV2cGF0aDsKKyAgICBjaGFyICp2YWw7CisgICAgaW50IHJjOworCisgICAgbGli eGxfdmtiaW5mb19pbml0KGluZm8pOworICAgIGRvbXBhdGggPSBsaWJ4bF9feHNfZ2V0X2RvbXBh dGgoZ2MsIGRvbWlkKTsKKyAgICBpbmZvLT5kZXZpZCA9IHZrYi0+ZGV2aWQ7CisKKyAgICBkZXZw YXRoID0gR0NTUFJJTlRGKCIlcy9kZXZpY2UvdmtiZC8lZCIsIGRvbXBhdGgsIGluZm8tPmRldmlk KTsKKyAgICBsaWJ4bF9wYXRoID0gR0NTUFJJTlRGKCIlcy9kZXZpY2UvdmtiZC8lZCIsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9feHNfbGlieGxfcGF0aChnYywgZG9taWQpLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5mby0+ZGV2aWQpOworICAgIGluZm8tPmJhY2tl bmQgPSB4c19yZWFkKGN0eC0+eHNoLCBYQlRfTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICBHQ1NQUklOVEYoIiVzL2JhY2tlbmQiLCBsaWJ4bF9wYXRoKSwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMKTsKKyAgICBpZiAoIWluZm8tPmJhY2tlbmQpIHsgcmMgPSBFUlJP Ul9GQUlMOyBnb3RvIG91dDsgfQorCisgICAgcmMgPSBsaWJ4bF9fYmFja2VuZHBhdGhfcGFyc2Vf ZG9taWQoZ2MsIGluZm8tPmJhY2tlbmQsICZpbmZvLT5iYWNrZW5kX2lkKTsKKyAgICBpZiAocmMp IGdvdG8gb3V0OworCisgICAgdmFsID0gbGlieGxfX3hzX3JlYWQoZ2MsIFhCVF9OVUxMLCBHQ1NQ UklOVEYoIiVzL3N0YXRlIiwgZGV2cGF0aCkpOworICAgIGluZm8tPnN0YXRlID0gdmFsID8gc3Ry dG91bCh2YWwsIE5VTEwsIDEwKSA6IC0xOworCisgICAgaW5mby0+ZnJvbnRlbmQgPSB4c19yZWFk KGN0eC0+eHNoLCBYQlRfTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NTUFJJ TlRGKCIlcy9mcm9udGVuZCIsIGxpYnhsX3BhdGgpLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMKTsKKyAgICBpbmZvLT5mcm9udGVuZF9pZCA9IGRvbWlkOworCisgICAgdmFsID0g bGlieGxfX3hzX3JlYWQoZ2MsIFhCVF9OVUxMLAorICAgICAgICAgIEdDU1BSSU5URigiJXMvIlhF TktCRF9GSUVMRF9FVlRfQ0hBTk5FTCwgZGV2cGF0aCkpOworICAgIGluZm8tPmV2dGNoID0gdmFs ID8gc3RydG91bCh2YWwsIE5VTEwsIDEwKSA6IC0xOworCisgICAgdmFsID0gbGlieGxfX3hzX3Jl YWQoZ2MsIFhCVF9OVUxMLAorICAgICAgICAgIEdDU1BSSU5URigiJXMvIlhFTktCRF9GSUVMRF9S SU5HX0dSRUYsIGRldnBhdGgpKTsKKyAgICBpbmZvLT5ycmVmID0gdmFsID8gc3RydG91bCh2YWws IE5VTEwsIDEwKSA6IC0xOworCisgICAgcmMgPSAwOworCitvdXQ6CisgICAgIEdDX0ZSRUU7Cisg ICAgIHJldHVybiByYzsKK30KKwogc3RhdGljIExJQlhMX0RFRklORV9VUERBVEVfREVWSUQodmti LCAidmtiZCIpCiAKICNkZWZpbmUgbGlieGxfX2FkZF92a2JzIE5VTEwKLSNkZWZpbmUgbGlieGxf ZGV2aWNlX3ZrYl9saXN0IE5VTEwKICNkZWZpbmUgbGlieGxfZGV2aWNlX3ZrYl9jb21wYXJlIE5V TEwKIAorTElCWExfREVGSU5FX0RFVklDRV9MSVNUKHZrYikKIExJQlhMX0RFRklORV9ERVZJQ0Vf UkVNT1ZFKHZrYikKIAotREVGSU5FX0RFVklDRV9UWVBFX1NUUlVDVF9YKHZrYiwgdmtiLCB2a2Jk CitERUZJTkVfREVWSUNFX1RZUEVfU1RSVUNUX1godmtiLCB2a2IsIHZrYmQsCiAgICAgLnNraXBf YXR0YWNoID0gMSwKLSAgICAuZG1fbmVlZGVkICAgPSAoZGV2aWNlX2RtX25lZWRlZF9mbl90KWxp YnhsX19kZXZpY2VfdmtiX2RtX25lZWRlZAorICAgIC5kbV9uZWVkZWQgICA9IChkZXZpY2VfZG1f bmVlZGVkX2ZuX3QpbGlieGxfX2RldmljZV92a2JfZG1fbmVlZGVkLAorICAgIC5mcm9tX3hlbnN0 b3JlID0gKGRldmljZV9mcm9tX3hlbnN0b3JlX2ZuX3QpbGlieGxfX3ZrYl9mcm9tX3hlbnN0b3Jl CiApOwogCiAvKgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4u b3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK