From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH v8 11/17] libxl: QEMU startup sync based on QMP Date: Fri, 4 Jan 2019 15:30:50 +0000 Message-ID: <20190104153056.19138-12-anthony.perard@citrix.com> References: <20190104153056.19138-1-anthony.perard@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gfRsR-000429-Pz for xen-devel@lists.xenproject.org; Fri, 04 Jan 2019 15:59:15 +0000 In-Reply-To: <20190104153056.19138-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 , Ian Jackson , Wei Liu , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org VGhpcyBpcyBvbmx5IGFjdGl2YXRlZCB3aGVuIGRtX3Jlc3RyaWN0PTEsIGFzIGV4cGxhaW5lZCBp biBhIHByZXZpb3VzCnBhdGNoICJsaWJ4bF9kbTogUHJlLW9wZW4gUU1QIHNvY2tldCBmb3IgUUVN VSIKClNpZ25lZC1vZmYtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXgu Y29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ CkFja2VkLWJ5OiBJYW4gSmFja3NvbiA8aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4KLS0tCgpO b3RlczoKICAgIHY4OgogICAgICAgIEFja2VkCiAgICAKICAgIHY3OgogICAgICAgIGZpeGVkIF9k aXNwb3NlIGNhbGwgaW4gZGV2aWNlX21vZGVsX3NwYXduX291dGNvbWUKICAgICAgICBtb3ZlIHFt cCBmaWVsZCBpbiBsaWJ4bF9fZG1fc3Bhd25fc3RhdGUgaW50byB0aGUgcHJpdmF0ZSBzZWN0aW9u CiAgICAgICAgYWRkZWQgZGVzY3JpcHRpb24gYWJvdXQgdGhlIG5ldyBRRU1VX0FQSSBlcnJvciB2 YWx1ZQogICAgCiAgICB2NjoKICAgICAgICBpbnZlbnQgRVJST1JfUUVNVV9BUEkKICAgICAgICBy ZXR1cm4gYmV0dGVyIHJjOiBFUlJPUl9RRU1VX0FQSSBvciBFUlJPUl9OT1RfUkVBRFkKICAgICAg ICBlbmhhbmNlIGxvZyBtZXNzYWdlcyAoZGVidWcgYW5kIGVycm9yKQogICAgCiAgICB2NToKICAg ICAgICByZW1vdmVkIGVtcHR5IHN1Y2Nlc3MgYnJhbmNoIGluIGRldmljZV9tb2RlbF9xbXBfY2Io KQogICAgICAgIGNhbGwgbGlieGxfX2V2X3FtcF9pbml0KCkgZWFybGllciBpbiBsaWJ4bF9fc3Bh d25fbG9jYWxfZG0uCiAgICAgICAgICAgIG90aGVyd2lzZSB0aGUgZXJyb3IgcGF0aCB3b3VsZCB1 c2UgYW4gdW5pbml0aWFsaXNlZAogICAgICAgICAgICBsaWJ4bF9fZXZfcW1wLgogICAgCiAgICB2 NDoKICAgICAgICBtb3ZlZCB0byBsaWJ4bF9fZG1fc3Bhd25fKiBmcm9tIGxpYnhsX19zcGF3bl8q CgogdG9vbHMvbGlieGwvbGlieGxfZG0uYyAgICAgICB8IDUzICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCB8ICAxICsKIHRv b2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlkbCAgfCAgMSArCiAzIGZpbGVzIGNoYW5nZWQsIDU1IGlu c2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kbS5jIGIvdG9vbHMv bGlieGwvbGlieGxfZG0uYwppbmRleCA0MDAwZjQ3NTQ1Li4yMGQ4MTFiZTAzIDEwMDY0NAotLS0g YS90b29scy9saWJ4bC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RtLmMKQEAg LTIwNjMsMTAgKzIwNjMsMTIgQEAgc3RhdGljIGludCBsaWJ4bF9fd3JpdGVfc3R1Yl9kbWFyZ3Mo bGlieGxfX2djICpnYywKIAogc3RhdGljIHZvaWQgZG1zc19pbml0KGxpYnhsX19kbV9zcGF3bl9z dGF0ZSAqZG1zcykKIHsKKyAgICBsaWJ4bF9fZXZfcW1wX2luaXQoJmRtc3MtPnFtcCk7CiB9CiAK IHN0YXRpYyB2b2lkIGRtc3NfZGlzcG9zZShsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fZG1fc3Bhd25f c3RhdGUgKmRtc3MpCiB7CisgICAgbGlieGxfX2V2X3FtcF9kaXNwb3NlKGdjLCAmZG1zcy0+cW1w KTsKIH0KIAogc3RhdGljIHZvaWQgc3Bhd25fc3R1YmRvbV9wdnFlbXVfY2IobGlieGxfX2VnYyAq ZWdjLApAQCAtMjQ1MSw2ICsyNDUzLDkgQEAgc3RhdGljIHZvaWQgZGV2aWNlX21vZGVsX3N0YXJ0 dXBfZmFpbGVkKGxpYnhsX19lZ2MgKmVnYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgcmMpOwogc3RhdGljIHZvaWQgZGV2aWNlX21vZGVsX2RldGFjaGVkKGxp YnhsX19lZ2MgKmVnYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9f c3Bhd25fc3RhdGUgKnNwYXduKTsKK3N0YXRpYyB2b2lkIGRldmljZV9tb2RlbF9xbXBfY2IobGli eGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfcW1wICpldiwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0ICpyZXNwb25zZSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50IHJjKTsKIAogLyogb3VyICJuZXh0IHN0ZXAiIGZ1bmN0 aW9uLCBjYWxsZWQgZnJvbSB0aG9zZSBjYWxsYmFja3MgYW5kIGVsc2V3aGVyZSAqLwogc3RhdGlj IHZvaWQgZGV2aWNlX21vZGVsX3NwYXduX291dGNvbWUobGlieGxfX2VnYyAqZWdjLApAQCAtMjYw NSw2ICsyNjEwLDE3IEBAIHZvaWQgbGlieGxfX3NwYXduX2xvY2FsX2RtKGxpYnhsX19lZ2MgKmVn YywgbGlieGxfX2RtX3NwYXduX3N0YXRlICpkbXNzKQogICAgIHNwYXduLT5mYWlsdXJlX2NiID0g ZGV2aWNlX21vZGVsX3N0YXJ0dXBfZmFpbGVkOwogICAgIHNwYXduLT5kZXRhY2hlZF9jYiA9IGRl dmljZV9tb2RlbF9kZXRhY2hlZDsKIAorICAgIGlmIChzdGF0ZS0+ZG1fbW9uaXRvcl9mZCA+PSAw KSB7CisgICAgICAgIC8qIFRoZXJlIGlzIGEgdmFsaWQgUU1QIHNvY2tldCBhdmFpbGFibGUgbm93 LAorICAgICAgICAgKiB1c2UgaXQgdG8gZmluZCBvdXQgd2hlbiBRRU1VIGlzIHJlYWR5ICovCisg ICAgICAgIGRtc3MtPnFtcC5hbyA9IGFvOworICAgICAgICBkbXNzLT5xbXAuY2FsbGJhY2sgPSBk ZXZpY2VfbW9kZWxfcW1wX2NiOworICAgICAgICBkbXNzLT5xbXAuZG9taWQgPSBkb21pZDsKKyAg ICAgICAgZG1zcy0+cW1wLnBheWxvYWRfZmQgPSAtMTsKKyAgICAgICAgcmMgPSBsaWJ4bF9fZXZf cW1wX3NlbmQoZ2MsICZkbXNzLT5xbXAsICJxdWVyeS1zdGF0dXMiLCBOVUxMKTsKKyAgICAgICAg aWYgKHJjKSBnb3RvIG91dF9jbG9zZTsKKyAgICB9CisKICAgICByYyA9IGxpYnhsX19zcGF3bl9z cGF3bihlZ2MsIHNwYXduKTsKICAgICBpZiAocmMgPCAwKQogICAgICAgICBnb3RvIG91dF9jbG9z ZTsKQEAgLTI2NzgsNiArMjY5NCw0MyBAQCBzdGF0aWMgdm9pZCBkZXZpY2VfbW9kZWxfZGV0YWNo ZWQobGlieGxfX2VnYyAqZWdjLAogICAgIGRldmljZV9tb2RlbF9zcGF3bl9vdXRjb21lKGVnYywg ZG1zcywgMCk7CiB9CiAKK3N0YXRpYyB2b2lkIGRldmljZV9tb2RlbF9xbXBfY2IobGlieGxfX2Vn YyAqZWdjLCBsaWJ4bF9fZXZfcW1wICpldiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0ICpyZXNwb25zZSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaW50IHJjKQoreworICAgIEVHQ19HQzsKKyAgICBsaWJ4bF9fZG1fc3Bh d25fc3RhdGUgKmRtc3MgPSBDT05UQUlORVJfT0YoZXYsICpkbXNzLCBxbXApOworICAgIGNvbnN0 IGxpYnhsX19qc29uX29iamVjdCAqbzsKKyAgICBjb25zdCBjaGFyICpzdGF0dXM7CisKKyAgICBs aWJ4bF9fZXZfcW1wX2Rpc3Bvc2UoZ2MsIGV2KTsKKworICAgIGlmIChyYykKKyAgICAgICAgZ290 byBmYWlsZWQ7CisKKyAgICBvID0gbGlieGxfX2pzb25fbWFwX2dldCgic3RhdHVzIiwgcmVzcG9u c2UsIEpTT05fU1RSSU5HKTsKKyAgICBpZiAoIW8pIHsKKyAgICAgICAgTE9HRChFUlJPUiwgZXYt PmRvbWlkLAorICAgICAgICAgICAgICJNaXNzaW5nICdzdGF0dXMnIGluIHJlc3BvbnNlIHRvICdx dWVyeS1zdGF0dXMnIik7CisgICAgICAgIExPR0QoREVCVUcsIGV2LT5kb21pZCwgIi4uIGluc3Rl YWQsIGdvdDogJXMiLCBKU09OKHJlc3BvbnNlKSk7CisgICAgICAgIHJjID0gRVJST1JfUUVNVV9B UEk7CisgICAgICAgIGdvdG8gZmFpbGVkOworICAgIH0KKyAgICBzdGF0dXMgPSBsaWJ4bF9fanNv bl9vYmplY3RfZ2V0X3N0cmluZyhvKTsKKyAgICBpZiAoc3RyY21wKHN0YXR1cywgInJ1bm5pbmci KSkgeworICAgICAgICBMT0dEKEVSUk9SLCBldi0+ZG9taWQsICJVbmV4cGVjdGVkIFFFTVUgc3Rh dHVzOiAlcyIsIHN0YXR1cyk7CisgICAgICAgIHJjID0gRVJST1JfTk9UX1JFQURZOworICAgICAg ICBnb3RvIGZhaWxlZDsKKyAgICB9CisKKyAgICBsaWJ4bF9fc3Bhd25faW5pdGlhdGVfZGV0YWNo KGdjLCAmZG1zcy0+c3Bhd24pOworICAgIHJldHVybjsKKworZmFpbGVkOgorICAgIExPR0QoRVJS T1IsIGV2LT5kb21pZCwgIlFFTVUgZGlkIG5vdCBzdGFydCBwcm9wZXJseSwgcmM9JWQiLCByYyk7 CisgICAgbGlieGxfX3NwYXduX2luaXRpYXRlX2ZhaWx1cmUoZWdjLCAmZG1zcy0+c3Bhd24sIHJj KTsKK30KKwogc3RhdGljIHZvaWQgZGV2aWNlX21vZGVsX3NwYXduX291dGNvbWUobGlieGxfX2Vn YyAqZWdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2Rt X3NwYXduX3N0YXRlICpkbXNzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaW50IHJjKQpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCBiL3Rv b2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmgKaW5kZXggODNiYzM4NGQzZS4uODdhNThiM2FjMyAx MDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAorKysgYi90b29scy9saWJ4 bC9saWJ4bF9pbnRlcm5hbC5oCkBAIC0zOTM0LDYgKzM5MzQsNyBAQCB0eXBlZGVmIHZvaWQgbGli eGxfX2RtX3NwYXduX2NiKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2RtX3NwYXduX3N0YXRlKiwK IHN0cnVjdCBsaWJ4bF9fZG1fc3Bhd25fc3RhdGUgewogICAgIC8qIG1peGVkIC0gc3Bhd24uYW8g bXVzdCBiZSBpbml0aWFsaXNlZCBieSB1c2VyOyByZXN0IGlzIHByaXZhdGU6ICovCiAgICAgbGli eGxfX3NwYXduX3N0YXRlIHNwYXduOworICAgIGxpYnhsX19ldl9xbXAgcW1wOwogICAgIC8qIGZp bGxlZCBpbiBieSB1c2VyLCBtdXN0IHJlbWFpbiB2YWxpZDogKi8KICAgICB1aW50MzJfdCBndWVz dF9kb21pZDsgLyogZG9tYWluIGJlaW5nIHNlcnZlZCAqLwogICAgIGxpYnhsX2RvbWFpbl9jb25m aWcgKmd1ZXN0X2NvbmZpZzsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlk bCBiL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlkbAppbmRleCAyMTJiMDBhNjc3Li5iNjg1YWM0 N2FjIDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF90eXBlcy5pZGwKKysrIGIvdG9vbHMv bGlieGwvbGlieGxfdHlwZXMuaWRsCkBAIC03NSw2ICs3NSw3IEBAIGxpYnhsX2Vycm9yID0gRW51 bWVyYXRpb24oImVycm9yIiwgWwogICAgICgtMjksICJRTVBfQ09NTUFORF9OT1RfRk9VTkQiKSwg IyB0aGUgcmVxdWVzdGVkIGNvbW1hbmQgaGFzIG5vdCBiZWVuIGZvdW5kCiAgICAgKC0zMCwgIlFN UF9ERVZJQ0VfTk9UX0FDVElWRSIpLCAjIGEgZGV2aWNlIGhhcyBmYWlsZWQgdG8gYmUgYmVjb21l IGFjdGl2ZQogICAgICgtMzEsICJRTVBfREVWSUNFX05PVF9GT1VORCIpLCAjIHRoZSByZXF1ZXN0 ZWQgZGV2aWNlIGhhcyBub3QgYmVlbiBmb3VuZAorICAgICgtMzIsICJRRU1VX0FQSSIpLCAjIFFF TVUncyByZXBsaWVzIGRvbid0IGNvbnRhaW5zIGV4cGVjdGVkIG1lbWJlcnMKICAgICBdLCB2YWx1 ZV9uYW1lc3BhY2UgPSAiIikKIAogbGlieGxfZG9tYWluX3R5cGUgPSBFbnVtZXJhdGlvbigiZG9t YWluX3R5cGUiLCBbCi0tIApBbnRob255IFBFUkFSRAoKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1h bi9saXN0aW5mby94ZW4tZGV2ZWw=