From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Grytsov Subject: [PATCH v4 07/13] libxl: change vkb to use generec add function Date: Tue, 18 Jul 2017 17:25:24 +0300 Message-ID: <1500387930-16317-8-git-send-email-al1img@gmail.com> References: <1500387930-16317-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.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dXTRd-0002ZX-OB for xen-devel@lists.xenproject.org; Tue, 18 Jul 2017 14:25:49 +0000 Received: by mail-lf0-f65.google.com with SMTP id t72so2015219lff.0 for ; Tue, 18 Jul 2017 07:25:48 -0700 (PDT) In-Reply-To: <1500387930-16317-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 PgotLS0KIHRvb2xzL2xpYnhsL2xpYnhsX2NvbnNvbGUuYyAgfCA3OSArKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogdG9vbHMvbGlieGwvbGlieGxfY3JlYXRlLmMg ICB8ICA1ICstLQogdG9vbHMvbGlieGwvbGlieGxfZG0uYyAgICAgICB8ICAzICstCiB0b29scy9s aWJ4bC9saWJ4bF9pbnRlcm5hbC5oIHwgIDYgKy0tLQogNCBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNl cnRpb25zKCspLCA3NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4 bF9jb25zb2xlLmMgYi90b29scy9saWJ4bC9saWJ4bF9jb25zb2xlLmMKaW5kZXggNDQ2ZTc2Ni4u NDhmY2NlYyAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfY29uc29sZS5jCisrKyBiL3Rv b2xzL2xpYnhsL2xpYnhsX2NvbnNvbGUuYwpAQCAtNTgzLDExICs1ODMsMTAgQEAgaW50IGxpYnhs X2RldmljZV9jaGFubmVsX2dldGluZm8obGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLAog ICAgIHJldHVybiByYzsKIH0KIAotaW50IGxpYnhsX19kZXZpY2VfdmtiX3NldGRlZmF1bHQobGli eGxfX2djICpnYywgbGlieGxfZGV2aWNlX3ZrYiAqdmtiKQorc3RhdGljIGludCBsaWJ4bF9fZGV2 aWNlX3ZrYl9zZXRkZWZhdWx0KGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlkLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2RldmljZV92a2IgKnZrYiwg Ym9vbCBob3RwbHVnKQogewotICAgIGludCByYzsKLSAgICByYyA9IGxpYnhsX19yZXNvbHZlX2Rv bWlkKGdjLCB2a2ItPmJhY2tlbmRfZG9tbmFtZSwgJnZrYi0+YmFja2VuZF9kb21pZCk7Ci0gICAg cmV0dXJuIHJjOworICAgIHJldHVybiBsaWJ4bF9fcmVzb2x2ZV9kb21pZChnYywgdmtiLT5iYWNr ZW5kX2RvbW5hbWUsICZ2a2ItPmJhY2tlbmRfZG9taWQpOwogfQogCiBzdGF0aWMgaW50IGxpYnhs X19kZXZpY2VfZnJvbV92a2IobGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQsCkBAIC02MDQs NjggKzYwMyw2IEBAIHN0YXRpYyBpbnQgbGlieGxfX2RldmljZV9mcm9tX3ZrYihsaWJ4bF9fZ2Mg KmdjLCB1aW50MzJfdCBkb21pZCwKICAgICByZXR1cm4gMDsKIH0KIAotaW50IGxpYnhsX2Rldmlj ZV92a2JfYWRkKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxfZGV2aWNlX3Zr YiAqdmtiLAotICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxpYnhsX2FzeW5jb3BfaG93 ICphb19ob3cpCi17Ci0gICAgQU9fQ1JFQVRFKGN0eCwgZG9taWQsIGFvX2hvdyk7Ci0gICAgaW50 IHJjOwotCi0gICAgcmMgPSBsaWJ4bF9fZGV2aWNlX3ZrYl9hZGQoZ2MsIGRvbWlkLCB2a2IpOwot ICAgIGlmIChyYykgewotICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIlVuYWJsZSB0byBhZGQg dmtiIGRldmljZSIpOwotICAgICAgICBnb3RvIG91dDsKLSAgICB9Ci0KLW91dDoKLSAgICBsaWJ4 bF9fYW9fY29tcGxldGUoZWdjLCBhbywgcmMpOwotICAgIHJldHVybiBBT19JTlBST0dSRVNTOwot fQotCi1pbnQgbGlieGxfX2RldmljZV92a2JfYWRkKGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRv bWlkLAotICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZXZpY2VfdmtiICp2a2IpCi17 Ci0gICAgZmxleGFycmF5X3QgKmZyb250OwotICAgIGZsZXhhcnJheV90ICpiYWNrOwotICAgIGxp YnhsX19kZXZpY2UgZGV2aWNlOwotICAgIGludCByYzsKLQotICAgIHJjID0gbGlieGxfX2Rldmlj ZV92a2Jfc2V0ZGVmYXVsdChnYywgdmtiKTsKLSAgICBpZiAocmMpIGdvdG8gb3V0OwotCi0gICAg ZnJvbnQgPSBmbGV4YXJyYXlfbWFrZShnYywgMTYsIDEpOwotICAgIGJhY2sgPSBmbGV4YXJyYXlf bWFrZShnYywgMTYsIDEpOwotCi0gICAgaWYgKHZrYi0+ZGV2aWQgPT0gLTEpIHsKLSAgICAgICAg aWYgKCh2a2ItPmRldmlkID0gbGlieGxfX2RldmljZV9uZXh0aWQoZ2MsIGRvbWlkLCAidmtiIikp IDwgMCkgewotICAgICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwotICAgICAgICAgICAgZ290byBv dXQ7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByYyA9IGxpYnhsX19kZXZpY2VfZnJvbV92a2Io Z2MsIGRvbWlkLCB2a2IsICZkZXZpY2UpOwotICAgIGlmIChyYyAhPSAwKSBnb3RvIG91dDsKLQot ICAgIGZsZXhhcnJheV9hcHBlbmQoYmFjaywgImZyb250ZW5kLWlkIik7Ci0gICAgZmxleGFycmF5 X2FwcGVuZChiYWNrLCBHQ1NQUklOVEYoIiVkIiwgZG9taWQpKTsKLSAgICBmbGV4YXJyYXlfYXBw ZW5kKGJhY2ssICJvbmxpbmUiKTsKLSAgICBmbGV4YXJyYXlfYXBwZW5kKGJhY2ssICIxIik7Ci0g ICAgZmxleGFycmF5X2FwcGVuZChiYWNrLCAic3RhdGUiKTsKLSAgICBmbGV4YXJyYXlfYXBwZW5k KGJhY2ssIEdDU1BSSU5URigiJWQiLCBYZW5idXNTdGF0ZUluaXRpYWxpc2luZykpOwotCi0gICAg ZmxleGFycmF5X2FwcGVuZChmcm9udCwgImJhY2tlbmQtaWQiKTsKLSAgICBmbGV4YXJyYXlfYXBw ZW5kKGZyb250LCBHQ1NQUklOVEYoIiVkIiwgdmtiLT5iYWNrZW5kX2RvbWlkKSk7Ci0gICAgZmxl eGFycmF5X2FwcGVuZChmcm9udCwgInN0YXRlIik7Ci0gICAgZmxleGFycmF5X2FwcGVuZChmcm9u dCwgR0NTUFJJTlRGKCIlZCIsIFhlbmJ1c1N0YXRlSW5pdGlhbGlzaW5nKSk7Ci0KLSAgICBsaWJ4 bF9fZGV2aWNlX2dlbmVyaWNfYWRkKGdjLCBYQlRfTlVMTCwgJmRldmljZSwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGxpYnhsX194c19rdnNfb2ZfZmxleGFycmF5KGdjLCBiYWNrKSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX194c19rdnNfb2ZfZmxleGFycmF5 KGdjLCBmcm9udCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKLSAgICBy YyA9IDA7Ci1vdXQ6Ci0gICAgcmV0dXJuIHJjOwotfQotCiBpbnQgbGlieGxfX2RldmljZV92ZmJf c2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9kZXZpY2VfdmZiICp2ZmIpCiB7CiAgICAg aW50IHJjOwpAQCAtNzg5LDcgKzcyNiwxNyBAQCBvdXQ6CiAgKiAyLiBkeW5hbWljYWxseSBhZGQv cmVtb3ZlIHFlbXUgY2hhcmRldnMgdmlhIHFtcCBtZXNzYWdlcy4gKi8KIAogLyogdmtiICovCisK KyNkZWZpbmUgbGlieGxfX2FkZF92a2JzIE5VTEwKKyNkZWZpbmUgbGlieGxfZGV2aWNlX3ZrYl9s aXN0IE5VTEwKKyNkZWZpbmUgbGlieGxfZGV2aWNlX3ZrYl9jb21wYXJlIE5VTEwKKwogTElCWExf REVGSU5FX0RFVklDRV9SRU1PVkUodmtiKQorc3RhdGljIExJQlhMX0RFRklORV9VUERBVEVfREVW SUQodmtiLCAidmtiZCIpCisKK0RFRklORV9ERVZJQ0VfVFlQRV9TVFJVQ1QodmtiLAorICAgIC5z a2lwX2F0dGFjaCA9IDEKKyk7CiAKIC8qIHZmYiAqLwogTElCWExfREVGSU5FX0RFVklDRV9SRU1P VkUodmZiKQpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfY3JlYXRlLmMgYi90b29scy9s aWJ4bC9saWJ4bF9jcmVhdGUuYwppbmRleCBmNDgzNDc1Li45NjM0ODExIDEwMDY0NAotLS0gYS90 b29scy9saWJ4bC9saWJ4bF9jcmVhdGUuYworKysgYi90b29scy9saWJ4bC9saWJ4bF9jcmVhdGUu YwpAQCAtMTM0Niw3ICsxMzQ2LDcgQEAgc3RhdGljIHZvaWQgZG9tY3JlYXRlX2xhdW5jaF9kbShs aWJ4bF9fZWdjICplZ2MsIGxpYnhsX19tdWx0aWRldiAqbXVsdGlkZXYsCiAgICAgICAgIH0KIAog ICAgICAgICBsaWJ4bF9kZXZpY2VfdmtiX2luaXQoJnZrYik7Ci0gICAgICAgIGxpYnhsX19kZXZp Y2VfdmtiX2FkZChnYywgZG9taWQsICZ2a2IpOworICAgICAgICBsaWJ4bF9fZGV2aWNlX2FkZChn YywgZG9taWQsICZsaWJ4bF9fdmtiX2RldnR5cGUsICZ2a2IpOwogICAgICAgICBsaWJ4bF9kZXZp Y2VfdmtiX2Rpc3Bvc2UoJnZrYik7CiAKICAgICAgICAgZGNzLT5zZHNzLmRtLmd1ZXN0X2RvbWlk ID0gZG9taWQ7CkBAIC0xMzcyLDcgKzEzNzIsOCBAQCBzdGF0aWMgdm9pZCBkb21jcmVhdGVfbGF1 bmNoX2RtKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX211bHRpZGV2ICptdWx0aWRldiwKIAogICAg ICAgICBmb3IgKGkgPSAwOyBpIDwgZF9jb25maWctPm51bV92ZmJzOyBpKyspIHsKICAgICAgICAg ICAgIGxpYnhsX19kZXZpY2VfdmZiX2FkZChnYywgZG9taWQsICZkX2NvbmZpZy0+dmZic1tpXSk7 Ci0gICAgICAgICAgICBsaWJ4bF9fZGV2aWNlX3ZrYl9hZGQoZ2MsIGRvbWlkLCAmZF9jb25maWct PnZrYnNbaV0pOworICAgICAgICAgICAgbGlieGxfX2RldmljZV9hZGQoZ2MsIGRvbWlkLCAmbGli eGxfX3ZrYl9kZXZ0eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRfY29uZmln LT52a2JzW2ldKTsKICAgICAgICAgfQogCiAgICAgICAgIGluaXRfY29uc29sZV9pbmZvKGdjLCAm Y29uc29sZSwgMCk7CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kbS5jIGIvdG9vbHMv bGlieGwvbGlieGxfZG0uYwppbmRleCA0NGViZDcwLi5iMzdmNDdlIDEwMDY0NAotLS0gYS90b29s cy9saWJ4bC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RtLmMKQEAgLTE5Nzgs NyArMTk3OCw4IEBAIHN0YXRpYyB2b2lkIHNwYXduX3N0dWJfbGF1bmNoX2RtKGxpYnhsX19lZ2Mg KmVnYywKICAgICByZXQgPSBsaWJ4bF9fZGV2aWNlX3ZmYl9hZGQoZ2MsIGRtX2RvbWlkLCAmZG1f Y29uZmlnLT52ZmJzWzBdKTsKICAgICBpZiAocmV0KQogICAgICAgICBnb3RvIG91dDsKLSAgICBy ZXQgPSBsaWJ4bF9fZGV2aWNlX3ZrYl9hZGQoZ2MsIGRtX2RvbWlkLCAmZG1fY29uZmlnLT52a2Jz WzBdKTsKKyAgICByZXQgPSBsaWJ4bF9fZGV2aWNlX2FkZChnYywgZG1fZG9taWQsICZsaWJ4bF9f dmtiX2RldnR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRtX2NvbmZpZy0+dmti c1swXSk7CiAgICAgaWYgKHJldCkKICAgICAgICAgZ290byBvdXQ7CiAKZGlmZiAtLWdpdCBhL3Rv b2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmggYi90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5o CmluZGV4IGM1M2JiZDEuLjQ5NDQwZDcgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2lu dGVybmFsLmgKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaApAQCAtMTI0OCw3ICsx MjQ4LDYgQEAgX2hpZGRlbiBpbnQgbGlieGxfX2RldmljZV9kaXNrX3NldGRlZmF1bHQobGlieGxf X2djICpnYywKIF9oaWRkZW4gaW50IGxpYnhsX19kZXZpY2VfbmljX3NldGRlZmF1bHQobGlieGxf X2djICpnYywgbGlieGxfZGV2aWNlX25pYyAqbmljLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCBkb21pZCwgYm9vbCBob3RwbHVnKTsKIF9oaWRkZW4g aW50IGxpYnhsX19kZXZpY2VfdmZiX3NldGRlZmF1bHQobGlieGxfX2djICpnYywgbGlieGxfZGV2 aWNlX3ZmYiAqdmZiKTsKLV9oaWRkZW4gaW50IGxpYnhsX19kZXZpY2VfdmtiX3NldGRlZmF1bHQo bGlieGxfX2djICpnYywgbGlieGxfZGV2aWNlX3ZrYiAqdmtiKTsKIF9oaWRkZW4gaW50IGxpYnhs X19kZXZpY2VfcGNpX3NldGRlZmF1bHQobGlieGxfX2djICpnYywgbGlieGxfZGV2aWNlX3BjaSAq cGNpKTsKIF9oaWRkZW4gdm9pZCBsaWJ4bF9fcmRtX3NldGRlZmF1bHQobGlieGxfX2djICpnYywK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2lu Zm8gKmJfaW5mbyk7CkBAIC0yNjU4LDEwICsyNjU3LDYgQEAgc3RydWN0IGxpYnhsX19tdWx0aWRl diB7CiAgKiBpdCdzIGEgdmFsaWQgc3RhdGUuCiAgKi8KIAotLyogSW50ZXJuYWwgZnVuY3Rpb24g dG8gY29ubmVjdCBhIHZrYiBkZXZpY2UgKi8KLV9oaWRkZW4gaW50IGxpYnhsX19kZXZpY2Vfdmti X2FkZChsaWJ4bF9fZ2MgKmdjLCB1aW50MzJfdCBkb21pZCwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBsaWJ4bF9kZXZpY2VfdmtiICp2a2IpOwotCiAvKiBJbnRlcm5hbCBmdW5j dGlvbiB0byBjb25uZWN0IGEgdmZiIGRldmljZSAqLwogX2hpZGRlbiBpbnQgbGlieGxfX2Rldmlj ZV92ZmJfYWRkKGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlkLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGxpYnhsX2RldmljZV92ZmIgKnZmYik7CkBAIC0zNTUyLDYgKzM1 NDcsNyBAQCBzdGF0aWMgaW5saW5lIGludCAqbGlieGxfX2RldmljZV90eXBlX2dldF9udW0oCiAg ICAgcmV0dXJuIChpbnQgKikoKHZvaWQgKilkX2NvbmZpZyArIGR0LT5udW1fb2Zmc2V0KTsKIH0K IAorZXh0ZXJuIGNvbnN0IHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlwZSBsaWJ4bF9fdmtiX2RldnR5 cGU7CiBleHRlcm4gY29uc3Qgc3RydWN0IGxpYnhsX2RldmljZV90eXBlIGxpYnhsX19kaXNrX2Rl dnR5cGU7CiBleHRlcm4gY29uc3Qgc3RydWN0IGxpYnhsX2RldmljZV90eXBlIGxpYnhsX19uaWNf ZGV2dHlwZTsKIGV4dGVybiBjb25zdCBzdHJ1Y3QgbGlieGxfZGV2aWNlX3R5cGUgbGlieGxfX3Z0 cG1fZGV2dHlwZTsKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu Lm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==