From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Grytsov Subject: [PATCH v5 02/12] libxl: add generic functions to get and free device list Date: Mon, 11 Sep 2017 20:14:52 +0300 Message-ID: <1505150102-30806-3-git-send-email-al1img@gmail.com> References: <1505150102-30806-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 1drSIs-0001t4-I9 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2017 17:15:22 +0000 Received: by mail-lf0-f66.google.com with SMTP id y15so4244100lfd.0 for ; Mon, 11 Sep 2017 10:15:21 -0700 (PDT) In-Reply-To: <1505150102-30806-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 RnJvbTogT2xla3NhbmRyIEdyeXRzb3YgPG9sZWtzYW5kcl9ncnl0c292QGVwYW0uY29tPgoKQWRk IGxpYnhsX19kZXZpY2VfbGlzdCBhbmQgbGlieGxfX2RldmljZV9saXN0X2ZyZWUKZnVuY3Rpb25z IHRvIGhhbmRsZSBkZXZpY2UgbGlzdCB1c2luZyB0aGUgZGV2aWNlCmZyYW1ld29yay4KClNpZ25l ZC1vZmYtYnk6IE9sZWtzYW5kciBHcnl0c292IDxvbGVrc2FuZHJfZ3J5dHNvdkBlcGFtLmNvbT4K LS0tCiB0b29scy9saWJ4bC9saWJ4bF9kZXZpY2UuYyAgIHwgNjEgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKIHRvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmgg fCAgOCArKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNjkgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdp dCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2RldmljZS5jIGIvdG9vbHMvbGlieGwvbGlieGxfZGV2aWNl LmMKaW5kZXggMzI5NmU4My4uNDg3YmUyOCAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxf ZGV2aWNlLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfZGV2aWNlLmMKQEAgLTE5OTAsNiArMTk5 MCw2NyBAQCBvdXQ6CiAgICAgcmV0dXJuIHJjOwogfQogCit2b2lkICpsaWJ4bF9fZGV2aWNlX2xp c3QobGlieGxfX2djICpnYywgY29uc3Qgc3RydWN0IGxpYnhsX2RldmljZV90eXBlICpkdCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkb21pZCwgY29uc3QgY2hhciogbmFtZSwg aW50ICpudW0pCit7CisgICAgdm9pZCAqciA9IE5VTEw7CisgICAgdm9pZCAqbGlzdCA9IE5VTEw7 CisgICAgdm9pZCAqaXRlbSA9IE5VTEw7CisgICAgY2hhciAqbGlieGxfcGF0aDsKKyAgICBjaGFy ICoqZGlyID0gTlVMTDsKKyAgICB1bnNpZ25lZCBpbnQgbmRpcnMgPSAwOworICAgIGludCByYzsK KworICAgICpudW0gPSAwOworCisgICAgbGlieGxfcGF0aCA9IEdDU1BSSU5URigiJXMvZGV2aWNl LyVzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX194c19saWJ4bF9wYXRoKGdj LCBkb21pZCksIG5hbWUpOworCisgICAgZGlyID0gbGlieGxfX3hzX2RpcmVjdG9yeShnYywgWEJU X05VTEwsIGxpYnhsX3BhdGgsICZuZGlycyk7CisKKyAgICBpZiAoZGlyICYmIG5kaXJzKSB7Cisg ICAgICAgIGxpc3QgPSBsaWJ4bF9fbWFsbG9jKE5PR0MsIGR0LT5kZXZfZWxlbV9zaXplICogbmRp cnMpOworICAgICAgICBpdGVtID0gbGlzdDsKKworICAgICAgICB3aGlsZSAoKm51bSA8IG5kaXJz KSB7CisgICAgICAgICAgICBkdC0+aW5pdChpdGVtKTsKKyAgICAgICAgICAgICsrKCpudW0pOwor CisgICAgICAgICAgICBpZiAoZHQtPmZyb21feGVuc3RvcmUpIHsKKyAgICAgICAgICAgICAgICBj aGFyICpkZXZpY2VfbGlieGxfcGF0aCA9IEdDU1BSSU5URigiJXMvJXMiLCBsaWJ4bF9wYXRoLCAq ZGlyKTsKKyAgICAgICAgICAgICAgICByYyA9IGR0LT5mcm9tX3hlbnN0b3JlKGdjLCBkZXZpY2Vf bGlieGxfcGF0aCwgYXRvaSgqZGlyKSwgaXRlbSk7CisgICAgICAgICAgICAgICAgaWYgKHJjKSBn b3RvIG91dDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaXRlbSA9ICh1aW50OF90ICop aXRlbSArIGR0LT5kZXZfZWxlbV9zaXplOworICAgICAgICAgICAgKytkaXI7CisgICAgICAgIH0K KyAgICB9CisKKyAgICByID0gbGlzdDsKKyAgICBsaXN0ID0gTlVMTDsKKworb3V0OgorCisgICAg aWYgKGxpc3QpIHsKKyAgICAgICAgbGlieGxfX2RldmljZV9saXN0X2ZyZWUoZHQsIGxpc3QsICpu dW0pOworICAgICAgICAqbnVtID0gMDsKKyAgICB9CisKKyAgICByZXR1cm4gcjsKK30KKwordm9p ZCBsaWJ4bF9fZGV2aWNlX2xpc3RfZnJlZShjb25zdCBzdHJ1Y3QgbGlieGxfZGV2aWNlX3R5cGUg KmR0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpsaXN0LCBpbnQgbnVtKQor eworICAgIGludCBpOworCisgICAgZm9yIChpID0gMDsgaSA8IG51bTsgaSsrKQorICAgICAgICBk dC0+ZGlzcG9zZSgodWludDhfdCopbGlzdCArIGkgKiBkdC0+ZGV2X2VsZW1fc2l6ZSk7CisKKyAg ICBmcmVlKGxpc3QpOworfQorCiAvKgogICogTG9jYWwgdmFyaWFibGVzOgogICogbW9kZTogQwpk aWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCBiL3Rvb2xzL2xpYnhsL2xp YnhsX2ludGVybmFsLmgKaW5kZXggYzk5ZWYzYi4uYzk0YTExNyAxMDA2NDQKLS0tIGEvdG9vbHMv bGlieGwvbGlieGxfaW50ZXJuYWwuaAorKysgYi90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5o CkBAIC0zNTA1LDYgKzM1MDUsNyBAQCBzdHJ1Y3QgbGlieGxfZGV2aWNlX3R5cGUgewogICAgIGlu dCAoKmRtX25lZWRlZCkodm9pZCAqLCB1bnNpZ25lZCk7CiAgICAgdm9pZCAoKnVwZGF0ZV9jb25m aWcpKGxpYnhsX19nYyAqLCB2b2lkICosIHZvaWQgKik7CiAgICAgaW50ICgqdXBkYXRlX2Rldmlk KShsaWJ4bF9fZ2MgKiwgdWludDMyX3QsIHZvaWQgKik7CisgICAgaW50ICgqZnJvbV94ZW5zdG9y ZSkobGlieGxfX2djICosIGNvbnN0IGNoYXIgKiwgbGlieGxfZGV2aWQsIHZvaWQgKik7CiAgICAg aW50ICgqc2V0X3hlbnN0b3JlX2NvbmZpZykobGlieGxfX2djICosIHVpbnQzMl90LCB2b2lkICos IGZsZXhhcnJheV90ICosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleGFycmF5 X3QgKiwgZmxleGFycmF5X3QgKik7CiB9OwpAQCAtNDM4NSw2ICs0Mzg2LDEzIEBAIHZvaWQgbGli eGxfX2RldmljZV9hZGRfYXN5bmMobGlieGxfX2VnYyAqZWdjLCB1aW50MzJfdCBkb21pZCwKIGlu dCBsaWJ4bF9fZGV2aWNlX2FkZChsaWJ4bF9fZ2MgKmdjLCB1aW50MzJfdCBkb21pZCwKICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgbGlieGxfZGV2aWNlX3R5cGUgKmR0LCB2b2lk ICp0eXBlKTsKIAorLyogQ2FsbGVyIGlzIHJlc3BvbnNpYmxlIGZvciBmcmVlaW5nIHRoZSBtZW1v cnkgYnkgY2FsbGluZworICogbGlieGxfX2RldmljZV9saXN0X2ZyZWUKKyAqLwordm9pZCogbGli eGxfX2RldmljZV9saXN0KGxpYnhsX19nYyAqZ2MsIGNvbnN0IHN0cnVjdCBsaWJ4bF9kZXZpY2Vf dHlwZSAqZHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgZG9taWQsIGNvbnN0 IGNoYXIqIG5hbWUsIGludCAqbnVtKTsKK3ZvaWQgbGlieGxfX2RldmljZV9saXN0X2ZyZWUoY29u c3Qgc3RydWN0IGxpYnhsX2RldmljZV90eXBlICpkdCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdm9pZCAqbGlzdCwgaW50IG51bSk7CiAjZW5kaWYKIAogLyoKLS0gCjIuNy40CgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1h aWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==