From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: Re: [PATCH v5 03/15] libxl_qmp: Implement fd callback and read data Date: Thu, 11 Oct 2018 15:06:04 +0100 Message-ID: <20181011140604.GH1331@perard.uk.xensource.com> References: <20180907151104.32306-1-anthony.perard@citrix.com> <20180907151104.32306-4-anthony.perard@citrix.com> <23486.7932.781238.747508@mariner.uk.xensource.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 1gAbbN-0006cz-Lr for xen-devel@lists.xenproject.org; Thu, 11 Oct 2018 14:06:09 +0000 Content-Disposition: inline In-Reply-To: <23486.7932.781238.747508@mariner.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Ian Jackson Cc: xen-devel@lists.xenproject.org, Wei Liu List-Id: xen-devel@lists.xenproject.org T24gV2VkLCBPY3QgMTAsIDIwMTggYXQgMDQ6NDc6MDhQTSArMDEwMCwgSWFuIEphY2tzb24gd3Jv dGU6Cj4gQW50aG9ueSBQRVJBUkQgd3JpdGVzICgiW1BBVENIIHY1IDAzLzE1XSBsaWJ4bF9xbXA6 IEltcGxlbWVudCBmZCBjYWxsYmFjayBhbmQgcmVhZCBkYXRhIik6Cj4gPiBGaXJzdCBzdGVwIGlu dG8gdGFraW5nIGNhcmUgb2YgdGhlIGlucHV0IGZyb20gUUVNVSdzIFFNUCBzb2NrZXQuIEZvcgo+ ID4gbm93LCB3ZSByZWFkIGRhdGEgYW5kIHN0b3JlIHRoZW0gaW4gYSBidWZmZXIuCj4gLi4uCj4g PiArICAgIGlmICghZXYtPnJ4X2J1Zikgewo+ID4gKyAgICAgICAgZXYtPnJ4X2J1ZiA9IGxpYnhs X19tYWxsb2MoTk9HQywgUU1QX1JFQ0VJVkVfQlVGRkVSX1NJWkUpOwo+ID4gKyAgICAgICAgZXYt PmJ1Zl9zaXplID0gUU1QX1JFQ0VJVkVfQlVGRkVSX1NJWkU7Cj4gPiArICAgICAgICBldi0+YnVm X3VzZWQgPSAwOwo+ID4gKyAgICAgICAgZXYtPmJ1Zl9jb25zdW1lZCA9IDA7Cj4gPiArICAgIH0K PiA+ICsKPiA+ICsgICAgLyogQ2hlY2sgaWYgbGFzdCBidWZmZXIgc3RpbGwgaGF2ZSBzcGFjZSwg b3IgaW5jcmVhc2Ugc2l6ZSAqLwo+ID4gKyAgICAvKiBUaGUgLTEgaXMgYmVjYXVzZSB0aGVyZSBp cyBhbHdheXMgc3BhY2UgZm9yIGEgTlVMIGNoYXJhY3RlciAqLwo+ID4gKyAgICBpZiAoZXYtPmJ1 Zl91c2VkID09IGV2LT5idWZfc2l6ZSAtIDEpIHsKPiA+ICsgICAgICAgIGV2LT5idWZfc2l6ZSAr PSBRTVBfUkVDRUlWRV9CVUZGRVJfU0laRTsKPiA+ICsgICAgICAgIGV2LT5yeF9idWYgPSBsaWJ4 bF9fcmVhbGxvYyhOT0dDLCBldi0+cnhfYnVmLCBldi0+YnVmX3NpemUpOwo+ID4gKyAgICB9Cj4g Cj4gSSB0aGluayB0aGlzIGlzIHVubmVjZXNzYXJpbHkgY29tcGxleC4gIEkgdGhpbmsgeW91IHNo b3VsZCBzZXQgYnVmXyoKPiB0byAwIGluIF9pbml0LCBhbmQgYXJyYW5nZSB0byByZWFsbG9jKDAs IG5ld19zaXplKSBpZiB0aGUgYnVmZmVyIGlzCj4gbm90IGJpZyBlbm91Z2ggZm9yICJzb21lIHNw YWNlIiBwbHVzIGEgbnVsLgo+IAo+IEFsc28sIHlvdSBzaG91bGQgaW5jcmVhc2UgdGhlIGJ1ZmZl ciBzaXplIGV4cG9uZW50aWFsbHkuICBBbmQgeW91Cj4gc2hvdWxkIHB1dCBhIGxpbWl0IG9uIHRo ZSBidWZmZXIgc2l6ZSwgaW4gY2FzZSB0aGUgc2VuZGVyIGdvZXMgbWFkLgoKT2ssIEknbGwgc2Vl IHdoYXQgSSBjYW4gZG8uCgo+ID4gKyAgICAvKiBUaGUgLTEgaXMgYmVjYXVzZSB0aGVyZSBpcyBh bHdheXMgc3BhY2UgZm9yIGEgTlVMIGNoYXJhY3RlciAqLwo+ID4gKyAgICByID0gcmVhZChmZCwg ZXYtPnJ4X2J1ZiArIGV2LT5idWZfdXNlZCwgZXYtPmJ1Zl9zaXplIC0gZXYtPmJ1Zl91c2VkIC0g MSk7Cj4gCj4gTGluZXMgdG9vIGxvbmcgYWdhaW4uICAoSSB3aWxsIHN0b3AgY29tcGxhaW5pbmcg YWJvdXQgdGhpcyBub3cgYnV0IGNhbgo+IHlvdSBwbGVhZSBmaXggaXQgdGhyb3VnaG91dD8pCgpC dXQgdGhlIGNvbW1lbnQgaXMgbGVzcyB0aGFuIDcwY2hyIGxvbmcsIGFuZCB0aGUgbmV4dCBsaW5l IGZvbGxvdyB0aGUKY29kaW5nIHN0eWxlLCB3aGljaCBpcyAiTGluZXMgYXJlIGxpbWl0ZWQgdG8g NzUtODAgY2hhcmFjdGVycy4iLCBhbmQKSSdtIHByZXR0eSBzdXJlIHRoYXQgNzcgaXMgbGVzcyB0 aGF0IDc1LTgwIQoKSWYgdGhlIGNvZGluZyBzdHlsZSBkZXNjcmliZWQgaW4gQ09ESU5HX1NUWUxF IGNoYW5nZSBiZWZvcmUgbXkgbmV4dApzdWJtaXRpb24sIEkgY2FuIHdyYXAgdG9vIGxvbmcgbGlu ZXMgOy0pLgoKPiA+ICsgICAgaWYgKHIgPCAwKSB7Cj4gPiArICAgICAgICBpZiAoZXJybm8gPT0g RUlOVFIpCj4gPiArICAgICAgICAgICAgcmV0dXJuIDA7Cj4gCj4gTm8sIHlvdSBuZWVkIHRvIGdv IHJvdW5kIGFnYWluLiAgSSdtIGFmcmFpZCB0aGUgd2hvbGUgb2YgdGhpcyBmdW5jdGlvbgo+IG5l ZWRzIHRvIGJlIGluIGEgbG9vcC4gIFRoaXMgaXMgYmVjYXVzZSB5b3UgYXJlIG5vdCBndWFyYW50 ZWVkIHRoYXQKPiB5b3Ugd2lsbCBnZXQgbW9yZSB0aGFuIG9uZSBjYWxsIHRvIHlvdXIgcmVhZGFi bGUgY2FsbGJhY2sgcGVyCj4gdHJhbnNpdGlvbiBmcm9tIG5vdC1yZWFkYWJsZSB0byByZWFkYWJs ZS4KCkkndmUgZGlkIGl0IHdpdGhvdXQgYSBsb29wIGJlY2F1c2UgUE9MTElOIG1lYW5zICJkYXRh IG1heSBiZSByZWFkCndpdGhvdXQgYmxvY2tpbmciLCBhbmQgSSBjYW4ndCBmaW5kIGFueXRoaW5n IHNwZWFraW5nIGFib3V0IGEgcmVsYXRpb24Kd2l0aCB0cmFuc2l0aW9uIGZyb20gb25lIHN0YXRl IHRvIHRoZSBvdGhlci4KCkJ1dCBJIGNhbiBhZGQgYSBsb29wIGFyb3VuZCB0aGUgY29kZSwgYXMg dGhhdCBzZWVtcyB0byBjb25mdXNlIGV2ZXJ5b25lCnRoYXQgdGhlcmUgaXMgbm9uZS4KCj4gPiAr ICAgICAgICBhc3NlcnQoZXJybm8pOwo+ID4gKyAgICAgICAgaWYgKGVycm5vID09IEVXT1VMREJM T0NLKQo+ID4gKyAgICAgICAgICAgIHJldHVybiAwOwo+IAo+IEFuZCBhZ2Fpbi4KClN1cmVseSBo ZXJlIEkgbmVlZCB0byByZXR1cm4gb24gRVdPVUxEQkxPQ0suIFRoZSBmZCBpcyBvYnZpb3VzbHkg aW4Kbm9uLXJlYWRhYmxlIHN0YXRlLCBzbyB0aGVyZSBpcyBnb2luZyB0byBiZSBhIHRyYW5zaXRp b24uCgo+ID4gKyAgICAgICAgTE9HRUQoRVJST1IsIGV2LT5kb21pZCwgImVycm9yIHJlYWRpbmcg UU1QIHNvY2tldCIpOwo+IAo+IEkgdGhpbmsgeW91IG5lZWQgdG8gbG9vayB1cCB0aGUgZXJyb3Ig aGFuZGxpbmcgZm9yIChwb3NzaWJseQo+IGxvbmctcnVubmluZykgY29ubmVjdCBvcGVyYXRpb24g ZmFpbHMgb24gYSBzdHJlYW0gc29ja2V0IHdoaWNoIHdlcmUgaW4KPiBub25ibG9ja2luZyBtb2Rl IHdoZW4geW91IGNhbGxlZCBjb25uZWN0KCkuICBZb3UgbWF5IG5lZWQgdG8gaGFuZGxlCj4gRUlO UFJPR1JFU1MgZnJvbSB0aGUgY29ubmVjdCgpIHN5c2NhbGwgaXRzZWxmICh0aGF0IHdhcyBpbiB0 aGUKPiBwcmV2aW91cyBwYXRjaCkuCgpMb29rcyBsaWtlIGl0LCBJJ2xsIGhhdmUgYSBsb29rIGF0 IHRoZSBlcnJvciBoYW5kbGluZyBvZiB0aGUgY29ubmVjdCgpCmNhbGwuCgo+ID4gKyAgICBpZiAo ciA9PSAwKSB7Cj4gPiArICAgICAgICBMT0dEKEVSUk9SLCBldi0+ZG9taWQsICJObyBkYXRhIHJl YWQgb24gUU1QIHNvY2tldCIpOwo+IAo+IFlvdSBtZWFuICJ1bmV4cGVjdGVkIEVPRiIgbm90ICJu byBkYXRhIHJlYWQiLiAgTm9ybWFsbHkgdGhpcyB3b3VsZAo+IG1lYW4gdGhhdCBxZW11IGRpZWQg b3IgY3Jhc2hlZC4KPiAKPiA+ICsgICAgICAgIHJldHVybiAwOwo+IAo+IEVyciwgYW5kIHRoZW4g dGhpcyBuZWVkcyB0byBiZSBoYW5kbGVkIGFzIGFuIGVycm9yLCBub3Qgc2ltcGx5Cj4gaWdub3Jl ZC4gIElmIGl0IGhhcHBlbnMsIGl0IHdpbGwga2VlcCBoYXBwZW5pbmcuCgpJIHRoaW5rIEknbSBi ZWVuIGxhenkgYW5kIGhhdmUganVzdCBsZXQgdGhpcyBlcnJvciBiZWVuIGhhbmRsZSBpbiB0aGUK bmV4dCBldmVudCB3aGVyZSBQT0xMSFVQIHNob3VsZCBiZSBzZXQuIEkgY2FuIHRyeSB0byBoYW5k bGUgdGhpcyBlcnJvcgpiZXR0ZXIgaGVyZS4KCj4gPiArICAgIExPR19RTVAoInJlY2VpdmVkICVs ZEI6ICclLipzJyIsIHIsIChpbnQpciwgZXYtPnJ4X2J1ZiArIGV2LT5idWZfdXNlZCk7Cj4gPiAr Cj4gPiArICAgIGV2LT5idWZfdXNlZCArPSByOwo+ID4gKyAgICBhc3NlcnQoZXYtPmJ1Zl91c2Vk IDwgZXYtPmJ1Zl9zaXplKTsKPiAKPiBJdCB3b3VsZCBiZSByZWFsbHkgaGVscGZ1bCBpZiB0aGVz ZSBwYXJ0aWFsIGZ1bmN0aW9ucyB3ZXJlIHRvIGNvbnRhaW4KPiBhbiBgeHh4JyBvciBzb21ldGhp bmcgd2hlcmUgdGhlcmUgaXMgbWlzc2luZyBjb2RlLgo+IAo+IEFzIGl0IGlzIEkga25vdyB0aGF0 IG1vcmUgY29kZSB3aWxsIG9jY3VyIGhlcmUsIGJ1dCBub3RoaW5nCj4gc3RyYWlnaHRmb3J3YXJk IGluIHRoZSByZXZpZXcgd2lsbCBwcm9jZXNzIHdpbGwgc3BvdCBpdCB0aGUgbWlzdGFrZSBpZgo+ IHlvdSBmb3JnZXQgdG8gYWRkIGl0Li4uCj4gCj4gVGhlIGxvb3AgSSBtZW50aW9uZWQgY291bGQg YmUgaW4gcW1wX2V2X2ZkX2NhbGxiYWNrLgo+IAo+IFRCSCBJIGZpbmQgdGhlIHNwbGl0IGJldHdl ZW4gcW1wX2V2X2ZkX2NhbGxiYWNrIGFuZAo+IHFtcF9ldl9jYWxsYmFja19yZWFkYWJsZSBhIGJp dCBjb25mdXNpbmcgYnV0IEkga25vdyB0aGF0IEknbSB1bnVzdWFsCj4gaW4gcHJlZmVycmluZyBs b25nZXIgZnVuY3Rpb25zLgo+IAo+ID4gK3N0YXRpYyB2b2lkIHFtcF9ldl9jYWxsYmFja19lcnJv cihsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl9xbXAgKmV2KQo+ID4gK3sKPiA+ICsgICAgRUdD X0dDOwo+ID4gKwo+ID4gKyAgICBMT0dEKEVSUk9SLCBldi0+ZG9taWQsICJFcnJvciBoYXBwZW5k IHdpdGggdGhlIFFNUCBjb25uZWN0aW9uIHRvIFFFTVUiKTsKPiA+ICsKPiA+ICsgICAgLyogT24g ZXJyb3IsIGRlYWxsb2NhdGUgYWxsIHByaXZhdGUgcmVzc291cmNlcyAqLwo+ID4gKyAgICBsaWJ4 bF9fZXZfcW1wX2Rpc3Bvc2UoZ2MsIGV2KTsKPiAKPiBNaXNzaW5nIC8qIHh4eCAqLyB0byByZXBv cnQgdGhlIGVycm9yIHVwd2FyZHMuCj4gCj4gCj4gSHJtLiAgSSByZWFsaXNlIHRoaXMgaXMgZ29p bmcgdG8gYmUgYW5ub3lpbmcsIGJ1dCBJIHRoaW5rIEkgc2hvdWxkCj4gcHJvYmFibHkgc3RvcCBu b3cgYmVjYXVzZSBvZiB0aGUgbGFjayBvZiB4eHgncyBtZWFucyBpdCdzIGhhcmQgZm9yIG1lCj4g dG8gcmV2aWV3Lgo+IAo+IFdoYXQgZG8geW91IHRoaW5rIHdvdWxkIGJlIGJlc3Q6Cj4gIChpKSBJ IHNob3VsZCwgaW4gbXkgb3duIHRyZWUsIHNxdWFzaCBzZXZlcmFsIG9mIHlvdXIgY29tbWl0cyBk b3duCj4gICAgICBzbyBJIGNhbiByZXZpZXcgdGhlbSB0b2dldGhlcgo+ICAoaWkpIFlvdSByZXBv c3Qgd2l0aCBhIGxvdCBvZiBYWFhzIGFkZGVkCj4gIChpaWkpIFdlIGludGVuZCB0byBzcXVhc2gg dGhlIGNvbW1pdHMgaW4geGVuLmdpdCA/Cj4gCj4gSSB0aGluayAoaWkpIGlzIGEgZmFpciBhbW91 bnQgb2Ygd29yayBmb3IgcG9saXNoaW5nIGFuIGludGVybWVkaWF0ZQo+IHN0YXRlLCBhbmQgcHJv YmFibHkgYSB3YXN0ZS4gIEknbSBpbmNsaW5lZCB0byAoaSkgKGlpaSkuICBDYW4geW91IHRlbGwK PiBtZSB3aGljaCBwYXRjaGVzIEkgc2hvdWxkIHNxYXVzaCA/Cj4gCj4gSSB0aGluayBJIG5lZWQg dXAgdG8gYGxpYnhsX3FtcDogUmVzcG9uZCB0byBRTVAgZ3JlZXRpbmcnID8KClNxdWFzaGluZyBh bGwgdGhlIHJlbGV2YW50IGNvbW1pdHMgbWlnaHQgbm90IGJlIHRoYXQgYmFkLCBzaW5jZSBhbGwK Y29tbWl0cyBpbXBsZW1lbnQgZGlmZmVyZW50IGZ1bmN0aW9ucy4KClRoZXJlIGlzIG9uZSBwYXRj aCB0aGF0IGNhbiBiZSByZXZpZXdlZCBzZXBhcmF0bHksIGFuZCB0aGVuIHllcywgeW91Cm5lZWQg dXAgdG8gJ2xpYnhsX3FtcDogUmVzcG9uZCB0byBRTVAgZ3JlZXRpbmcnLiBUaGF0IGdpdmUgdXM6 CgpwaWNrICAgICAgbGlieGxfcW1wOiBTZXBhcmF0ZSBRTVAgbWVzc2FnZSBnZW5lcmF0aW9uIGZy b20gcW1wX3NlbmRfcHJlcGFyZQpwaWNrICAgICAgbGlieGxfcW1wOiBDb25uZWN0IHRvIFFNUCBz b2NrZXQKc3F1YXNoICAgIGxpYnhsX3FtcDogSW1wbGVtZW50IGZkIGNhbGxiYWNrIGFuZCByZWFk IGRhdGEKc3F1YXNoICAgIGxpYnhsX3FtcDogUGFyc2UgSlNPTiBpbnB1dCBmcm9tIFFNUApzcXVh c2ggICAgbGlieGxfcW1wOiBQcmVwYXJlIHRoZSBjb21tYW5kIHRvIGJlIHNlbnQKc3F1YXNoICAg IGxpYnhsX3FtcDogSGFuZGxlIHdyaXRlIHRvIFFNUCBzb2NrZXQKc3F1YXNoICAgIGxpYnhsX3Ft cDogSGFuZGxlIG1lc3NhZ2VzIGZyb20gUUVNVQpzcXVhc2ggICAgbGlieGxfcW1wOiBSZXNwb25k IHRvIFFNUCBncmVldGluZwoKVGhhdCBnaXZlIHVzIGEgcGF0Y2ggd2l0aCBvbmx5IDUwMCBpbnNl cnRpb25zLgoKVGhhbmtzLAoKLS0gCkFudGhvbnkgUEVSQVJECgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h aWxtYW4vbGlzdGluZm8veGVuLWRldmVs