From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH v3.1] libxl: Design of an async API to issue QMP commands to QEMU Date: Tue, 3 Jul 2018 10:47:41 +0100 Message-ID: <20180703094741.4211-1-anthony.perard@citrix.com> References: <20180601143720.24637-1-anthony.perard@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1faHuY-0007Iv-UK for xen-devel@lists.xenproject.org; Tue, 03 Jul 2018 09:47:50 +0000 In-Reply-To: <20180601143720.24637-1-anthony.perard@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Anthony PERARD , Wei Liu , Ian Jackson List-Id: xen-devel@lists.xenproject.org QWxsIHRoZSBmdW5jdGlvbnMgd2lsbCBiZSBpbXBsZW1lbnRlZCBpbiBsYXRlciBwYXRjaGVzLgoK U2lnbmVkLW9mZi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+ CgotLS0KCldoYXQgZG8geW91IHRoaW5rIG9mIHRoaXMgZGVzaWduPyBUaGlzIGlzIHRoZSBzYW1l IGFzIGluIG15IHBhdGNoIHNlcmllcwp3aXRoIG5ldyBuYW1lcyAodG8gYXZvaWQgY29uZnVzaW9u IHdpdGggbGlieGxfX19ldl8qKSBhbmQgZG9jdW1lbnRhdGlvbi4KCkknbGwgd3JpdGUgc29tZXRo aW5nIGFzIHdlbGwgZm9yIHRoZSBpbnRlcm5hbCBvZiB0aGUgZW5naW5lICh0aGUgUU1QCmNsaWVu dCBpdHNlbGYpLgotLS0KIHRvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmggICAgICAgICB8IDk4 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHRvb2xzL2xpYnhsL2xpYnhsX3R5cGVzX2lu dGVybmFsLmlkbCB8IDE0ICsrKysKIDIgZmlsZXMgY2hhbmdlZCwgMTEyIGluc2VydGlvbnMoKykK CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oIGIvdG9vbHMvbGlieGwv bGlieGxfaW50ZXJuYWwuaAppbmRleCBjNTgyODk0NTg5Li5hYzVhOGEyMWYyIDEwMDY0NAotLS0g YS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2lu dGVybmFsLmgKQEAgLTM1Nyw2ICszNTcsMTA0IEBAIHN0cnVjdCBsaWJ4bF9fZXZfY2hpbGQgewog fTsKIAogCisvKgorICogUU1QIGFzeW5jaHJvbm91cyBjYWxscworICovCisKKy8qCisgKiBUaGlz IHN0cnVjdCBpcyB1c2VkIHRvIHJlZ2lzdGVyIG9uZSBjb21tYW5kIHRvIHNlbmQgdG8gUUVNVSB3 aXRoIGFuCisgKiBhc3NvY2lhdGVkIGNhbGxiYWNrLgorICoKKyAqIFBvc3NpYmxlIHN0YXRlczoK KyAqICBVbmRlZmluZWQKKyAqICAgIE1pZ2h0IGNvbnRhaW4gYW55dGhpbmcuCisgKiAgSWRsZQor ICogICAgU3RydWN0IGNvbnRlbnRzIGFyZSBkZWZpbmVkIGVub3VnaCB0byBwYXNzIHRvIGFueQor ICogICAgbGlieGxfX3FtcF9jbWRfKiBmdW5jdGlvbnMgYnV0IGlzIG5vdCByZWdpc3RlcmVkIGFu ZCBjYWxsYmFjaworICogICAgd2lsbCBub3QgYmUgY2FsbGVkLiBUaGUgc3RydWN0IGRvZXMgbm90 IGNvbnRhaW4gcmVmZXJlbmNlcyB0bworICogICAgYW55IGFsbG9jYXRlZCByZXNvdXJjZXMgc28g Y2FuIGJlIHRocm93biBhd2F5LgorICogIEFjdGl2ZQorICogICAgQ3VycmVudGx5IHdhaXRpbmcg Zm9yIGEgcmVzcG9uc2UgZnJvbSBRRU1VLCBhbmQgY2FsbGJhY2sgY2FuIGJlCisgKiAgICBjYWxs ZWQuIF9kaXNwb3NlIG11c3QgYmUgY2FsbGVkIHRvIHJlY2xhaW0gcmVzb3VyY2VzLgorICovCit0 eXBlZGVmIHN0cnVjdCBsaWJ4bF9fcW1wX2NtZF9zdGF0ZSBsaWJ4bF9fcW1wX2NtZF9zdGF0ZTsK KworLyoKKyAqIGNtZF9zdGF0ZTogICBJbiBJZGxlIHN0YXRlICh3aXRoIHZhbHVlIGRvbWlkIGF2 YWlsYWJsZSkuCisgKiByZXNwb25zZTogICAgUU1QIHJlc3BvbnNlIG9uIHN1Y2Nlc3MsIG9yIE5V TEwgb24gZXJyb3IuCisgKiBlcnJvcl9jbGFzczogTk9ORSBvbiBzdWNjZXNzLCBvdGhlcndpc2Ug UU1QIGVycm9yIGNsYXNzIG9yIGxpYnhsIGVycm9yLgorICovCit0eXBlZGVmIGxpYnhsX19xbXBf Y21kX2NhbGxiYWNrKGxpYnhsX19nYyAqZ2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGxpYnhsX19xbXBfY21kX3N0YXRlICpjbWRfc3RhdGUsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGxpYnhsX19qc29uX29iamVjdCAqcmVzcG9uc2UsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19xbXBfZXJyb3JfY2xhc3MgZXJyb3JfY2xh c3MpOworCisvKgorICogSW5pdGlhbGl6ZSBsaWJ4bF9fcW1wX2NtZF9zdGF0ZS4KKyAqICAgIFdo aWNoIG11c3QgYmUgaW4gVW5kZWZpbmVkIG9yIElkbGUgc3RhdGUuCisgKiAgICBPbiByZXR1cm4g aXQgaXMgSWRsZS4KKyAqLworX2hpZGRlbiB2b2lkIGxpYnhsX19xbXBfY21kX2luaXQobGlieGxf X3FtcF9jbWRfc3RhdGUgKmNtZF9zdGF0ZSk7CisKKy8qCisgKiBSZWdpc3RlciBhIGNvbW1hbmQg dG8gYmUgaXNzdWVkIHRvIFFFTVUuCisgKiAgIE9uIGVudHJ5IGNtZF9zdGF0ZSBtdXN0IGJlIElk bGUuCisgKiAgIFJldHVybnMgYSBsaWJ4bCBlcnJvciBjb2RlOyBvbiBlcnJvciByZXR1cm4gY21k X3N0YXRlIGlzIElkbGUuCisgKiAgIE9uIHN1Y2Nlc3NmdWwgcmV0dXJuIGNtZF9zdGF0ZSBpcyBB Y3RpdmUgYW5kIGNhbGxiYWNrIHdpbGwgYmUKKyAqICAgY2FsbGVkIGluIHRoZSBmdXR1cmUuCisg KiAgIENhbGxiYWNrIHdpbGwgbm90IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiB0aGUgY2FsbCB0byB0 aGlzCisgKiAgIGZ1bmN0aW9uLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBhdHRlbXB0IHRv IGNvbm5lY3QgdG8gdGhlIFFNUCBzb2NrZXQgaWYgbm90CisgKiBhbHJlYWR5IGNvbm5lY3RlZC4g Tm8gb3RoZXIgY29tbXVuaWNhdGlvbiB3aWxsIGJlIGRvbmUgYmVmb3JlIHRoZQorICogZnVuY3Rp b24gcmV0dXJucy4KKyAqCisgKiBUaGUgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUg c2FtZSBjbWRfc3RhdGUsIGJ1dCB0aGUKKyAqIGNtZF9zdGF0ZSB3aWxsIGJlIElkbGUuCisgKgor ICogV2hlbiBjYWxsZWQgZnJvbSB3aXRoaW4gYSBjYWxsYmFjaywgdGhlIHNhbWUgUU1QIGNvbm5l Y3Rpb24gd2lsbCBiZQorICogcmV1c2VkIHRvIGV4ZWN1dGUgdGhlIG5ldyBjb21tYW5kLiBUaGlz IGlzIGltcG9ydGFudCBpbiB0aGUgY2FzZQorICogd2hlcmUgdGhlIGZpcnN0IGNvbW1hbmQgaXMg ImFkZC1mZCIgYW5kIHRoZSBzZWNvbmQgY29tbWFuZCB1c2UgdGhlCisgKiBmZHNldCBjcmVhdGVk IGJ5IFFFTVUuCisgKi8KK19oaWRkZW4gaW50IGxpYnhsX19xbXBfY21kX2V4ZWMobGlieGxfX2dj ICpnYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX3FtcF9jbWRfc3Rh dGUgKmNtZF9zdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX3Ft cF9jbWRfY2FsbGJhY2sgKmNhbGxiYWNrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg Y2hhciAqY21kLCBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MpOworCisvKgorICogT24gZW50cnks IGNtZF9zdGF0ZSBtdXN0IGJlIGluIHN0YXRlIEFjdGl2ZSBvciBJZGxlLgorICogT24gcmV0dXJu IGl0IGlzIElkbGUuCisgKi8KK19oaWRkZW4gdm9pZCBsaWJ4bF9fcW1wX2NtZF9kaXNwb3NlKGxp YnhsX19nYyAqZ2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9f cW1wX2NtZF9zdGF0ZSAqY21kX3N0YXRlKTsKKworc3RydWN0IGxpYnhsX19xbXBfY21kX3N0YXRl IHsKKyAgICAvKiByZWFkLW9ubHkgb25jZSBBY3RpdmUgYW5kIGZyb20gd2l0aGluIHRoZSBjYWxs YmFjayAqLworICAgIHVpbnQzMl90IGRvbWlkOworICAgIGxpYnhsX19xbXBfY21kX2NhbGxiYWNr ICpjYWxsYmFjazsKKworICAgIC8qIHByaXZhdGUgKi8KKworICAgIC8qCisgICAgICogaWQgPT0g MDogaW5pdGlhbCBzdGF0ZSBvciByZXNwb25zZSBhbHJlYWR5IHJlY2VpdmVkIGFuZCBjYWxsYmFj ayBjYWxsZWQuCisgICAgICogICAgICAgICAgU3RhdGUgaXMgSWRsZS4KKyAgICAgKiBpZCA+IDA6 ICBpZCB1c2VkIHRvIHNlbmQgYSBjb21tYW5kIHRvIHFlbXUuCisgICAgICogICAgICAgICAgU3Rh dGUgaXMgQWN0aXZlLgorICAgICAqLworICAgIGludCBpZDsKKyAgICBMSUJYTF9UQUlMUV9FTlRS WShsaWJ4bF9fZXZfcW1wKSBlbnRyeTsKKworICAgIC8qCisgICAgICogVGhpcyB2YWx1ZSBjYW4g YmUgaW5pdGlhbGlzZSBiZWZvcmUgY2FsbGluZyBfcW1wX2NtZF9leGVjLiBUaGUKKyAgICAgKiBm aWxlIGRlc2NyaXB0b3Igd2lsbCBzZW50IHRvIFFFTVUgYWxvbmcgd2l0aCB0aGUgY29tbWFuZCwg dGhlbgorICAgICAqIHRoZSBmZCB3aWxsIGJlIGNsb3NlZC4KKyAgICAgKi8KKyAgICBsaWJ4bF9f Y2FyZWZkICplZmQ7Cit9OworCisKIC8qCiAgKiBldmdlbiBzdHJ1Y3R1cmVzLCB3aGljaCBhcmUg dGhlIHN0YXRlIHdlIHVzZSBmb3IgZ2VuZXJhdGluZwogICogZXZlbnRzIGZvciB0aGUgY2FsbGVy LgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfdHlwZXNfaW50ZXJuYWwuaWRsIGIvdG9v bHMvbGlieGwvbGlieGxfdHlwZXNfaW50ZXJuYWwuaWRsCmluZGV4IGYyZmYwMTcxOGQuLmFkYTk3 NjE1ZDUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzX2ludGVybmFsLmlkbAor KysgYi90b29scy9saWJ4bC9saWJ4bF90eXBlc19pbnRlcm5hbC5pZGwKQEAgLTEzLDYgKzEzLDIw IEBAIGxpYnhsX19xbXBfbWVzc2FnZV90eXBlID0gRW51bWVyYXRpb24oInFtcF9tZXNzYWdlX3R5 cGUiLCBbCiAgICAgKDUsICJpbnZhbGlkIiksCiAgICAgXSkKIAorbGlieGxfX3FtcF9lcnJvcl9j bGFzcyA9IEVudW1lcmF0aW9uKCJxbXBfZXJyb3JfY2xhc3MiLCBbCisgICAgIyBObyBlcnJvcgor ICAgICgwLCAiTk9ORSIpLAorICAgICMgRXJyb3IgZ2VuZXJhdGVkIGJ5IGxpYnhsIChlLmcuIHNv Y2tldCBjbG9zZWQgdW5leHBlY3RlZGx5LCBubyBtZW0sIC4uLikKKyAgICAoMSwgImxpYnhsX2Vy cm9yIiksCisgICAgIyBRTVAgZXJyb3IgY2xhc3NlcyBkZXNjcmliZWQgaW4gUUVNVSBzb3VyY2Vz IGNvZGUgKFFhcGlFcnJvckNsYXNzKQorICAgICgyLCAiR2VuZXJpY0Vycm9yIiksCisgICAgKDMs ICJDb21tYW5kTm90Rm91bmQiKSwKKyAgICAoNCwgIkRldmljZU5vdEFjdGl2ZSIpLAorICAgICg1 LCAiRGV2aWNlTm90Rm91bmQiKSwKKyAgICAjIFVucmVjb2duaXplZCBRTVAgZXJyb3IgY2xhc3MK KyAgICAoNiwgIlVua25vd24iKSwKKyAgICBdKQorCiBsaWJ4bF9fZGV2aWNlX2tpbmQgPSBFbnVt ZXJhdGlvbigiZGV2aWNlX2tpbmQiLCBbCiAgICAgKDAsICJOT05FIiksCiAgICAgKDEsICJWSUYi KSwKLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu cHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv L3hlbi1kZXZlbA==