From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Jackson Subject: Re: [PATCH v5 03/15] libxl_qmp: Implement fd callback and read data Date: Wed, 10 Oct 2018 16:47:08 +0100 Message-ID: <23486.7932.781238.747508@mariner.uk.xensource.com> References: <20180907151104.32306-1-anthony.perard@citrix.com> <20180907151104.32306-4-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 1gAGiB-0006W4-WF for xen-devel@lists.xenproject.org; Wed, 10 Oct 2018 15:47:48 +0000 In-Reply-To: <20180907151104.32306-4-anthony.perard@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Anthony PERARD Cc: xen-devel@lists.xenproject.org, Wei Liu List-Id: xen-devel@lists.xenproject.org QW50aG9ueSBQRVJBUkQgd3JpdGVzICgiW1BBVENIIHY1IDAzLzE1XSBsaWJ4bF9xbXA6IEltcGxl bWVudCBmZCBjYWxsYmFjayBhbmQgcmVhZCBkYXRhIik6Cj4gRmlyc3Qgc3RlcCBpbnRvIHRha2lu ZyBjYXJlIG9mIHRoZSBpbnB1dCBmcm9tIFFFTVUncyBRTVAgc29ja2V0LiBGb3IKPiBub3csIHdl IHJlYWQgZGF0YSBhbmQgc3RvcmUgdGhlbSBpbiBhIGJ1ZmZlci4KLi4uCj4gKyAgICBpZiAoIWV2 LT5yeF9idWYpIHsKPiArICAgICAgICBldi0+cnhfYnVmID0gbGlieGxfX21hbGxvYyhOT0dDLCBR TVBfUkVDRUlWRV9CVUZGRVJfU0laRSk7Cj4gKyAgICAgICAgZXYtPmJ1Zl9zaXplID0gUU1QX1JF Q0VJVkVfQlVGRkVSX1NJWkU7Cj4gKyAgICAgICAgZXYtPmJ1Zl91c2VkID0gMDsKPiArICAgICAg ICBldi0+YnVmX2NvbnN1bWVkID0gMDsKPiArICAgIH0KPiArCj4gKyAgICAvKiBDaGVjayBpZiBs YXN0IGJ1ZmZlciBzdGlsbCBoYXZlIHNwYWNlLCBvciBpbmNyZWFzZSBzaXplICovCj4gKyAgICAv KiBUaGUgLTEgaXMgYmVjYXVzZSB0aGVyZSBpcyBhbHdheXMgc3BhY2UgZm9yIGEgTlVMIGNoYXJh Y3RlciAqLwo+ICsgICAgaWYgKGV2LT5idWZfdXNlZCA9PSBldi0+YnVmX3NpemUgLSAxKSB7Cj4g KyAgICAgICAgZXYtPmJ1Zl9zaXplICs9IFFNUF9SRUNFSVZFX0JVRkZFUl9TSVpFOwo+ICsgICAg ICAgIGV2LT5yeF9idWYgPSBsaWJ4bF9fcmVhbGxvYyhOT0dDLCBldi0+cnhfYnVmLCBldi0+YnVm X3NpemUpOwo+ICsgICAgfQoKSSB0aGluayB0aGlzIGlzIHVubmVjZXNzYXJpbHkgY29tcGxleC4g IEkgdGhpbmsgeW91IHNob3VsZCBzZXQgYnVmXyoKdG8gMCBpbiBfaW5pdCwgYW5kIGFycmFuZ2Ug dG8gcmVhbGxvYygwLCBuZXdfc2l6ZSkgaWYgdGhlIGJ1ZmZlciBpcwpub3QgYmlnIGVub3VnaCBm b3IgInNvbWUgc3BhY2UiIHBsdXMgYSBudWwuCgpBbHNvLCB5b3Ugc2hvdWxkIGluY3JlYXNlIHRo ZSBidWZmZXIgc2l6ZSBleHBvbmVudGlhbGx5LiAgQW5kIHlvdQpzaG91bGQgcHV0IGEgbGltaXQg b24gdGhlIGJ1ZmZlciBzaXplLCBpbiBjYXNlIHRoZSBzZW5kZXIgZ29lcyBtYWQuCgo+ICsgICAg LyogVGhlIC0xIGlzIGJlY2F1c2UgdGhlcmUgaXMgYWx3YXlzIHNwYWNlIGZvciBhIE5VTCBjaGFy YWN0ZXIgKi8KPiArICAgIHIgPSByZWFkKGZkLCBldi0+cnhfYnVmICsgZXYtPmJ1Zl91c2VkLCBl di0+YnVmX3NpemUgLSBldi0+YnVmX3VzZWQgLSAxKTsKCkxpbmVzIHRvbyBsb25nIGFnYWluLiAg KEkgd2lsbCBzdG9wIGNvbXBsYWluaW5nIGFib3V0IHRoaXMgbm93IGJ1dCBjYW4KeW91IHBsZWFl IGZpeCBpdCB0aHJvdWdob3V0PykKCj4gKyAgICBpZiAociA8IDApIHsKPiArICAgICAgICBpZiAo ZXJybm8gPT0gRUlOVFIpCj4gKyAgICAgICAgICAgIHJldHVybiAwOwoKTm8sIHlvdSBuZWVkIHRv IGdvIHJvdW5kIGFnYWluLiAgSSdtIGFmcmFpZCB0aGUgd2hvbGUgb2YgdGhpcyBmdW5jdGlvbgpu ZWVkcyB0byBiZSBpbiBhIGxvb3AuICBUaGlzIGlzIGJlY2F1c2UgeW91IGFyZSBub3QgZ3VhcmFu dGVlZCB0aGF0CnlvdSB3aWxsIGdldCBtb3JlIHRoYW4gb25lIGNhbGwgdG8geW91ciByZWFkYWJs ZSBjYWxsYmFjayBwZXIKdHJhbnNpdGlvbiBmcm9tIG5vdC1yZWFkYWJsZSB0byByZWFkYWJsZS4K Cj4gKyAgICAgICAgYXNzZXJ0KGVycm5vKTsKPiArICAgICAgICBpZiAoZXJybm8gPT0gRVdPVUxE QkxPQ0spCj4gKyAgICAgICAgICAgIHJldHVybiAwOwoKQW5kIGFnYWluLgoKPiArICAgICAgICBM T0dFRChFUlJPUiwgZXYtPmRvbWlkLCAiZXJyb3IgcmVhZGluZyBRTVAgc29ja2V0Iik7CgpJIHRo aW5rIHlvdSBuZWVkIHRvIGxvb2sgdXAgdGhlIGVycm9yIGhhbmRsaW5nIGZvciAocG9zc2libHkK bG9uZy1ydW5uaW5nKSBjb25uZWN0IG9wZXJhdGlvbiBmYWlscyBvbiBhIHN0cmVhbSBzb2NrZXQg d2hpY2ggd2VyZSBpbgpub25ibG9ja2luZyBtb2RlIHdoZW4geW91IGNhbGxlZCBjb25uZWN0KCku ICBZb3UgbWF5IG5lZWQgdG8gaGFuZGxlCkVJTlBST0dSRVNTIGZyb20gdGhlIGNvbm5lY3QoKSBz eXNjYWxsIGl0c2VsZiAodGhhdCB3YXMgaW4gdGhlCnByZXZpb3VzIHBhdGNoKS4KCj4gKyAgICBp ZiAociA9PSAwKSB7Cj4gKyAgICAgICAgTE9HRChFUlJPUiwgZXYtPmRvbWlkLCAiTm8gZGF0YSBy ZWFkIG9uIFFNUCBzb2NrZXQiKTsKCllvdSBtZWFuICJ1bmV4cGVjdGVkIEVPRiIgbm90ICJubyBk YXRhIHJlYWQiLiAgTm9ybWFsbHkgdGhpcyB3b3VsZAptZWFuIHRoYXQgcWVtdSBkaWVkIG9yIGNy YXNoZWQuCgo+ICsgICAgICAgIHJldHVybiAwOwoKRXJyLCBhbmQgdGhlbiB0aGlzIG5lZWRzIHRv IGJlIGhhbmRsZWQgYXMgYW4gZXJyb3IsIG5vdCBzaW1wbHkKaWdub3JlZC4gIElmIGl0IGhhcHBl bnMsIGl0IHdpbGwga2VlcCBoYXBwZW5pbmcuCgo+ICsgICAgTE9HX1FNUCgicmVjZWl2ZWQgJWxk QjogJyUuKnMnIiwgciwgKGludClyLCBldi0+cnhfYnVmICsgZXYtPmJ1Zl91c2VkKTsKPiArCj4g KyAgICBldi0+YnVmX3VzZWQgKz0gcjsKPiArICAgIGFzc2VydChldi0+YnVmX3VzZWQgPCBldi0+ YnVmX3NpemUpOwoKSXQgd291bGQgYmUgcmVhbGx5IGhlbHBmdWwgaWYgdGhlc2UgcGFydGlhbCBm dW5jdGlvbnMgd2VyZSB0byBjb250YWluCmFuIGB4eHgnIG9yIHNvbWV0aGluZyB3aGVyZSB0aGVy ZSBpcyBtaXNzaW5nIGNvZGUuCgpBcyBpdCBpcyBJIGtub3cgdGhhdCBtb3JlIGNvZGUgd2lsbCBv Y2N1ciBoZXJlLCBidXQgbm90aGluZwpzdHJhaWdodGZvcndhcmQgaW4gdGhlIHJldmlldyB3aWxs IHByb2Nlc3Mgd2lsbCBzcG90IGl0IHRoZSBtaXN0YWtlIGlmCnlvdSBmb3JnZXQgdG8gYWRkIGl0 Li4uCgpUaGUgbG9vcCBJIG1lbnRpb25lZCBjb3VsZCBiZSBpbiBxbXBfZXZfZmRfY2FsbGJhY2su CgpUQkggSSBmaW5kIHRoZSBzcGxpdCBiZXR3ZWVuIHFtcF9ldl9mZF9jYWxsYmFjayBhbmQKcW1w X2V2X2NhbGxiYWNrX3JlYWRhYmxlIGEgYml0IGNvbmZ1c2luZyBidXQgSSBrbm93IHRoYXQgSSdt IHVudXN1YWwKaW4gcHJlZmVycmluZyBsb25nZXIgZnVuY3Rpb25zLgoKPiArc3RhdGljIHZvaWQg cW1wX2V2X2NhbGxiYWNrX2Vycm9yKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X3FtcCAqZXYp Cj4gK3sKPiArICAgIEVHQ19HQzsKPiArCj4gKyAgICBMT0dEKEVSUk9SLCBldi0+ZG9taWQsICJF cnJvciBoYXBwZW5kIHdpdGggdGhlIFFNUCBjb25uZWN0aW9uIHRvIFFFTVUiKTsKPiArCj4gKyAg ICAvKiBPbiBlcnJvciwgZGVhbGxvY2F0ZSBhbGwgcHJpdmF0ZSByZXNzb3VyY2VzICovCj4gKyAg ICBsaWJ4bF9fZXZfcW1wX2Rpc3Bvc2UoZ2MsIGV2KTsKCk1pc3NpbmcgLyogeHh4ICovIHRvIHJl cG9ydCB0aGUgZXJyb3IgdXB3YXJkcy4KCgpIcm0uICBJIHJlYWxpc2UgdGhpcyBpcyBnb2luZyB0 byBiZSBhbm5veWluZywgYnV0IEkgdGhpbmsgSSBzaG91bGQKcHJvYmFibHkgc3RvcCBub3cgYmVj YXVzZSBvZiB0aGUgbGFjayBvZiB4eHgncyBtZWFucyBpdCdzIGhhcmQgZm9yIG1lCnRvIHJldmll dy4KCldoYXQgZG8geW91IHRoaW5rIHdvdWxkIGJlIGJlc3Q6CiAoaSkgSSBzaG91bGQsIGluIG15 IG93biB0cmVlLCBzcXVhc2ggc2V2ZXJhbCBvZiB5b3VyIGNvbW1pdHMgZG93bgogICAgIHNvIEkg Y2FuIHJldmlldyB0aGVtIHRvZ2V0aGVyCiAoaWkpIFlvdSByZXBvc3Qgd2l0aCBhIGxvdCBvZiBY WFhzIGFkZGVkCiAoaWlpKSBXZSBpbnRlbmQgdG8gc3F1YXNoIHRoZSBjb21taXRzIGluIHhlbi5n aXQgPwoKSSB0aGluayAoaWkpIGlzIGEgZmFpciBhbW91bnQgb2Ygd29yayBmb3IgcG9saXNoaW5n IGFuIGludGVybWVkaWF0ZQpzdGF0ZSwgYW5kIHByb2JhYmx5IGEgd2FzdGUuICBJJ20gaW5jbGlu ZWQgdG8gKGkpIChpaWkpLiAgQ2FuIHlvdSB0ZWxsCm1lIHdoaWNoIHBhdGNoZXMgSSBzaG91bGQg c3FhdXNoID8KCkkgdGhpbmsgSSBuZWVkIHVwIHRvIGBsaWJ4bF9xbXA6IFJlc3BvbmQgdG8gUU1Q IGdyZWV0aW5nJyA/CgpSZWdhcmRzLApJYW4uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0 cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlz dGluZm8veGVuLWRldmVs