From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Grytsov Subject: [PATCH v4 06/13] libxl: change p9 to use generec add function Date: Tue, 18 Jul 2017 17:25:23 +0300 Message-ID: <1500387930-16317-7-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.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dXTRc-0002Xt-C8 for xen-devel@lists.xenproject.org; Tue, 18 Jul 2017 14:25:48 +0000 Received: by mail-lf0-f66.google.com with SMTP id t72so2015040lff.0 for ; Tue, 18 Jul 2017 07:25:46 -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 PgotLS0KIHRvb2xzL2xpYnhsL2xpYnhsXzlwZnMuYyAgICAgfCA2NyArKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogdG9vbHMvbGlieGwvbGlieGxfY3JlYXRlLmMg ICB8ICAyICstCiB0b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oIHwgIDcgKy0tLS0KIHRvb2xz L2xpYnhsL2xpYnhsX3R5cGVzLmlkbCAgfCAgMiArLQogdG9vbHMveGwveGxfcGFyc2UuYyAgICAg ICAgICB8ICA0ICstLQogNSBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCA1NCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF85cGZzLmMgYi90b29scy9s aWJ4bC9saWJ4bF85cGZzLmMKaW5kZXggMDdlM2U1Zi4uMzk0ZDhiNCAxMDA2NDQKLS0tIGEvdG9v bHMvbGlieGwvbGlieGxfOXBmcy5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsXzlwZnMuYwpAQCAt MTcsMTIgKzE3LDEwIEBACiAKICNpbmNsdWRlICJsaWJ4bF9pbnRlcm5hbC5oIgogCi1pbnQgbGli eGxfX2RldmljZV9wOV9zZXRkZWZhdWx0KGxpYnhsX19nYyAqZ2MsIGxpYnhsX2RldmljZV9wOSAq cDkpCitzdGF0aWMgaW50IGxpYnhsX19kZXZpY2VfcDlfc2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdj LCB1aW50MzJfdCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGxpYnhsX2RldmljZV9wOSAqcDksIGJvb2wgaG90cGx1ZykKIHsKLSAgICBpbnQgcmM7Ci0KLSAg ICByYyA9IGxpYnhsX19yZXNvbHZlX2RvbWlkKGdjLCBwOS0+YmFja2VuZF9kb21uYW1lLCAmcDkt PmJhY2tlbmRfZG9taWQpOwotICAgIHJldHVybiByYzsKKyAgICByZXR1cm4gbGlieGxfX3Jlc29s dmVfZG9taWQoZ2MsIHA5LT5iYWNrZW5kX2RvbW5hbWUsICZwOS0+YmFja2VuZF9kb21pZCk7CiB9 CiAKIHN0YXRpYyBpbnQgbGlieGxfX2RldmljZV9mcm9tX3A5KGxpYnhsX19nYyAqZ2MsIHVpbnQz Ml90IGRvbWlkLApAQCAtMzksNDkgKzM3LDMwIEBAIHN0YXRpYyBpbnQgbGlieGxfX2RldmljZV9m cm9tX3A5KGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlkLAogICAgcmV0dXJuIDA7CiB9CiAK LQotaW50IGxpYnhsX19kZXZpY2VfcDlfYWRkKGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlk LAotICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2RldmljZV9wOSAqcDkpCitzdGF0aWMg aW50IGxpYnhsX19zZXRfeGVuc3RvcmVfcDkobGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQs CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZGV2aWNlX3A5ICpwOSwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4YXJyYXlfdCAqYmFjaywgZmxl eGFycmF5X3QgKmZyb250LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXhh cnJheV90ICpyb19mcm9udCkKIHsKLSAgICBmbGV4YXJyYXlfdCAqZnJvbnQ7Ci0gICAgZmxleGFy cmF5X3QgKmJhY2s7Ci0gICAgbGlieGxfX2RldmljZSBkZXZpY2U7Ci0gICAgaW50IHJjOwotCi0g ICAgcmMgPSBsaWJ4bF9fZGV2aWNlX3A5X3NldGRlZmF1bHQoZ2MsIHA5KTsKLSAgICBpZiAocmMp IGdvdG8gb3V0OwotCi0gICAgZnJvbnQgPSBmbGV4YXJyYXlfbWFrZShnYywgMTYsIDEpOwotICAg IGJhY2sgPSBmbGV4YXJyYXlfbWFrZShnYywgMTYsIDEpOwotCi0gICAgaWYgKHA5LT5kZXZpZCA9 PSAtMSkgewotICAgICAgICBpZiAoKHA5LT5kZXZpZCA9IGxpYnhsX19kZXZpY2VfbmV4dGlkKGdj LCBkb21pZCwgIjlwZnMiKSkgPCAwKSB7Ci0gICAgICAgICAgICByYyA9IEVSUk9SX0ZBSUw7Ci0g ICAgICAgICAgICBnb3RvIG91dDsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJjID0gbGlieGxf X2RldmljZV9mcm9tX3A5KGdjLCBkb21pZCwgcDksICZkZXZpY2UpOwotICAgIGlmIChyYyAhPSAw KSBnb3RvIG91dDsKLQotICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihiYWNrLCAiZnJvbnRlbmQt aWQiLCBsaWJ4bF9fc3ByaW50ZihnYywgIiVkIiwgZG9taWQpKTsKLSAgICBmbGV4YXJyYXlfYXBw ZW5kX3BhaXIoYmFjaywgIm9ubGluZSIsICIxIik7Ci0gICAgZmxleGFycmF5X2FwcGVuZF9wYWly KGJhY2ssICJzdGF0ZSIsIEdDU1BSSU5URigiJWQiLCBYZW5idXNTdGF0ZUluaXRpYWxpc2luZykp OwotICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihmcm9udCwgImJhY2tlbmQtaWQiLAotICAgICAg ICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fc3ByaW50ZihnYywgIiVkIiwgcDktPmJhY2tlbmRf ZG9taWQpKTsKLSAgICBmbGV4YXJyYXlfYXBwZW5kX3BhaXIoZnJvbnQsICJzdGF0ZSIsIEdDU1BS SU5URigiJWQiLCBYZW5idXNTdGF0ZUluaXRpYWxpc2luZykpOwotICAgIGZsZXhhcnJheV9hcHBl bmRfcGFpcihmcm9udCwgInRhZyIsIHA5LT50YWcpOwogICAgIGZsZXhhcnJheV9hcHBlbmRfcGFp cihiYWNrLCAicGF0aCIsIHA5LT5wYXRoKTsKICAgICBmbGV4YXJyYXlfYXBwZW5kX3BhaXIoYmFj aywgInNlY3VyaXR5X21vZGVsIiwgcDktPnNlY3VyaXR5X21vZGVsKTsKIAotICAgIGxpYnhsX19k ZXZpY2VfZ2VuZXJpY19hZGQoZ2MsIFhCVF9OVUxMLCAmZGV2aWNlLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGlieGxfX3hzX2t2c19vZl9mbGV4YXJyYXkoZ2MsIGJhY2spLAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX3hzX2t2c19vZl9mbGV4YXJyYXkoZ2Ms IGZyb250KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOwotICAgIHJjID0g MDsKLW91dDoKLSAgICByZXR1cm4gcmM7CisgICAgZmxleGFycmF5X2FwcGVuZF9wYWlyKGZyb250 LCAidGFnIiwgcDktPnRhZyk7CisKKyAgICByZXR1cm4gMDsKIH0KIAotTElCWExfREVGSU5FX0RF VklDRV9SRU1PVkUocDkpCisjZGVmaW5lIGxpYnhsX19hZGRfcDlzIE5VTEwKKyNkZWZpbmUgbGli eGxfZGV2aWNlX3A5X2xpc3QgTlVMTAorI2RlZmluZSBsaWJ4bF9kZXZpY2VfcDlfY29tcGFyZSBO VUxMCiAKK0xJQlhMX0RFRklORV9ERVZJQ0VfUkVNT1ZFKHA5KQorc3RhdGljIExJQlhMX0RFRklO RV9VUERBVEVfREVWSUQocDksICI5cGZzIikKKworREVGSU5FX0RFVklDRV9UWVBFX1NUUlVDVChw OSwKKyAgICAuc2tpcF9hdHRhY2ggPSAxLAorICAgIC5zZXRfeGVuc3RvcmVfY29uZmlnID0gKGlu dCAoKikobGlieGxfX2djICosIHVpbnQzMl90LCB2b2lkICosCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBmbGV4YXJyYXlfdCAqYmFjaywgZmxleGFycmF5X3QgKmZyb250LAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleGFycmF5X3QgKnJvX2Zyb250 KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19zZXRfeGVuc3RvcmVfcDkKKyk7 CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9jcmVhdGUuYyBiL3Rvb2xzL2xpYnhsL2xp YnhsX2NyZWF0ZS5jCmluZGV4IDkxMmJkMjEuLmY0ODM0NzUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xp YnhsL2xpYnhsX2NyZWF0ZS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2NyZWF0ZS5jCkBAIC0x MzI1LDcgKzEzMjUsNyBAQCBzdGF0aWMgdm9pZCBkb21jcmVhdGVfbGF1bmNoX2RtKGxpYnhsX19l Z2MgKmVnYywgbGlieGxfX211bHRpZGV2ICptdWx0aWRldiwKICAgICB9CiAKICAgICBmb3IgKGkg PSAwOyBpIDwgZF9jb25maWctPm51bV9wOXM7IGkrKykKLSAgICAgICAgbGlieGxfX2RldmljZV9w OV9hZGQoZ2MsIGRvbWlkLCAmZF9jb25maWctPnA5W2ldKTsKKyAgICAgICAgbGlieGxfX2Rldmlj ZV9hZGQoZ2MsIGRvbWlkLCAmbGlieGxfX3A5X2RldnR5cGUsICZkX2NvbmZpZy0+cDlzW2ldKTsK IAogICAgIHN3aXRjaCAoZF9jb25maWctPmNfaW5mby50eXBlKSB7CiAgICAgY2FzZSBMSUJYTF9E T01BSU5fVFlQRV9IVk06CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5o IGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAppbmRleCA2OGMwOGFhLi5jNTNiYmQxIDEw MDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oCisrKyBiL3Rvb2xzL2xpYnhs L2xpYnhsX2ludGVybmFsLmgKQEAgLTEyNTIsOCArMTI1Miw2IEBAIF9oaWRkZW4gaW50IGxpYnhs X19kZXZpY2VfdmtiX3NldGRlZmF1bHQobGlieGxfX2djICpnYywgbGlieGxfZGV2aWNlX3ZrYiAq dmtiKTsKIF9oaWRkZW4gaW50IGxpYnhsX19kZXZpY2VfcGNpX3NldGRlZmF1bHQobGlieGxfX2dj ICpnYywgbGlieGxfZGV2aWNlX3BjaSAqcGNpKTsKIF9oaWRkZW4gdm9pZCBsaWJ4bF9fcmRtX3Nl dGRlZmF1bHQobGlieGxfX2djICpnYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgbGlieGxfZG9tYWluX2J1aWxkX2luZm8gKmJfaW5mbyk7Ci1faGlkZGVuIGludCBsaWJ4bF9f ZGV2aWNlX3A5X3NldGRlZmF1bHQobGlieGxfX2djICpnYywKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZXZpY2VfcDkgKnA5KTsKIAogX2hpZGRlbiBjb25z dCBjaGFyICpsaWJ4bF9fZGV2aWNlX25pY19kZXZuYW1lKGxpYnhsX19nYyAqZ2MsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgZG9taWQsCkBA IC0yNjY4LDEwICsyNjY2LDYgQEAgX2hpZGRlbiBpbnQgbGlieGxfX2RldmljZV92a2JfYWRkKGxp YnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlkLAogX2hpZGRlbiBpbnQgbGlieGxfX2RldmljZV92 ZmJfYWRkKGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlkLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGxpYnhsX2RldmljZV92ZmIgKnZmYik7CiAKLS8qIEludGVybmFsIGZ1 bmN0aW9uIHRvIGNvbm5lY3QgYSA5cGZzIGRldmljZSAqLwotX2hpZGRlbiBpbnQgbGlieGxfX2Rl dmljZV9wOV9hZGQobGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQsCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZXZpY2VfcDkgKnA5KTsKLQogLyogV2FpdHMgZm9y IHRoZSBwYXNzZWQgZGV2aWNlIHRvIHJlYWNoIHN0YXRlIFhlbmJ1c1N0YXRlSW5pdFdhaXQuCiAg KiBUaGlzIGlzIG5vdCByZWFsbHkgdXNlZnVsIGJ5IGl0c2VsZiwgYnV0IGlzIGltcG9ydGFudCB3 aGVuIGV4ZWN1dGluZwogICogaG90cGx1ZyBzY3JpcHRzLCBzaW5jZSB3ZSBuZWVkIHRvIGJlIHN1 cmUgdGhlIGRldmljZSBpcyBpbiB0aGUgY29ycmVjdApAQCAtMzU2NSw2ICszNTU5LDcgQEAgZXh0 ZXJuIGNvbnN0IHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlwZSBsaWJ4bF9fdXNiY3RybF9kZXZ0eXBl OwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlwZSBsaWJ4bF9fdXNiZGV2X2Rl dnR5cGU7CiBleHRlcm4gY29uc3Qgc3RydWN0IGxpYnhsX2RldmljZV90eXBlIGxpYnhsX19wY2lk ZXZfZGV2dHlwZTsKIGV4dGVybiBjb25zdCBzdHJ1Y3QgbGlieGxfZGV2aWNlX3R5cGUgbGlieGxf X3ZkaXNwbF9kZXZ0eXBlOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlwZSBs aWJ4bF9fcDlfZGV2dHlwZTsKIAogZXh0ZXJuIGNvbnN0IHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlw ZSAqZGV2aWNlX3R5cGVfdGJsW107CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3R5 cGVzLmlkbCBiL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlkbAppbmRleCAyNTU2M2NmLi45NmRi YWVkIDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF90eXBlcy5pZGwKKysrIGIvdG9vbHMv bGlieGwvbGlieGxfdHlwZXMuaWRsCkBAIC04MDQsNyArODA0LDcgQEAgbGlieGxfZG9tYWluX2Nv bmZpZyA9IFN0cnVjdCgiZG9tYWluX2NvbmZpZyIsIFsKICAgICAoInZmYnMiLCBBcnJheShsaWJ4 bF9kZXZpY2VfdmZiLCAibnVtX3ZmYnMiKSksCiAgICAgKCJ2a2JzIiwgQXJyYXkobGlieGxfZGV2 aWNlX3ZrYiwgIm51bV92a2JzIikpLAogICAgICgidnRwbXMiLCBBcnJheShsaWJ4bF9kZXZpY2Vf dnRwbSwgIm51bV92dHBtcyIpKSwKLSAgICAoInA5IiwgQXJyYXkobGlieGxfZGV2aWNlX3A5LCAi bnVtX3A5cyIpKSwKKyAgICAoInA5cyIsIEFycmF5KGxpYnhsX2RldmljZV9wOSwgIm51bV9wOXMi KSksCiAgICAgKCJ2ZGlzcGxzIiwgQXJyYXkobGlieGxfZGV2aWNlX3ZkaXNwbCwgIm51bV92ZGlz cGxzIikpLAogICAgICMgYSBjaGFubmVsIG1hbmlmZXN0cyBhcyBhIGNvbnNvbGUgd2l0aCBhIG5h bWUsCiAgICAgIyBzZWUgZG9jcy9taXNjL2NoYW5uZWxzLnR4dApkaWZmIC0tZ2l0IGEvdG9vbHMv eGwveGxfcGFyc2UuYyBiL3Rvb2xzL3hsL3hsX3BhcnNlLmMKaW5kZXggMjE0MDkwNS4uMTllYWRk OSAxMDA2NDQKLS0tIGEvdG9vbHMveGwveGxfcGFyc2UuYworKysgYi90b29scy94bC94bF9wYXJz ZS5jCkBAIC0xNDE5LDkgKzE0MTksOSBAQCB2b2lkIHBhcnNlX2NvbmZpZ19kYXRhKGNvbnN0IGNo YXIgKmNvbmZpZ19zb3VyY2UsCiAgICAgICAgIGNoYXIgKnAsICpwMiwgKmJ1ZjI7CiAKICAgICAg ICAgZF9jb25maWctPm51bV9wOXMgPSAwOwotICAgICAgICBkX2NvbmZpZy0+cDkgPSBOVUxMOwor ICAgICAgICBkX2NvbmZpZy0+cDlzID0gTlVMTDsKICAgICAgICAgd2hpbGUgKChidWYgPSB4bHVf Y2ZnX2dldF9saXN0aXRlbSAocDlkZXZzLCBkX2NvbmZpZy0+bnVtX3A5cykpICE9IE5VTEwpIHsK LSAgICAgICAgICAgIHA5ID0gQVJSQVlfRVhURU5EX0lOSVQoZF9jb25maWctPnA5LAorICAgICAg ICAgICAgcDkgPSBBUlJBWV9FWFRFTkRfSU5JVChkX2NvbmZpZy0+cDlzLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkX2NvbmZpZy0+bnVtX3A5cywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgbGlieGxfZGV2aWNlX3A5X2luaXQpOwogICAgICAgICAgICAg bGlieGxfZGV2aWNlX3A5X2luaXQocDkpOwotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK